{"version":3,"file":"main-es2015.js","mappings":"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AAC,OAAO,CAAC,CAAC;QAElD,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;QAC/B,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,C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CmB;AAES;AACC;AACxB;AACC;AACD;AAEqB;AAClE,OAAO;AACyD;AACW;AACN;AACA;AAC0B;AACnC;AACe;AACC;AACP;AACe;AACH;AACN;AACe;AACG;AACG;AACrB;AACY;AACT;AACM;AACD;AACY;AACA;AACF;AACZ;AACkB;AACnG,yFAAyF;AACmB;AACf;AACD;AACjB;AACe;AACV;AACS;AACA;AAC2B;AACA;AACZ;AACqB;AACM;AACjD;AACO;AACwB;AAC1B;AACxC;AACoC;AAEuB;AACP;AACF;AACZ;AAE1C;AACiB;AACmB;AACwB;AACZ;AACV;AACD;AACgB;AACM;AACf;AACqB;AACzB;AACP;AACH;AACM;AACS;AAClC;AACA;AACZ;AAC4C;AAC5C;AAC6D;AACpB;AACgB;AACP;AACiC;AAC1C;AACS;AAClB;AACoC;AACV;AAC7B;AACoC;AACtB;AACpC;AACsE;AACG;AACA;AACvC;AAC0C;AAClB;AACG;AACA;AACf;AACM;AACvD;AACS;AACF;AAEuB;;;;;;;AA1H5E,6DAAQ,CAAC,KAAK,CAAC,CAAC;AA6HhB,MAAM,gCAAgC,GAAoC;IACxE,eAAe,EAAE,IAAI;IACrB,UAAU,EAAE,CAAC;IACb,gBAAgB,EAAE,IAAI;IACtB,kBAAkB,EAAE,EAAE;CACvB,CAAC;AAuJK,MAAM,SAAS;;kEAAT,SAAS;wGAAT,SAAS;6GAhBT;QACT;YACE,OAAO,EAAE,2EAAwB;YACjC,QAAQ,EAAE,gCAAgC;SAC3C;QACD,kEAAc;QACd,yDAAE;QACF,uDAAQ;QACR,yEAAuB;QACvB,qEAAc;QACd,mEAAa;KACd,YA9CQ;YACP,sDAAY;YACZ,0EAAmB;YACnB,2DAAY;YACZ,sEAAa;YACb,yDAAW;YACX,2FAAuB;YACvB,iEAAmB;YACnB,gEAAgB;YAChB,oEAAgB;YAChB,mEAAS;YACT,2DAAgB;YAChB,kEAAc;YACd,6DAAe;YACf,mEAAmE;YACnE,mEAAmE;YACnE,mEAAoB,CAAC,mDAAS,EAAE,EAAC,sBAAsB,EAAE,QAAQ,EAAC,CAAC;YACnE,yEAAsB;YACtB,0FAAmC,EAA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O,CAAC,CAAC;QAElD,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;QAC/B,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAA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,CAAC,KAAK,GAAG,CAAC,CAAC;QAC/B,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC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AC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SA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AAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,KAAK,C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XlC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACvSA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA","sources":["./$_lazy_route_resources|lazy|groupOptions: {}|namespace object","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/components/gallery/gallery.component.ts","./src/app/components/gallery/gallery.component.html","./src/app/components/modal-form/modal-form.component.ts","./src/app/components/modal-form/modal-form.component.html","./src/app/ic2/base-crud/base-crud.component.ts","./src/app/ic2/base-crud/base-crud.component.html","./src/app/ic2/companies/companies.component.ts","./src/app/ic2/companies/companies.component.html","./src/app/ic2/dashboard/dashboard.component.ts","./src/app/ic2/dashboard/dashboard.component.html","./src/app/ic2/docs/approvedocumentsbase/approvedocumentsbase.component.ts","./src/app/ic2/docs/approvedocumentsbase/approvedocumentsbase.component.html","./src/app/ic2/docs/approvedocumentscompanies/approvedocumentscompanies.component.ts","./src/app/ic2/docs/approvedocumentscompanies/approvedocumentscompanies.component.html","./src/app/ic2/docs/approvedocumentsemployees/approvedocumentsemployees.component.ts","./src/app/ic2/docs/approvedocumentsemployees/approvedocumentsemployees.component.html","./src/app/ic2/docs/approvedocumentsvehicles/approvedocumentsvehicles.component.ts","./src/app/ic2/docs/approvedocumentsvehicles/approvedocumentsvehicles.component.html","./src/app/ic2/docs/condochistoryvehicles/condochistoryvehicles.component.ts","./src/app/ic2/docs/condochistoryvehicles/condochistoryvehicles.component.html","./src/app/ic2/docs/consdochistory/consdochistory.component.ts","./src/app/ic2/docs/consdochistory/consdochistory.component.html","./src/app/ic2/docs/consdochistorycompanies/consdochistorycompanies.component.ts","./src/app/ic2/docs/consdochistorycompanies/consdochistorycompanies.component.html","./src/app/ic2/docs/consdochistoryemployees/consdochistoryemployees.component.ts","./src/app/ic2/docs/consdochistoryemployees/consdochistoryemployees.component.html","./src/app/ic2/docs/docshome/docshome.component.ts","./src/app/ic2/docs/docshome/docshome.component.html","./src/app/ic2/docs/proapprovedocuments/proapprovedocuments.component.ts","./src/app/ic2/docs/proapprovedocuments/proapprovedocuments.component.html","./src/app/ic2/docs/proapprovedocumentscompany/proapprovedocumentscompany.component.ts","./src/app/ic2/docs/proapprovedocumentscompany/proapprovedocumentscompany.component.html","./src/app/ic2/docs/proapprovedocumentsemployees/proapprovedocumentsemployees.component.ts","./src/app/ic2/docs/proapprovedocumentsemployees/proapprovedocumentsemployees.component.html","./src/app/ic2/docs/proapprovedocumentsvehicle/proapprovedocumentsvehicle.component.ts","./src/app/ic2/docs/proapprovedocumentsvehicle/proapprovedocumentsvehicle.component.html","./src/app/ic2/docs/reg-vehicle-contra/reg-vehicle-contra.component.ts","./src/app/ic2/docs/reg-vehicle-contra/reg-vehicle-contra.component.html","./src/app/ic2/docs/regcompanies/regcompanies.component.ts","./src/app/ic2/docs/regcompanies/regcompanies.component.html","./src/app/ic2/docs/regcompaniesdocu/regcompaniesdocu.component.ts","./src/app/ic2/docs/regcompaniesdocu/regcompaniesdocu.component.html","./src/app/ic2/docs/regcompaniesemp/regcompaniesemp.component.ts","./src/app/ic2/docs/regcompaniesemp/regcompaniesemp.component.html","./src/app/ic2/docs/regdriver/regdriver.component.ts","./src/app/ic2/docs/regdriver/regdriver.component.html","./src/app/ic2/docs/regemployee/regemployee.component.ts","./src/app/ic2/docs/regemployee/regemployee.component.html","./src/app/ic2/docs/regemployeedoc/regemployeedoc.component.ts","./src/app/ic2/docs/regemployeedoc/regemployeedoc.component.html","./src/app/ic2/docs/regvehicluedocu/regvehicluedocu.component.ts","./src/app/ic2/docs/regvehicluedocu/regvehicluedocu.component.html","./src/app/ic2/excelencia/actionplan/actionplan.component.ts","./src/app/ic2/excelencia/actionplan/actionplan.component.html","./src/app/ic2/excelencia/actionplan/fives/fives.component.ts","./src/app/ic2/excelencia/actionplan/fives/fives.component.html","./src/app/ic2/excelencia/actionplan/hse/hse.component.ts","./src/app/ic2/excelencia/actionplan/hse/hse.component.html","./src/app/ic2/excelencia/actionplan/plan/plan.component.ts","./src/app/ic2/excelencia/actionplan/plan/plan.component.html","./src/app/ic2/excelencia/actionplan/schedule/schedule.component.ts","./src/app/ic2/excelencia/actionplan/schedule/schedule.component.html","./src/app/ic2/excelencia/entryemployee/entryemployee.component.ts","./src/app/ic2/excelencia/entryemployee/entryemployee.component.html","./src/app/ic2/excelencia/excelenciahome/excelenciahome.component.ts","./src/app/ic2/excelencia/excelenciahome/excelenciahome.component.html","./src/app/ic2/excelencia/myevaluation/myevaluation.component.ts","./src/app/ic2/excelencia/myevaluation/myevaluation.component.html","./src/app/ic2/excelencia/myevaluationepecific/myevaluationepecific.component.ts","./src/app/ic2/excelencia/myevaluationepecific/myevaluationepecific.component.html","./src/app/ic2/excelencia/qremployee/qremployee.component.ts","./src/app/ic2/excelencia/qremployee/qremployee.component.html","./src/app/ic2/excelencia/sapproval/actnosecure/actnosecure.component.ts","./src/app/ic2/excelencia/sapproval/actnosecure/actnosecure.component.html","./src/app/ic2/excelencia/sapproval/condinosecure/condinosecure.component.ts","./src/app/ic2/excelencia/sapproval/condinosecure/condinosecure.component.html","./src/app/ic2/excelencia/sapproval/incident/incident.component.ts","./src/app/ic2/excelencia/sapproval/incident/incident.component.html","./src/app/ic2/excelencia/sapproval/oportunitymejor/oportunitymejor.component.ts","./src/app/ic2/excelencia/sapproval/oportunitymejor/oportunitymejor.component.html","./src/app/ic2/excelencia/sapproval/sapproval.component.ts","./src/app/ic2/excelencia/sapproval/sapproval.component.html","./src/app/ic2/excelencia/workers-plant/workers-plant.component.ts","./src/app/ic2/excelencia/workers-plant/workers-plant.component.html","./src/app/ic2/forms/formshome/formshome.component.ts","./src/app/ic2/forms/formshome/formshome.component.html","./src/app/ic2/forms/regtoolsequipment/regtoolsequipment.component.ts","./src/app/ic2/forms/regtoolsequipment/regtoolsequipment.component.html","./src/app/ic2/forms/reportforms/reportforms.component.ts","./src/app/ic2/forms/reportforms/reportforms.component.html","./src/app/ic2/ic2-routing.ts","./src/app/ic2/ic2.component.ts","./src/app/ic2/ic2.component.html","./src/app/ic2/ic2.module.ts","./src/app/ic2/layouts/blank/blank.component.ts","./src/app/ic2/layouts/blank/blank.component.html","./src/app/ic2/layouts/full/full.component.ts","./src/app/ic2/layouts/full/full.component.html","./src/app/ic2/maint/company/company.component.ts","./src/app/ic2/maint/company/company.component.html","./src/app/ic2/maint/comunicados/comunicados.component.ts","./src/app/ic2/maint/comunicados/comunicados.component.html","./src/app/ic2/maint/country/country.component.ts","./src/app/ic2/maint/country/country.component.html","./src/app/ic2/maint/crudhome/crud.component.ts","./src/app/ic2/maint/crudhome/crud.component.html","./src/app/ic2/maint/internal-user/internal-user.component.ts","./src/app/ic2/maint/internal-user/internal-user.component.html","./src/app/ic2/maint/opportunities/opportunities.component.ts","./src/app/ic2/maint/opportunities/opportunities.component.html","./src/app/ic2/maint/paramarea/paramarea.component.ts","./src/app/ic2/maint/paramarea/paramarea.component.html","./src/app/ic2/maint/paramcomunicado/paramcomunicado.component.ts","./src/app/ic2/maint/paramcomunicado/paramcomunicado.component.html","./src/app/ic2/maint/paramdocu/paramdocu.component.ts","./src/app/ic2/maint/paramdocu/paramdocu.component.html","./src/app/ic2/maint/paramdocujobtype/paramdocujobtype.component.ts","./src/app/ic2/maint/paramdocujobtype/paramdocujobtype.component.html","./src/app/ic2/maint/parameter/parameter.component.ts","./src/app/ic2/maint/parameter/parameter.component.html","./src/app/ic2/maint/paramevaluacion/paramevaluacion.component.ts","./src/app/ic2/maint/paramevaluacion/paramevaluacion.component.html","./src/app/ic2/maint/paramfouls/paramfouls.component.ts","./src/app/ic2/maint/paramfouls/paramfouls.component.html","./src/app/ic2/maint/paramgenedetail/paramgenedetail.component.ts","./src/app/ic2/maint/paramgenedetail/paramgenedetail.component.html","./src/app/ic2/maint/paramgenerales/paramgenerales.component.ts","./src/app/ic2/maint/paramgenerales/paramgenerales.component.html","./src/app/ic2/maint/paramjobtype/paramjobtype.component.ts","./src/app/ic2/maint/paramjobtype/paramjobtype.component.html","./src/app/ic2/maint/paramplanta/paramplanta.component.ts","./src/app/ic2/maint/paramplanta/paramplanta.component.html","./src/app/ic2/maint/parampregunta/parampregunta.component.ts","./src/app/ic2/maint/parampregunta/parampregunta.component.html","./src/app/ic2/maint/parampreguntadetalle/parampreguntadetalle.component.ts","./src/app/ic2/maint/parampreguntadetalle/parampreguntadetalle.component.html","./src/app/ic2/maint/paramsancion/paramsancion.component.ts","./src/app/ic2/maint/paramsancion/paramsancion.component.html","./src/app/ic2/maint/paramtipopregunta/paramtipopregunta.component.ts","./src/app/ic2/maint/paramtipopregunta/paramtipopregunta.component.html","./src/app/ic2/maint/paramtypefoul/paramtypefoul.component.ts","./src/app/ic2/maint/paramtypefoul/paramtypefoul.component.html","./src/app/ic2/maint/permissions-by-user/permissions-by-user.component.ts","./src/app/ic2/maint/permissions-by-user/permissions-by-user.component.html","./src/app/ic2/maint/production-group/production-group.component.ts","./src/app/ic2/maint/production-group/production-group.component.html","./src/app/ic2/maint/questiondetail/questiondetail.component.ts","./src/app/ic2/maint/questiondetail/questiondetail.component.html","./src/app/ic2/maint/questions/questions.component.ts","./src/app/ic2/maint/questions/questions.component.html","./src/app/ic2/maint/user-profile/user-profile.component.ts","./src/app/ic2/maint/user-profile/user-profile.component.html","./src/app/ic2/maint/user/user.component.ts","./src/app/ic2/maint/user/user.component.html","./src/app/ic2/processes/evalassignbyuser/evalassignbyuser.component.ts","./src/app/ic2/processes/evalassignbyuser/evalassignbyuser.component.html","./src/app/ic2/processes/evaluationinternal/evaluationinternal.component.ts","./src/app/ic2/processes/evaluationinternal/evaluationinternal.component.html","./src/app/ic2/processes/proadmissemergapp/proadmissemergapp.component.ts","./src/app/ic2/processes/proadmissemergapp/proadmissemergapp.component.html","./src/app/ic2/processes/proadmissionapp/proadmissionapp.component.ts","./src/app/ic2/processes/proadmissionapp/proadmissionapp.component.html","./src/app/ic2/processes/prochome/prochome.component.ts","./src/app/ic2/processes/prochome/prochome.component.html","./src/app/ic2/processes/prorequest/prorequest.component.ts","./src/app/ic2/processes/prorequest/prorequest.component.html","./src/app/ic2/processes/repocreator/repocreator.component.ts","./src/app/ic2/processes/repocreator/repocreator.component.html","./src/app/ic2/processes/reporting/reporting.component.ts","./src/app/ic2/processes/reporting/reporting.component.html","./src/app/ic2/qrcode-validation/qrcode-validation.component.ts","./src/app/ic2/qrcode-validation/qrcode-validation.component.html","./src/app/ic2/reports/reportshome/reportshome.component.ts","./src/app/ic2/reports/reportshome/reportshome.component.html","./src/app/ic2/reports/rptcompy/rptcompany.component.ts","./src/app/ic2/reports/rptcompy/rptcompany.component.html","./src/app/ic2/reports/rptdocumentexternalworker/rptdocumentexternalworker.component.ts","./src/app/ic2/reports/rptdocumentexternalworker/rptdocumentexternalworker.component.html","./src/app/ic2/reports/rptentryrequest/rptentryrequest.component.ts","./src/app/ic2/reports/rptentryrequest/rptentryrequest.component.html","./src/app/ic2/reports/rptevaluationrequest/rptevaluationrequest.component.ts","./src/app/ic2/reports/rptevaluationrequest/rptevaluationrequest.component.html","./src/app/ic2/reports/rptvehiclesbycompany/rptvehiclesbycompany.component.ts","./src/app/ic2/reports/rptvehiclesbycompany/rptvehiclesbycompany.component.html","./src/app/ic2/reports/rptworkersbycompany/rptworkersbycompany.component.ts","./src/app/ic2/reports/rptworkersbycompany/rptworkersbycompany.component.html","./src/app/ic2/reports/rptworkpermission/rptworkpermission.component.ts","./src/app/ic2/reports/rptworkpermission/rptworkpermission.component.html","./src/app/ic2/settings/settings.component.ts","./src/app/ic2/settings/settings.component.html","./src/app/ic2/shared/breadcrumb/breadcrumb.component.ts","./src/app/ic2/shared/breadcrumb/breadcrumb.component.html","./src/app/ic2/shared/header-navigation/navigation.component.ts","./src/app/ic2/shared/header-navigation/navigation.component.html","./src/app/ic2/shared/sidebar/menu-items.ts","./src/app/ic2/shared/sidebar/sidebar.component.ts","./src/app/ic2/shared/sidebar/sidebar.component.html","./src/app/ic2/shared/spinner.component.ts","./src/app/interfaces/companieadmin.ts","./src/app/interfaces/newinfo.ts","./src/app/pipe/pipemodal.pipe.ts","./src/app/services/authentication/login.service.ts","./src/app/services/authentication/permission.service.ts","./src/app/services/configvehicle.ts","./src/app/services/global.ts","./src/app/services/login.guard.ts","./src/app/services/main/api.service.ts","./src/app/services/main/global.service.ts","./src/app/services/offlinecontainer.ts","./src/environments/environment.prod.ts","./src/environments/environment.ts","./src/main.ts","./node_modules/moment/locale|sync|/^/.*$","ignored|E:\\DesarrolloRG\\DG\\Prod\\Anverso\\node_modules\\pdfjs-dist\\build|canvas","ignored|E:\\DesarrolloRG\\DG\\Prod\\Anverso\\node_modules\\pdfjs-dist\\build|fs","ignored|E:\\DesarrolloRG\\DG\\Prod\\Anverso\\node_modules\\pdfjs-dist\\build|http","ignored|E:\\DesarrolloRG\\DG\\Prod\\Anverso\\node_modules\\pdfjs-dist\\build|https","ignored|E:\\DesarrolloRG\\DG\\Prod\\Anverso\\node_modules\\pdfjs-dist\\build|url","ignored|E:\\DesarrolloRG\\DG\\Prod\\Anverso\\node_modules\\pdfjs-dist\\build|zlib"],"sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 98255;\nmodule.exports = webpackEmptyAsyncContext;","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { BlankComponent } from './ic2/layouts/blank/blank.component';\r\nimport { QrcodeValidationComponent } from './ic2/qrcode-validation/qrcode-validation.component';\r\nimport { LoginService } from './services/authentication/login.service';\r\nimport { LoginGuard } from './services/login.guard';\r\n\r\nexport const Approutes: Routes = [\r\n {\r\n path: '',\r\n component: BlankComponent,\r\n children: [\r\n { path: '', redirectTo: '/authentication/login', pathMatch: 'full' },\r\n {\r\n path: 'authentication',\r\n canActivate: [LoginGuard],\r\n loadChildren:\r\n () => import('./authentication/authentication.module').then(m => m.AuthenticationModule)\r\n }\r\n ],\r\n },\r\n {\r\n\t\tpath: 'qrcodeValidationComponent',\r\n\t\tcomponent: QrcodeValidationComponent,\r\n\t},\r\n];\r\n","import { Component } from '@angular/core';\r\nimport {TranslateService} from '@ngx-translate/core';\r\nimport { SwUpdate } from '@angular/service-worker';\r\nimport { environment } from '../environments/environment';\r\n//import { ConnectionService } from 'ng-connection-service';\r\nimport { ApiService } from './services/main/api.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent {\r\n \ttitle = 'app';\r\n \tversion:any;\r\n\r\n \tconstructor(\r\n private translate: TranslateService,\r\n private swUpdate: SwUpdate,\r\n //private connectionService: ConnectionService,\r\n public srv: ApiService\r\n ) {\r\n var userLang = 'es';\r\n translate.setDefaultLang(userLang);\r\n translate.use(userLang);\r\n\r\n /*this.connectionService.monitor().subscribe(isConnected => {\r\n\r\n if(isConnected){\r\n this.srv.isReachable().then(function(online) {\r\n if (online) {\r\n // handle online status\r\n // console.log('online');\r\n\r\n srv.offline.next(false);\r\n } else {\r\n\r\n srv.offline.next(true);\r\n }\r\n });\r\n }\r\n else{\r\n this.srv.offline.next(true);\r\n }\r\n\r\n });*/\r\n }\r\n\r\n ngOnInit() {\r\n\t this.version = environment.version;\r\n\r\n\t if (this.swUpdate.isEnabled) {\r\n\t this.swUpdate.available.subscribe(() => {\r\n\t \tlet upd_msg = \"New version available. Load New Version?\";\r\n\r\n\t if(confirm(upd_msg)) {\r\n\t window.location.reload();\r\n\t }\r\n\t });\r\n\t }\r\n\t}\r\n}\r\n","\r\n \r\n\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { HttpClientModule, HttpClient } from '@angular/common/http';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { DataTablesModule } from 'angular-datatables';\r\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\r\nimport { IonicStorageModule } from '@ionic/storage';\r\n\r\nimport { BlankComponent } from './ic2/layouts/blank/blank.component';\r\n\r\nimport { Approutes } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { SpinnerComponent } from './ic2/shared/spinner.component';\r\n\r\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\r\nimport { PERFECT_SCROLLBAR_CONFIG } from 'ngx-perfect-scrollbar';\r\nimport { PerfectScrollbarConfigInterface } from 'ngx-perfect-scrollbar';\r\n\r\nimport {TranslateLoader, TranslateModule} from '@ngx-translate/core';\r\nimport {TranslateHttpLoader} from '@ngx-translate/http-loader';\r\n\r\nimport { LaddaModule } from 'angular2-ladda';\r\nimport { Ic2Module } from './ic2/ic2.module';\r\nimport { ServiceWorkerModule } from '@angular/service-worker';\r\nimport { environment } from '../environments/environment';\r\nimport { QrcodeValidationComponent } from './ic2/qrcode-validation/qrcode-validation.component';\r\nimport { GalleryComponent } from './components/gallery/gallery.component';\r\nimport { PipemodalPipe } from './pipe/pipemodal.pipe';\r\nimport {TooltipModule} from \"primeng/tooltip\";\r\nimport {MatTreeModule} from \"@angular/material/tree\";\r\nimport {MatTableModule} from \"@angular/material/table\";\r\nimport {CdkTableModule} from \"@angular/cdk/table\";\r\nimport {MatButtonToggleModule} from \"@angular/material/button-toggle\";\r\n\r\n\r\n// // Set the fonts to use\r\n// import { PdfMakeWrapper } from 'pdfmake-wrapper';\r\n// PdfMakeWrapper.setFonts(pdfFonts);\r\n\r\n\r\nconst DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = {\r\n suppressScrollX: true,\r\n wheelSpeed: 1,\r\n wheelPropagation: true,\r\n minScrollbarLength: 20\r\n};\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n BlankComponent,\r\n SpinnerComponent,\r\n QrcodeValidationComponent,\r\n GalleryComponent,\r\n PipemodalPipe\r\n ],\r\n imports: [\r\n CommonModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n MatButtonToggleModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DataTablesModule,\r\n HttpClientModule,\r\n NgbModule,\r\n Ic2Module,\r\n RouterModule.forRoot(Approutes, {useHash: true, relativeLinkResolution: 'legacy'}),\r\n PerfectScrollbarModule,\r\n NgMultiSelectDropDownModule.forRoot(),\r\n IonicStorageModule.forRoot(),\r\n LaddaModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ServiceWorkerModule.register('ngsw-worker.js', {enabled: environment.production}),\r\n TooltipModule,\r\n MatTableModule,\r\n CdkTableModule\r\n ],\r\n providers: [\r\n {\r\n provide: PERFECT_SCROLLBAR_CONFIG,\r\n useValue: DEFAULT_PERFECT_SCROLLBAR_CONFIG\r\n }\r\n ],\r\n exports: [\r\n PipemodalPipe\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule {}\r\n\r\n// required for AOT compilation\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n //return new TranslateHttpLoader(http);\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-gallery',\r\n templateUrl: './gallery.component.html',\r\n styleUrls: ['./gallery.component.css']\r\n})\r\nexport class GalleryComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","

gallery works!

\r\n","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { BaseCrudComponent } from 'src/app/ic2/base-crud/base-crud.component';\r\n\r\n@Component({\r\n selector: 'app-modal-form',\r\n templateUrl: './modal-form.component.html',\r\n styleUrls: ['./modal-form.component.css']\r\n})\r\nexport class ModalFormComponent implements OnInit {\r\n \r\n @Input() labelTitle: string;\r\n @Input() styleTitle = {\r\n 'color':'blue',\r\n 'cursor':'pointer'\r\n };\r\n @Input() object = null;\r\n u_obj;\r\n\r\n constructor(private modalService: NgbModal) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n\r\n openModal(content: any, obj: any, size?:any) {\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n // console.log(this.u_obj);\r\n if( size == undefined ){\r\n this.modalService.open(content, { centered: true });\r\n }\r\n else{\r\n this.modalService.open(content, { centered: true, size: size });\r\n }\r\n \r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns {} esta función no retorna nada.\r\n * @desc función que cierra el modal.
Fecha de Creación: 17/06/2021\r\n * @param {content} Modal modal contenedor\r\n * @param {}\r\n * @type {void} void type.\r\n */\r\n closeModal(content: any): void {\r\n // content.close();\r\n this.modalService.dismissAll();\r\n }\r\n\r\n}\r\n","\r\n {{labelTitle}}\r\n\r\n\r\n\r\n
\r\n

{{u_obj.Title}}

\r\n
\r\n
\r\n
\r\n
\r\n \"Card\r\n
{{u_obj.dateformat}}
\r\n
{{u_obj.SubTitle}}
\r\n
\r\n {{u_obj.Description}}\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 { ApiService } from '../../services/main/api.service';\r\nimport { Global } from '../../services/global';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { BehaviorSubject, of, throwError, from } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-base-crud',\r\n templateUrl: './base-crud.component.html',\r\n styleUrls: ['./base-crud.component.css']\r\n})\r\n\r\nexport class BaseCrudComponent implements OnInit {\r\n\r\n public tipo_empresa = [{id:1, name:\"Contratista\"},{id:2, name:\"Transportista\"}];\r\n public urlVideo: any;\r\n public rows: any;\r\n public rowemp: any;\r\n public rowsTemp: any;\r\n public rawdata: any;\r\n public create_url: any;\r\n public select_url: any;\r\n public read_url: any;\r\n public rowdocument:any;\r\n public documentemp_url: any;\r\n public read_url_byID: any;\r\n public rowdocumentupload:any;\r\n public urlJob: any;\r\n public read_url_details: any;\r\n public create_url_details: any;\r\n public update_url_details: any;\r\n public delete_url_details: any;\r\n public active_url_details: any;\r\n public update_url: any;\r\n public urlemp: any;\r\n public rowJob: any;\r\n public delete_url: any;\r\n public active_url: any;\r\n public regularForm: FormGroup;\r\n public reload = new BehaviorSubject(false);\r\n public requestID:any;\r\n\r\n public c_obj: any;\r\n public u_obj: any;\r\n public i_obj: any;\r\n\r\n public loadingList = false;\r\n public isCreating = false;\r\n public isUpdating = false;\r\n\r\n page:any;\r\n pageTotal:any;\r\n pageSize:any;\r\n pageSize2:any;\r\n\r\n search:any;\r\n orderKey:any;\r\n orderDesc:any;\r\n search_fields:any;\r\n\r\n f1_key:string;\r\n f2_key:string;\r\n f3_key:string;\r\n\r\n f1_val:string;\r\n f2_val:string;\r\n f3_val:string;\r\n\r\n translations:any;\r\n\r\n //filter to send\r\n public showFilters = false;\r\n public f_datefrom:any;\r\n public f_dateto:any;\r\n public f_custom1:any;\r\n\r\n public isOffline:boolean;\r\n\r\n constructor(\r\n public srv: ApiService,\r\n public modalService: NgbModal,\r\n public storage: Storage,\r\n public router: Router,\r\n public translate?: TranslateService\r\n ) {\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.create_url = '';\r\n this.read_url = '';\r\n this.update_url = '';\r\n this.delete_url = '';\r\n\r\n //pagination\r\n this.page = 1;\r\n this.pageTotal = 0;\r\n this.pageSize = 15;\r\n this.pageSize2=4;\r\n\r\n this.c_obj = {};\r\n this.u_obj = {};\r\n this.i_obj = {};\r\n\r\n this.search = '';\r\n this.orderKey = null;\r\n this.orderDesc = true;\r\n //should reference only to string fields\r\n this.search_fields = [];\r\n this.f1_key = 'CompName';\r\n this.f2_key = 'SitName';\r\n this.f3_key = 'status';\r\n this.f1_val = '';\r\n this.f2_val = '';\r\n this.f3_val = '';\r\n\r\n this.f_datefrom = null;\r\n this.f_dateto = null;\r\n this.f_custom1 = null;\r\n\r\n //offline status checker\r\n this.isOffline = false;\r\n }\r\n\r\n ngOnInit() {\r\n\r\n //offline mode detection\r\n if( navigator.onLine ){\r\n var _obj = this;\r\n this.srv.isReachable().then(function(online) {\r\n if (online) {\r\n _obj.srv.offline.next(false);\r\n } else {\r\n _obj.srv.offline.next(true);\r\n }\r\n });\r\n }\r\n else{\r\n this.isOffline = true;\r\n }\r\n\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n //console.log(translations);\r\n });\r\n }\r\n\r\n public clearData(){\r\n this.rows = [];\r\n this.c_obj = {};\r\n this.u_obj = {};\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n this.rawdata = x.val;\r\n this.rows = x.val;\r\n this.page = 1;\r\n\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n }\r\n });\r\n }\r\n\r\n public getListPost(obj?:any){\r\n if( obj == undefined ){\r\n obj = {};\r\n }\r\n\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.srv.postCall(qst, obj).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n this.rawdata = x.val;\r\n this.rows = x.val;\r\n this.page = 1;\r\n\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n }\r\n });\r\n }\r\n\r\n translateMessage(str:any){\r\n let msg = '';\r\n\r\n if( this.translations[str+''] != undefined ){\r\n msg = this.translations[str+''];\r\n }\r\n\r\n return msg;\r\n }\r\n\r\n public createItem(content:any, fields:any){\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, fields).subscribe(x => {\r\n this.isCreating = false;\r\n let msg = this.translateMessage(x.msg);\r\n\r\n if(x.success){\r\n this.reload.next(true);\r\n this.closeModal(content);\r\n Swal.fire('¡Creado!', msg, 'success');\r\n }\r\n else{\r\n Swal.fire(msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n public updateItem(content:any, fields:any){\r\n var qst = this.update_url;\r\n this.isUpdating = true;\r\n\r\n this.srv.postCall(qst, fields).subscribe(x => {\r\n this.isUpdating = false;\r\n let msg = this.translateMessage(x.msg);\r\n\r\n if(x.success){\r\n this.reload.next(true);\r\n this.closeModal(content);\r\n Swal.fire('¡Actualizado!', msg, 'success');\r\n }\r\n else{\r\n Swal.fire(msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n public deleteItem(obj: any, trans?:any) {\r\n var qst = this.delete_url;\r\n //console.log(trans);\r\n if( trans == undefined ){\r\n trans = {\r\n delete: 'Borrar',\r\n deleted: 'Borrado',\r\n cancel: 'Cancelar',\r\n delete_item_title: 'Está seguro que desea eliminar el registro?'\r\n };\r\n }\r\n\r\n Swal.fire({\r\n title: trans.delete_item_title,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.delete,\r\n preConfirm: () => {\r\n this.srv.postCall(qst, obj).subscribe(x => {\r\n let msg = this.translateMessage(x.msg);\r\n\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire(trans.deleted, msg, 'success');\r\n }\r\n else{\r\n Swal.fire(msg, '', 'error');\r\n }\r\n });\r\n }\r\n }).then((result) => {\r\n });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.modalService.open(content, { centered: true });\r\n }\r\n\r\n public openCreateModalLG(content: any) {\r\n this.modalService.open(content, { size: 'lg', centered: true });\r\n }\r\n\r\n public openUpdateModal(content: any, obj: any, size?:any) {\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n if( size == undefined ){\r\n this.modalService.open(content, { centered: true });\r\n }\r\n else{\r\n this.modalService.open(content, { centered: true, size: size });\r\n }\r\n }\r\n\r\n public openUpdateModalNoDataConversion(content: any, obj: any, size?:any) {\r\n //this.u_obj = obj;\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n //console.log(newobj);\r\n this.u_obj = newobj;\r\n\r\n\r\n if( size == undefined ){\r\n this.modalService.open(content, { centered: true });\r\n }\r\n else{\r\n this.modalService.open(content, { centered: true, size: size });\r\n }\r\n\r\n }\r\n\r\n public openUpdateModalStatic(content: any, obj: any, size?:any) {\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n\r\n if( size == undefined ){\r\n this.modalService.open(content, { centered: true, backdrop: 'static', keyboard: false });\r\n }\r\n else{\r\n this.modalService.open(content, { centered: true, size: size, backdrop: 'static', keyboard: false });\r\n }\r\n\r\n }\r\n\r\n public closeModal(content: any) {\r\n this.modalService.dismissAll(content);\r\n }\r\n\r\n public goTo(url, params){\r\n this.router.navigate([url], { queryParams: { state: params}});\r\n }\r\n\r\n public filterList(fields:any){\r\n //this.search = event.target.value;\r\n var resp:boolean;\r\n if( !Array.isArray(fields) ){\r\n return;\r\n }\r\n\r\n if( this.search == '' ){\r\n this.rows = this.rawdata;\r\n }\r\n else{\r\n let test = this.rawdata.filter(s => {\r\n resp = false;\r\n fields.forEach(f => {\r\n resp = resp || s[f].toLowerCase().includes(this.search.toLowerCase());\r\n });\r\n return resp;\r\n });\r\n\r\n this.rows = test;\r\n }\r\n\r\n this.pageTotal = this.rows.length;\r\n }\r\n\r\n public filterAll(){\r\n var fields = this.search_fields;\r\n var resp:boolean;\r\n var dummy:any;\r\n\r\n\r\n if( !Array.isArray(fields) ){\r\n return;\r\n }\r\n\r\n if( this.search == '' ){\r\n this.rows = this.rawdata;\r\n }\r\n else{\r\n if (this.rows.length == 0) {\r\n this.rows = this.rawdata;\r\n }\r\n let test = this.rows.filter(s => {\r\n resp = false;\r\n fields.forEach(f => {\r\n debugger\r\n if( f.indexOf('array.') > -1 ){\r\n debugger\r\n let parts = f.split('.');\r\n let f1 = parts[0];\r\n let f2 = parts[1];\r\n /*console.log(s[f2]);\r\n console.log(this.inArray(this.search, s[f2]));*/\r\n\r\n if( (s[f2] !== null) && (s[f2] !== undefined) ){\r\n resp = resp || this.inArray(this.search, s[f2]);\r\n }\r\n }\r\n else if( (s[f] !== null) && (s[f] !== undefined) ){\r\n resp = resp || String(s[f]).toLowerCase().includes(this.search.toLowerCase());\r\n }\r\n\r\n });\r\n\r\n return resp;\r\n });\r\n\r\n this.rows = test;\r\n }\r\n\r\n if( this.f1_val != '' ){\r\n /*console.log('btw');\r\n console.log(this.rows);\r\n console.log(this.f1_val);*/\r\n dummy = this.rows.filter(s => {\r\n return s[this.f1_key] == this.f1_val;\r\n });\r\n\r\n this.rows = dummy;\r\n }\r\n\r\n if( this.f2_val != '' ){\r\n dummy = this.rows.filter(s => {\r\n return s[this.f2_key] == this.f2_val;\r\n });\r\n\r\n this.rows = dummy;\r\n }\r\n\r\n if( this.f3_val != '' ){\r\n dummy = this.rows.filter(s => {\r\n return s[this.f3_key] == this.f3_val;\r\n });\r\n\r\n this.rows = dummy;\r\n }\r\n\r\n this.pageTotal = this.rows.length;\r\n }\r\n\r\n public inArray(str:any, arr:any){\r\n let resp = false;\r\n\r\n arr.forEach(x => {\r\n x = x + '';\r\n\r\n if( x.indexOf(str) > -1 ){\r\n resp = true;\r\n }\r\n });\r\n\r\n return resp;\r\n }\r\n\r\n public onKeyUpSearch(ev:any){\r\n var str = ev.target.value;\r\n if( (str == '') && (this.rows.length != this.rawdata.length) ){\r\n //console.log('works');\r\n this.rows = this.rawdata;\r\n this.pageTotal = this.rows.length;\r\n }\r\n }\r\n\r\n public copyObject(obj:any){\r\n var to:any;\r\n to = {};\r\n var keys = [];\r\n\r\n keys = Object.keys(obj);\r\n if( keys.length > 0 ){\r\n keys.forEach(x => {\r\n to[x] = obj[x];\r\n });\r\n }\r\n\r\n return to;\r\n }\r\n\r\n public openInfoModalBig(content: any, obj: any) {\r\n const copy = { ...obj };\r\n this.i_obj = copy;\r\n this.modalService.open(content, { size: 'lg', centered: true});\r\n }\r\n\r\n public setOrder(str:any){\r\n this.orderKey = str;\r\n this.orderDesc = !this.orderDesc;\r\n }\r\n\r\n public clearSentFilters(){\r\n this.f_datefrom = null;\r\n this.f_dateto = null;\r\n this.f_custom1 = null;\r\n }\r\n\r\n public getISODate(d:any){\r\n let fulliso:any;\r\n //ngbDate count month from 1 but js Date from 0\r\n fulliso = new Date(d['year'], parseInt(d['month'])-1, d['day']);\r\n fulliso = fulliso.toISOString().substring(0, 10);\r\n return fulliso;\r\n }\r\n\r\n public confirmDialogWithModal(title, text, icon, content) {\r\n Swal.fire({\r\n title: title,\r\n text: text,\r\n icon: icon,\r\n showCancelButton: false,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'OK',\r\n allowOutsideClick: false\r\n }).then((result) => {\r\n if (result.value) {\r\n this.closeModal(content)\r\n this.getList();\r\n }\r\n })\r\n }\r\n\r\n public confirmDialog(title, text, icon) {\r\n Swal.fire({\r\n title: title,\r\n text: text,\r\n icon: icon,\r\n showCancelButton: false,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'OK',\r\n allowOutsideClick: false\r\n }).then((result) => {\r\n if (result.value) {\r\n this.getList();\r\n }\r\n })\r\n }\r\n\r\n public messageDialog(title, text, icon) {\r\n Swal.fire({\r\n title: title,\r\n text: text,\r\n icon: icon,\r\n showCancelButton: false,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'OK',\r\n allowOutsideClick: false\r\n }).then((result) => {\r\n if (result.value) {\r\n Swal.close()\r\n }\r\n })\r\n }\r\n\r\n public messageShowLoading() {\r\n Swal.fire(\r\n {\r\n title: 'Cargando',//this.translations['loading']\r\n html: '',\r\n icon: 'info',\r\n allowOutsideClick: false\r\n }\r\n );\r\n Swal.showLoading();\r\n }\r\n\r\n public closeLoadingMessage() {\r\n Swal.close();\r\n }\r\n\r\n}\r\n","

base-crud works!

\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router } from '@angular/router';\r\nimport { Global } from '../../services/global';\r\nimport { BaseCrudComponent } from '../base-crud/base-crud.component';\r\n\r\n@Component({\r\n selector: 'app-companies',\r\n templateUrl: './companies.component.html',\r\n styleUrls: ['./companies.component.css']\r\n})\r\n\r\nexport class CompaniesComponent extends BaseCrudComponent {\r\n myfields:any;\r\n\r\n \tconstructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.read_url = 'Company/CompanyByUser';\r\n this.update_url = 'Company/Update';\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n\r\n this.myfields = ['CompJiraUser', 'CompJiraPassword', 'CompJiraProjectId', 'CompJiraUrl'];\r\n }\r\n\r\n ngOnInit() {\r\n super.ngOnInit();\r\n super.getList();\r\n }\r\n\r\n updateItem(content:any, fields:any){\r\n var allempty = true;\r\n var resp = true;\r\n\r\n //validate is not clearing\r\n this.myfields.forEach(x => {\r\n if( fields[x] != null ){\r\n allempty = false;\r\n return;\r\n }\r\n });\r\n\r\n //when clearing no validation needed\r\n if( !allempty ){\r\n resp = this.validateUpdateInfo(fields);\r\n if( !resp ){\r\n Swal.fire('Data incorrecta', '', 'error');\r\n return;\r\n }\r\n }\r\n\r\n super.updateItem(content, fields);\r\n }\r\n\r\n clearCompanyData(){\r\n this.u_obj.CompJiraUser = null;\r\n this.u_obj.CompJiraPassword = null;\r\n this.u_obj.CompJiraProjectId = null;\r\n this.u_obj.CompJiraUrl = null;\r\n }\r\n\r\n validateUpdateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'CompJiraUser': new FormControl(fields.CompJiraUser, [Validators.required, Validators.email]),\r\n 'CompJiraPassword': new FormControl(fields.CompJiraPassword, [Validators.required]),\r\n 'CompJiraProjectId': new FormControl(fields.CompJiraProjectId, [Validators.required]),\r\n 'CompJiraUrl': new FormControl(fields.CompJiraUrl, [Validators.required])\r\n });\r\n\r\n return mygroup.valid;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
IDAquasim IDCompañíaAction
{{row.CompId}}{{row.CompAquasymId}}{{row.CompName}}\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

Editar Compañía {{u_obj.CompName}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n Campo debe ser Email\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\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 Swal from 'sweetalert2';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoginService } from '../../services/authentication/login.service';\r\nimport { ApiService } from '../../services/main/api.service';\r\nimport { BaseCrudComponent } from '../base-crud/base-crud.component';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Storage } from '@ionic/storage';\r\n\r\nimport * as moment from 'moment-timezone';\r\nimport { environment } from '../../../environments/environment';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport {ConsoleLogger} from \"@angular/compiler-cli/ngcc\";\r\n\r\nconst API_CONSULINFOALL = environment.Global.API_CONSULINFOALL;\r\nconst API_GET_INFO_VIGENCIA_DOCUMENTOS_CONTRATISTAS = environment.Global.API_GET_INFO_VIGENCIA_DOCUMENTOS_CONTRATISTAS;\r\n\r\nconst API_GET_INFO_DOCUMENTOS_PENDIENTES_CONTRATISTAS = environment.Global.API_GET_DOCUMENTOS_PENDIENTES_CONTRATISTAS;\r\nconst API_GET_INFO_DOCUMENTOS_PENDIENTES_TRABAJADORES_CONTRATISTAS = environment.Global.API_GET_DOCUMENTOS_PENDIENTES_TRABAJADORES;\r\n// const GET_INFO_TRABAJADORES_CONTRATISTAS = environment.Global.GET_INFO_TRABAJADORES_CONTRATISTAS;\r\n\r\nconst GET_INFO_TRABAJADORES_COURSES_PENDING = environment.Global.GET_INFO_TRABAJADORES_COURSES_PENDING;\r\nconst GET_DOCUMENTS_APPROVE=environment.Global.GET_DOCUMENTS_APPROVE;\r\n@Component({\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.css']\r\n})\r\nexport class DashboardComponent extends BaseCrudComponent {\r\n date_actually = new Date();\r\n typeUser = 0;\r\n translations: any;\r\n available_languages: any;\r\n currlang: any;\r\n version: any;\r\n // items:any;\r\n datenow;\r\n permissions = [];\r\n datearrays = [];\r\n new_comunicates = [];\r\n VigenciaDocumentosContratistas = [];\r\n DocumentosPendienteContratistas = [];\r\n DocumentosPendientesTrabajadores = [];\r\n DocumentosApprove:any[]=[];\r\n documentApprove:boolean=false;\r\n CoursesInfo = [];\r\n userInfo;\r\n Title: string = \"\"\r\n constructor(\r\n private spinner: NgxSpinnerService,\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n public auth: LoginService,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n ngOnInit() {\r\n\r\n\r\n // this.spinner.show();\r\n // this.items = [\r\n // {title: 'menu_forms', url: '/formshome', icon: 'icon icon-note', perm: 'SI_ADMREGISTRO'},\r\n // {title: 'menu_processes', url: '/prochome', icon: 'icon icon-chemistry', perm: 'SI_ADMSOLICITUD'},\r\n // {title: 'menu_operacional', url: '/cruds', icon: 'icon icon-globe', perm: 'SI_ADMOPERACIONAL'},\r\n // {title: 'menu_crud', url: '/cruds', icon: 'icon icon-globe', perm: 'SI_ADMCONSULTA'},\r\n // {title: 'menu_general', url: '/settings', icon: 'icon icon-settings', perm: 'sett'}\r\n // ];\r\n this.read_url = API_CONSULINFOALL;\r\n this.Title = \"\"\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n // // this.rows = [];\r\n // super.ngOnInit();\r\n this.getList();\r\n });\r\n\r\n\r\n\r\n\r\n this.search_fields = ['Title', 'SubTitle', 'Description'];\r\n\r\n this.c_obj['Info'] = [];\r\n this.VigenciaDocumentosContratistas = [];\r\n this.DocumentosPendienteContratistas = [];\r\n this.DocumentosPendientesTrabajadores = [];\r\n this.CoursesInfo = [];\r\n\r\n // this.reload.subscribe(val => {\r\n // if( val ){\r\n // super.clearData();\r\n // this.getList();\r\n // }\r\n // });\r\n\r\n moment.locale('es');\r\n // this.auth.getPermissions().then(x => {\r\n // this.permissions = x;\r\n // this.permissions.push('sett');\r\n // });\r\n\r\n this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n if(x.DocumentApprove==true){\r\n this.getDocumentsApprove();\r\n this.documentApprove=true\r\n }else{\r\n // console.log(this.userInfo);\r\n if (this.userInfo.ProfileID === undefined) {\r\n this.typeUser = 0;\r\n } else if (this.userInfo.ProfileID === 1) {\r\n this.typeUser = 1;\r\n } else if (this.userInfo.ProfileID === 2) {\r\n this.typeUser = 2;\r\n this.Title = \"Contratistas\"\r\n } else if (this.userInfo.ProfileID === 3) {\r\n this.typeUser = 3; // trabajadores\r\n\r\n } else if (this.userInfo.ProfileID === 21) {\r\n this.typeUser = 21; //transportistas\r\n this.Title = \"Transportistas\"\r\n }\r\n\r\n // this.getList();\r\n this.getVigenciaDocumentosContratistas();\r\n this.getDocumentosPendientesContratistas();\r\n this.getDocumentosPendientesTrabajadoresContratistas();\r\n this.getInfoCoursesPending();\r\n };\r\n })\r\n }\r\n\r\n\r\n hasPermission(str: string) {\r\n if (this.permissions.indexOf(str) > -1) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n\r\n\r\n public getList() {\r\n var qst = this.read_url;\r\n\r\n this.loadingList = true;\r\n Swal.fire(\r\n {\r\n title: this.translations['loading'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n this.rows = [];\r\n if (x.success) {\r\n if (x.val != null) {\r\n var rs = x.val;\r\n this.rowsTemp = rs;\r\n\r\n this.rowsTemp.forEach(element => {\r\n var day = moment(element.CreationTime, \"YYYYMMDD\");\r\n var days = moment(element.CreationTime).format('MMMM Do YYYY, h:mm:ss a');\r\n var xs = moment(day).startOf('day').fromNow();\r\n element.dateago = xs;\r\n element.dateformat = days;\r\n });\r\n\r\n this.rowsTemp.forEach(elements => {\r\n if (elements.Status == 'A') {\r\n this.rows.push(elements);\r\n }\r\n });\r\n let date_comparation = this.formatOnlyDate(this.date_actually);\r\n // console.log(date_comparation)\r\n this.rows.sort(function (a, b) { return (b.InfoID - a.InfoID) })\r\n this.rows.forEach(element => {\r\n // console.log(element);\r\n if (element.DateEnd.split('T')[0] > date_comparation) {\r\n if ((this.typeUser == 0) && (element.NameType == \"Globales\" || element.NameType == \"Duragas\")) {\r\n this.new_comunicates.push(element);\r\n\r\n\r\n } else if ((this.typeUser == 1) && (element.NameType == \"Globales\" || element.NameType == \"Contratistas\")) {\r\n this.new_comunicates.push(element);\r\n // solo mostramos el asside por hacer de Contratistas\r\n } else if ((this.typeUser == 2) && (element.NameType == \"Globales\" || element.NameType == \"Trabajadores\")) {\r\n this.new_comunicates.push(element);\r\n // solo mostramos el asside por hacer de\r\n }\r\n }\r\n });\r\n // console.log(this.new_comunicates)\r\n // console.log(this.rows);\r\n // this.spinner.hide();\r\n Swal.close();\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n\r\n });\r\n\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n\r\n async getVigenciaDocumentosContratistas() {\r\n // let url = GET_INFO_CONTRATISTAS + this.userInfo.selectedCompanyId;\r\n let url = API_GET_INFO_VIGENCIA_DOCUMENTOS_CONTRATISTAS + this.userInfo.selectedCompanyId;\r\n // console.log(url);\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.val != null) {\r\n // console.log(data.val);\r\n this.VigenciaDocumentosContratistas = data.val;\r\n } else {\r\n this.VigenciaDocumentosContratistas = []\r\n return;\r\n }\r\n })\r\n // console.log(this.ContratistasInfo);\r\n }\r\n // documentos pendientes de subir del contratistas\r\n async getDocumentosPendientesContratistas() {\r\n // let url = GET_INFO_CONTRATISTAS + this.userInfo.selectedCompanyId;\r\n let url = API_GET_INFO_DOCUMENTOS_PENDIENTES_CONTRATISTAS;\r\n var to: any;\r\n to = {};\r\n to._IdComp = this.userInfo.selectedCompanyId;\r\n if (this.userInfo['typeCompany'] == 1) {\r\n to._Id = 25;\r\n } else {\r\n to._Id = 97;\r\n }\r\n\r\n\r\n await this.srv.postCall(url, to).subscribe(x => {\r\n // debugger\r\n\r\n this.loadingList = false;\r\n if (x.success) {\r\n if (x.val != null) {\r\n var rs = x.val;\r\n this.DocumentosPendienteContratistas = rs;\r\n // console.log(\"getDocumentosPendientesContratistas\", this.DocumentosPendienteContratistas);\r\n } else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.DocumentosPendienteContratistas = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n // console.log(this.ContratistasInfo);\r\n }\r\n async getDocumentosPendientesTrabajadoresContratistas() {\r\n\r\n // let url = API_GET_INFO_DOCUMENTOS_PENDIENTES_TRABAJADORES_CONTRATISTAS;\r\n let url = API_GET_INFO_DOCUMENTOS_PENDIENTES_TRABAJADORES_CONTRATISTAS;\r\n // console.log(url);\r\n // debugger\r\n\r\n var to: any;\r\n to = {};\r\n to._IdComp = this.userInfo.selectedCompanyId;\r\n if (this.userInfo.ProfileID == 2) {\r\n to._Id = 27; // trabajador\r\n } else if (this.userInfo.ProfileID == 21) {\r\n to._Id = 98 // conductor\r\n }\r\n\r\n await this.srv.postCall(url, to).subscribe(x => {\r\n this.loadingList = false;\r\n // console.log(x);\r\n if (x.success) {\r\n if (x.val != null) {\r\n var rs = x.val;\r\n this.DocumentosPendientesTrabajadores = rs;\r\n // console.log(\"TrabajadoresContratistas\",this.DocumentosPendientesTrabajadores)\r\n }else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.DocumentosPendientesTrabajadores = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n\r\n }\r\n getInfoCoursesPending() {\r\n // let url = GET_INFO_CONTRATISTAS + this.userInfo.selectedCompanyId;\r\n let url = GET_INFO_TRABAJADORES_COURSES_PENDING + this.userInfo.selectedCompanyId;\r\n // console.log(url);\r\n // debugger\r\n this.srv.getCall(url).subscribe(d => {\r\n // console.log(d);\r\n if (d.val != null) {\r\n // console.log(d.val);\r\n this.CoursesInfo = d.val;\r\n }\r\n })\r\n }\r\ngetDocumentsApprove(){\r\n let url =GET_DOCUMENTS_APPROVE;\r\n this.srv.getCall(url).subscribe(resp=>{\r\n this.DocumentosApprove=resp[\"val\"]\r\n console.log((resp));\r\n console.log (resp[\"val\"]);\r\n console.log(this.DocumentosApprove);\r\n console.log(this.DocumentosApprove.length>0)\r\n\r\n });\r\n console.log(this.DocumentosApprove);\r\n}\r\n}\r\n","\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{rows.Title}}

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

{{rows.Title}}

\r\n

{{rows.SubTitle}}

\r\n

\r\n {{rows.Description}}\r\n

\r\n {{'notice_link' |\r\n translate}}\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n","import { Component, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\ninterface DocButton {\r\n path: string;\r\n class: string;\r\n title: string;\r\n}\r\n\r\n@Component({\r\n selector: 'app-approvedocumentsbase',\r\n templateUrl: './approvedocumentsbase.component.html',\r\n styleUrls: ['./approvedocumentsbase.component.css']\r\n})\r\nexport class ApprovedocumentsbaseComponent extends BaseCrudComponent {\r\n \r\n public typeDoc: string;\r\n userinfo:any;\r\n docButton: DocButton;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n\r\n this.route.params.subscribe(params => {\r\n this.typeDoc = params.type;\r\n this.docButton = this.getButtonDataById(params.type);\r\n });\r\n // translate.setTranslation(this.translate.currentLang, this.translations)\r\n \r\n\r\n this.read_url = Global.API_ALLCOMPANIESWITHDOCUMENT_TYPE;\r\n // console.log(this.read_url);\r\n this.search_fields = ['CompanyID','Ruc','Name'];\r\n this.c_obj['Company'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n var trans = translations.menu_docapproval_var.replace('{{type}}', types[this.typeDoc])\r\n console.log(trans);\r\n this.translations = translations;\r\n this.translations.menu_docapproval_var = trans;\r\n console.log(this.translations);\r\n super.ngOnInit();\r\n });\r\n console.log(this.translations);\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n\r\n await this.getList();\r\n }\r\n\r\n public async getList() {\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n let to = {\r\n userId: this.userinfo['userId'],\r\n type: this.typeDoc\r\n }\r\n this.messageShowLoading();\r\n await this.srv.postCall(qst, to).toPromise().then(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n private getButtonDataById(type: string): DocButton{\r\n // console.log(type);\r\n let data : DocButton;\r\n\r\n switch(type){\r\n case 'comp' : {\r\n data = {\r\n path: '/approvedocuments/comp/',\r\n class: 'far fa-file text-info m-r-10',\r\n title: 'doc_company'\r\n }\r\n break;\r\n }\r\n case 'emp' : {\r\n data = {\r\n path: '/approvedocuments/emp/',\r\n class: 'far fa-file text-success m-r-10',\r\n title: 'doc_employee'\r\n }\r\n break;\r\n }\r\n case 'vhc' : {\r\n data = {\r\n path: '/approvedocuments/vhc/',\r\n class: 'far fa-file text-danger m-r-10',\r\n title: 'doc_vehicles'\r\n }\r\n break;\r\n }\r\n default: null\r\n }\r\n\r\n // console.log(data);\r\n return data;\r\n }\r\n}\r\n\r\nconst types = {\r\n comp: 'compañia',\r\n emp: 'empresa',\r\n vhc: 'vehiculo'\r\n}\r\n\r\nexport function blobToB64(blob: Blob): Promise {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.onloadend = () => {\r\n resolve(reader.result as string);\r\n };\r\n reader.onerror = reject;\r\n reader.readAsDataURL(blob);\r\n });\r\n}","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'Ruc' | translate}}\r\n \r\n {{'name' | translate}}\r\n {{'company_type' | translate}}\r\n {{'date_register' | translate}}\r\n {{'action' | translate}}
{{row.CompanyID}}{{row.Ruc}}{{row.Name}}{{row.typeCompany == 1 ? 'Contratista' : 'Transportista'}}{{row.DatetimeDocumentsToUpdate | date:'y-MM-dd hh:mm:s'}}\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, Output, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {environment} from \"../../../../environments/environment\";\r\nconst API_SEND_MAIL = environment.Global.API_COMPANY_APPROVE_MULTI_DOCUMENT;\r\n\r\n@Component({\r\n selector: 'app-approvedocumentscompanies',\r\n templateUrl: './approvedocumentscompanies.component.html',\r\n styleUrls: ['./approvedocumentscompanies.component.css']\r\n})\r\nexport class ApprovedocumentscompaniesComponent extends BaseCrudComponent {\r\n\r\n userinfo:any;\r\n showButtonSendMail:boolean;\r\n dateA= new Date().toISOString().split('T')[0];\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.read_url = Global.API_ALLCOMPANIESWITHDOCUMENT_TYPE;\r\n this.search_fields = ['CompanyID','Ruc','Name'];\r\n this.c_obj['Company'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n console.log(this.userinfo);\r\n if (this.userinfo.ProfileID == 1 || this.userinfo.SendMailMasive == true) { //ADMINISTRADOR O USUARIO PARA ENVIOS MASIVOS\r\n //this.read_url = ALLCOMPANIES;\r\n this.showButtonSendMail = true;\r\n } else if (this.userinfo.ProfileID == 2 || this.userinfo.ProfileID == 21) { //CONTRATISTA O TRANSPORTISTA\r\n // this.read_url = API_GET_DOCUMENTS_GENERAL_COMPANY + this.userinfo.selectedCompanyId;\r\n this.showButtonSendMail = false;\r\n }\r\n });\r\n\r\n await this.getList();\r\n }\r\n\r\n public async getList() {\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n let to = {\r\n userId: this.userinfo['userId'],\r\n type: 'comp'\r\n }\r\n this.messageShowLoading();\r\n await this.srv.postCall(qst, to).toPromise().then(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'error');\r\n return;\r\n }\r\n });\r\n }\r\n public sendMails(){\r\n var qst = API_SEND_MAIL + null;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n console.log(x);\r\n if(x.success){\r\n this.closeLoadingMessage();\r\n return Swal.fire(x.msg,'', 'success');\r\n } else {\r\n this.messageDialog(x.msg,'','error');\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
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'Ruc' | translate}}\r\n \r\n {{'name' | translate}}\r\n {{'company_type' | translate}}\r\n {{'date_register' | translate}}\r\n {{'action' | translate}}
{{row.CompanyID}}{{row.Ruc}}{{row.Name}}{{row.typeCompany == 1 ? 'Contratista' : 'Transportista'}}{{row.DatetimeDocumentsToUpdate | date:'y-MM-dd hh:mm:s'}}\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, Output, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {environment} from \"../../../../environments/environment\";\r\nconst API_SEND_MAIL = environment.Global.API_COMPANY_APPROVE_MULTI_DOCUMENT;\r\n\r\n@Component({\r\n selector: 'app-approvedocumentsemployees',\r\n templateUrl: './approvedocumentsemployees.component.html',\r\n styleUrls: ['./approvedocumentsemployees.component.css']\r\n})\r\nexport class ApprovedocumentsemployeesComponent extends BaseCrudComponent {\r\n\r\n userinfo:any;\r\n showButtonSendMail:boolean;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.read_url = Global.API_ALLCOMPANIESWITHDOCUMENT_TYPE;\r\n this.search_fields = ['CompanyID','Ruc','Name'];\r\n this.c_obj['Company'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n console.log(this.translations);\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n if (this.userinfo.ProfileID == 1) { //ADMINISTRADOR\r\n //this.read_url = ALLCOMPANIES;\r\n this.showButtonSendMail = true;\r\n } else if (this.userinfo.ProfileID == 2 || this.userinfo.ProfileID == 21) { //CONTRATISTA O TRANSPORTISTA\r\n // this.read_url = API_GET_DOCUMENTS_GENERAL_COMPANY + this.userinfo.selectedCompanyId;\r\n this.showButtonSendMail = false;\r\n }\r\n });\r\n\r\n await this.getList();\r\n }\r\n\r\n public async getList() {\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n let to = {\r\n userId: this.userinfo['userId'],\r\n type: 'emp'\r\n }\r\n this.messageShowLoading();\r\n await this.srv.postCall(qst, to).toPromise().then(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'error');\r\n return;\r\n }\r\n });\r\n }\r\n public sendMails(){\r\n var qst = API_SEND_MAIL + null;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n console.log(x);\r\n if(x.success){\r\n this.closeLoadingMessage();\r\n return Swal.fire(x.msg,'', 'success');\r\n } else {\r\n this.messageDialog(x.msg,'','error');\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
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'Ruc' | translate}}\r\n \r\n {{'name' | translate}}\r\n {{'company_type' | translate}}\r\n {{'date_register' | translate}}\r\n {{'action' | translate}}
{{row.CompanyID}}{{row.Ruc}}{{row.Name}}{{row.typeCompany == 1 ? 'Contratista' : 'Transportista'}}{{row.DatetimeDocumentsToUpdate | date:'y-MM-dd hh:mm:s'}}\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, Output, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {environment} from \"../../../../environments/environment\";\r\nconst API_SEND_MAIL = environment.Global.API_COMPANY_APPROVE_MULTI_DOCUMENT;\r\n\r\n@Component({\r\n selector: 'app-approvedocumentsvehicles',\r\n templateUrl: './approvedocumentsvehicles.component.html',\r\n styleUrls: ['./approvedocumentsvehicles.component.css']\r\n})\r\nexport class ApprovedocumentsvehiclesComponent extends BaseCrudComponent {\r\n\r\n userinfo:any;\r\n showButtonSendMail:boolean;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n\r\n this.read_url = Global.API_ALLCOMPANIESWITHDOCUMENT_TYPE;\r\n this.search_fields = ['CompanyID','Ruc','Name'];\r\n this.c_obj['Company'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n console.log(this.translations);\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n if (this.userinfo.ProfileID == 1) { //ADMINISTRADOR\r\n //this.read_url = ALLCOMPANIES;\r\n this.showButtonSendMail = true;\r\n } else if (this.userinfo.ProfileID == 2 || this.userinfo.ProfileID == 21) { //CONTRATISTA O TRANSPORTISTA\r\n // this.read_url = API_GET_DOCUMENTS_GENERAL_COMPANY + this.userinfo.selectedCompanyId;\r\n this.showButtonSendMail = false;\r\n }\r\n });\r\n\r\n await this.getList();\r\n }\r\n\r\n public async getList() {\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n let to = {\r\n userId: this.userinfo['userId'],\r\n type: 'vhc'\r\n }\r\n this.messageShowLoading();\r\n await this.srv.postCall(qst, to).toPromise().then(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'error');\r\n return;\r\n }\r\n });\r\n }\r\n public sendMails(){\r\n var qst = API_SEND_MAIL + null;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n console.log(x);\r\n if(x.success){\r\n this.closeLoadingMessage();\r\n return Swal.fire(x.msg,'', 'success');\r\n } else {\r\n this.messageDialog(x.msg,'','error');\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
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'Ruc' | translate}}\r\n \r\n {{'name' | translate}}\r\n {{'company_type' | translate}}\r\n {{'date_register' | translate}}\r\n {{'action' | translate}}
{{row.CompanyID}}{{row.Ruc}}{{row.Name}}{{row.typeCompany == 1 ? 'Contratista' : 'Transportista'}}{{row.DatetimeDocumentsToUpdate | date:'y-MM-dd hh:mm:s'}}\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport { environment } from 'src/environments/environment';\r\nimport { blobToB64 } from '../approvedocumentsbase/approvedocumentsbase.component';\r\n\r\nconst API_GET_FILE_VEHICLE_ID = environment.Global.API_GET_FILE_VEHICLE_ID;\r\nconst API_GET_ALL_DOCUMENTS_BY_VEHICLE_COMPANY = environment.Global.API_GET_ALL_DOCUMENTS_BY_VEHICLE_COMPANY;\r\nconst API_POST_UPDATE_STATUS_REVERSE_VEHICLES = environment.Global.API_POST_UPDATE_STATUS_REVERSE_DOCUMENT_VEHICLES;\r\n\r\n@Component({\r\n selector: 'app-condochistoryvehicles',\r\n templateUrl: './condochistoryvehicles.component.html',\r\n styleUrls: ['./condochistoryvehicles.component.css']\r\n})\r\nexport class CondochistoryvehiclesComponent extends BaseCrudComponent{\r\n id:any;\r\n userinfo:any;\r\n name_company: any;\r\n\r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row: any = [];\r\n\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n this.route.queryParams.subscribe(params => {\r\n this.name_company = params.state;\r\n });\r\n this.search_fields = ['NameDoc','name_Employee'];\r\n this.c_obj['VehicleDocument'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n this.userinfo['DocumentStatusReverse'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList();\r\n }\r\n\r\n public getList()\r\n {\r\n var qst = API_GET_ALL_DOCUMENTS_BY_VEHICLE_COMPANY + this.id;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n openViewModal(modal, object){\r\n const DocFileName = object.ParamDocumentID;\r\n const name = object.FileName;\r\n this.row = object;\r\n \r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_VEHICLE_ID, object.VehicleID, DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n });\r\n }\r\n\r\n downloadDocFile(data) {\r\n const DocFileName = data.ParamDocumentID;\r\n const name = data.FileName;\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_VEHICLE_ID, data.VehicleID,DocFileName).subscribe((data) => {\r\n importedSaveAs(data,name )\r\n });\r\n }\r\n StatusReverse(data) {\r\n this.srv.postCall(API_POST_UPDATE_STATUS_REVERSE_VEHICLES, data).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n Swal.fire(this.translations.msg_update, x.msg, 'success');\r\n }\r\n this.getList();\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{this.name_company}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'v_registration' | translate}}\r\n \r\n {{'document' | translate}}\r\n \r\n {{'date_emision' | translate}}\r\n \r\n {{'expiration_date' | translate}}\r\n \r\n {{'date' | translate}} {{'verificate_' | translate}} {{'skt'}}\r\n \r\n {{'vericate_user' | translate}}\r\n \r\n {{'status' | translate}}\r\n \r\n {{'VerificateComment' | translate}}\r\n {{'action' | translate}}
{{ i + 1}}{{row.RegistrationNumber}}{{row.NameDoc}}{{row.DateDocument | date:'y-MM-dd'}}{{row.ExpirationTime | date:'y-MM-dd'}}{{row.VerificateTime | date:'y-MM-dd'}}{{row.VerificateUser}}{{row.status_name}}{{row.VerificateComment}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\n\r\nconst ALLCOMPANIES = environment.Global.API_ALLCOMPANIES;\r\nconst API_GET_DOCUMENTS_GENERAL_COMPANY = environment.Global.API_GET_DOCUMENTS_GENERAL_COMPANY;\r\nconst API_SEND_MAIL = environment.Global.API_COMPANY_APPROVE_MULTI_DOCUMENT;\r\n\r\n@Component({\r\n selector: 'app-consdochistory',\r\n templateUrl: './consdochistory.component.html',\r\n styleUrls: ['./consdochistory.component.css']\r\n})\r\nexport class ConsdochistoryComponent extends BaseCrudComponent {\r\n userinfo:any;\r\n showButtonSendMail:boolean;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.read_url = ALLCOMPANIES;\r\n this.search_fields = ['Name','Ruc'];\r\n this.c_obj['Company'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n if (this.userinfo.ProfileID == 1) { //ADMINISTRADOR\r\n this.read_url = ALLCOMPANIES;\r\n this.showButtonSendMail = true;\r\n } else if (this.userinfo.ProfileID == 2 || this.userinfo.ProfileID == 21) { //CONTRATISTA O TRANSPORTISTA\r\n this.read_url = API_GET_DOCUMENTS_GENERAL_COMPANY + this.userinfo.selectedCompanyId;\r\n this.showButtonSendMail = false;\r\n }\r\n this.getList();\r\n });\r\n }\r\n\r\n public getList()\r\n {\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg,'','error');\r\n return;\r\n } \r\n });\r\n \r\n }\r\n\r\n public sendMails(){\r\n var qst = API_SEND_MAIL + null;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n console.log(x);\r\n if(x.success){\r\n this.closeLoadingMessage();\r\n return Swal.fire(x.msg,'', 'success');\r\n } else {\r\n this.messageDialog(x.msg,'','error');\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
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'Ruc' | translate}}\r\n \r\n {{'name' | translate}}\r\n {{'action' | translate}}
{{ i+ 1}}{{row.Ruc}}{{row.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","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport { environment } from 'src/environments/environment';\r\nimport { blobToB64 } from '../approvedocumentsbase/approvedocumentsbase.component';\r\n\r\nconst API_GET_DOCUMENT_BY_COMPANY_ID = environment.Global.API_GET_DOCUMENT_BY_COMPANY_ID;\r\nconst API_GET_FILE_COMPANY_ID = environment.Global.API_GET_FILE_COMPANY_ID;\r\nconst API_POST_UPDATE_STATUS_REVERSE_DOCUMENT = environment.Global.API_POST_UPDATE_STATUS_REVERSE_DOCUMENT;\r\n@Component({\r\n selector: 'app-consdochistorycompanies',\r\n templateUrl: './consdochistorycompanies.component.html',\r\n styleUrls: ['./consdochistorycompanies.component.css']\r\n})\r\nexport class ConsdochistorycompaniesComponent extends BaseCrudComponent {\r\n id:any;\r\n userinfo:any;\r\n name_company:any;\r\n \r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row: any = [];\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) \r\n {\r\n super(srv, modalService, storage, router); \r\n this.id = route.snapshot.params.id;\r\n this.route.queryParams.subscribe(params => {\r\n this.name_company = params.state;\r\n });\r\n\r\n this.search_fields = ['CompDocumentId','NameDoc','VerificateUser','status_name'];\r\n this.c_obj['CompanyDocument'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n this.userinfo['DocumentStatusReverse'] = '';\r\n \r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList();\r\n }\r\n\r\n public getList()\r\n {\r\n var qst = API_GET_DOCUMENT_BY_COMPANY_ID + this.id;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n openViewModal(modal, object){\r\n const DocFileName = object.ParamDocumentID;\r\n const name = object.FileName;\r\n this.row = object;\r\n \r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_COMPANY_ID, this.id, DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n }); \r\n }\r\n\r\n downloadDocFile(data) {\r\n const DocFileName = data.ParamDocumentID;\r\n const name = data.ImageFileName;\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_COMPANY_ID, this.id ,DocFileName).subscribe((data) => {\r\n importedSaveAs(data,name)\r\n });\r\n }\r\n StatusReverse(data) {\r\n this.srv.postCall(API_POST_UPDATE_STATUS_REVERSE_DOCUMENT, data).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n Swal.fire(this.translations.msg_update, x.msg, 'success');\r\n }\r\n this.getList();\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{this.name_company}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'document' | translate}}\r\n \r\n {{'date_emision' | translate}} \r\n \r\n {{'expiration_date' | translate}}\r\n \r\n {{'date' | translate}} {{'verificate_' | translate}}\r\n \r\n {{'vericate_user' | translate}}\r\n \r\n {{'status' | translate}}\r\n \r\n {{'VerificateComment' | translate}}\r\n {{'action' | translate}}
{{i + 1}}{{row.NameDoc}}{{row.DateDocument | date:'y-MM-dd'}}{{row.ExpirationTime | date:'y-MM-dd'}}{{row.VerificateTime | date:'y-MM-dd'}}{{row.VerificateUser}}{{row.status_name}}{{row.VerificateComment}}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport { environment } from 'src/environments/environment';\r\nimport { blobToB64 } from '../approvedocumentsbase/approvedocumentsbase.component';\r\n\r\nconst API_GET_FILE_EMPLOYEE_ID = environment.Global.API_GET_FILE_EMPLOYEE_ID;\r\nconst API_GET_ALL_DOCUMENTS_BY_EMPLOYEE_COMPANY = environment.Global.API_GET_ALL_DOCUMENTS_BY_EMPLOYEE_COMPANY;\r\nconst API_POST_UPDATE_STATUS_REVERSE_DOCUMENT_EMPLOYEED = environment.Global.API_POST_UPDATE_STATUS_REVERSE_DOCUMENT_EMPLOYEED;\r\n\r\n@Component({\r\n selector: 'app-consdochistoryemployees',\r\n templateUrl: './consdochistoryemployees.component.html',\r\n styleUrls: ['./consdochistoryemployees.component.css']\r\n})\r\nexport class ConsdochistoryemployeesComponent extends BaseCrudComponent{\r\n id:any;\r\n userinfo:any;\r\n name_company: any;\r\n\r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row: any = [];\r\n\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n this.route.queryParams.subscribe(params => {\r\n this.name_company = params.state;\r\n });\r\n this.search_fields = ['NameDoc','identification','EmployeeName','status_name','VerificateUser'];\r\n this.c_obj['EmployeeDocument'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n this.userinfo['DocumentStatusReverse'] = '';\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList();\r\n }\r\n\r\n public getList()\r\n {\r\n var qst = API_GET_ALL_DOCUMENTS_BY_EMPLOYEE_COMPANY + this.id;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n openViewModal(modal, object){\r\n const DocFileName = object.ParamDocumentID;\r\n const name = object.FileName;\r\n this.row = object;\r\n \r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_EMPLOYEE_ID, object.EmployeeId, DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n });\r\n }\r\n\r\n downloadDocFile(data) {\r\n const DocFileName = data.ParamDocumentID;\r\n const name = data.FileName;\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_EMPLOYEE_ID, data.EmployeeId,DocFileName).subscribe((data) => {\r\n importedSaveAs(data,name )\r\n });\r\n }\r\n StatusReverse(data) {\r\n this.srv.postCall(API_POST_UPDATE_STATUS_REVERSE_DOCUMENT_EMPLOYEED, data).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n Swal.fire(this.translations.msg_update, x.msg, 'success');\r\n }\r\n this.getList();\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{this.name_company}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'identification' | translate}}\r\n \r\n {{'employee' | translate}}\r\n \r\n {{'document' | translate}}\r\n \r\n {{'date_emision' | translate}}\r\n \r\n {{'expiration_date' | translate}}\r\n \r\n {{'date' | translate}} {{'verificate_' | translate}} {{'skt'}}\r\n \r\n {{'vericate_user' | translate}}\r\n \r\n {{'status' | translate}}\r\n \r\n {{'VerificateComment' | translate}}\r\n {{'action' | translate}}
{{ i + 1}}{{row.NumberIdentification}}{{row.EmployeeName}}{{row.NameDoc}}{{row.DateDocument | date:'y-MM-dd'}}{{row.ExpirationTime | date:'y-MM-dd'}}{{row.VerificateTime | date:'y-MM-dd'}}{{row.VerificateUser}}{{row.status_name}}{{row.VerificateComment}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \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 Swal from 'sweetalert2';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoginService } from '../../../services/authentication/login.service';\r\nimport { PermissionService } from 'src/app/services/authentication/permission.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport {isNumeric} from \"rxjs/util/isNumeric\";\r\nimport {Storage} from \"@ionic/storage\";\r\n\r\n@Component({\r\n selector: 'app-docshome',\r\n templateUrl: './docshome.component.html',\r\n styleUrls: ['./docshome.component.css']\r\n})\r\nexport class DocshomeComponent implements OnInit {\r\n\r\n translations:any;\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n items = [];\r\n permissions = [];\r\n userinfo: any;\r\n constructor(\r\n public _router: Router,\r\n public translate: TranslateService,\r\n public auth: LoginService,\r\n public permission: PermissionService,\r\n private storage: Storage,\r\n ) { }\r\n\r\n ngOnInit() {\r\n let id = environment.Global.Menus.Documentos // menu documentos\r\n this.permission.getModulesByMenuId(id).then(x => {\r\n x.forEach(element => {\r\n if (element.principal == 1) {\r\n this.items.push(element)\r\n }\r\n });\r\n })\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n // console.log(this.userinfo)\r\n });\r\n this.auth.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n }\r\n\r\n hasPermission(str:string){\r\n let flag = false;\r\n this.permissions.forEach(permission => {\r\n if(permission.Permission == str) {\r\n flag = true;\r\n }\r\n })\r\n return flag;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
{{ row.title | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nconst ALLCOMPANIES=Global.API_ALLCOMPANIESWITHDOCUMENT;\r\n\r\n@Component({\r\n selector: 'app-proapprovedocuments',\r\n templateUrl: './proapprovedocuments.component.html',\r\n styleUrls: ['./proapprovedocuments.component.css']\r\n})\r\nexport class ProapprovedocumentsComponent extends BaseCrudComponent {\r\n userinfo:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n\r\n this.read_url = ALLCOMPANIES;\r\n this.search_fields = ['CompanyID','Ruc','Name'];\r\n\r\n this.c_obj['Company'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n await this.getList();\r\n }\r\n\r\n public async getList()\r\n {\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n let to = {\r\n mail: this.userinfo['userId']\r\n }\r\n this.messageShowLoading();\r\n await this.srv.postCall(qst, to).toPromise().then(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'error');\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
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'Ruc' | translate}}\r\n \r\n {{'name' | translate}}\r\n {{'company_type' | translate}}\r\n {{'date_register' | translate}}\r\n {{'action' | translate}}
{{row.CompanyID}}{{row.Ruc}}{{row.Name}}{{row.typeCompany == 1 ? 'Contratista' : 'Transportista'}}{{row.DatetimeDocumentsToUpdate | date:'y-MM-dd hh:mm:s'}}\r\n \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 } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { saveAs as importedSaveAs } from \"file-saver\";\r\nimport { environment } from 'src/environments/environment';\r\nimport { blobToB64 } from '../approvedocumentsbase/approvedocumentsbase.component';\r\n\r\nconst API_COMPANY_DOCUMENT_APPROVE = environment.Global.API_COMPANY_GET_DOCUMENT_APPROVE;\r\nconst API_GET_FILE_COMPANY_ID = environment.Global.API_GET_FILE_COMPANY_ID;\r\nconst API_COMPANY_APPROVE_DOCUMENT = environment.Global.API_COMPANY_APPROVE_DOCUMENT;\r\n\r\n@Component({\r\n selector: 'app-proapprovedocumentscompany',\r\n templateUrl: './proapprovedocumentscompany.component.html',\r\n styleUrls: ['./proapprovedocumentscompany.component.css']\r\n})\r\nexport class ProapprovedocumentscompanyComponent extends BaseCrudComponent {\r\n\r\n // dateA= new Date().toISOString().split('T')[0];\r\n id: any;\r\n userinfo: any;\r\n name_company: any;\r\n flag: any;\r\n valor;\r\n\r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row: any = [];\r\n\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.search_fields = ['CompDocumentId', 'NameDoc', 'plazo'];\r\n\r\n this.c_obj['CompanyDocument'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n this.userinfo['DocumentApprove'] = '';\r\n this.userinfo['DocumentStatusReverse'] = '';\r\n\r\n this.route.queryParams.subscribe(params => {\r\n this.name_company = params.state\r\n });\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n console.log(x)\r\n });\r\n }\r\n\r\n public getList() {\r\n this.loadingList = true;\r\n var qst = API_COMPANY_DOCUMENT_APPROVE + \"/\" + this.id;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.rows.forEach(element => {\r\n element.valor = null;\r\n });\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n } else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n } else {\r\n this.messageDialog(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n\r\n }\r\n\r\n openViewModal(modal, object) {\r\n const DocFileName = object.ParamDocumentID;\r\n const name = object.FileName;\r\n this.row = object;\r\n\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_COMPANY_ID, this.id, DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n });\r\n }\r\n\r\n downloadDocFile(data) {\r\n const DocFileName = data.ParamDocumentID;\r\n const name = data.ImageFileName;\r\n console.log(data);\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_COMPANY_ID, this.id, DocFileName).subscribe((data) => {\r\n importedSaveAs(data, name)\r\n });\r\n }\r\n\r\n verificateprocesardoc(row: any) {\r\n var qst = API_COMPANY_APPROVE_DOCUMENT;\r\n var mensaje: any;\r\n var to: any = {};\r\n let trans = this.translations;\r\n to.CompDocumentId = row.CompDocumentId;\r\n to.CompanyID = row.CompanyID;\r\n to.VerificateUser = this.userinfo.logon;\r\n to.MailAdmin = this.userinfo.emailAddress;\r\n to.DateDocument = row.DateDocument;\r\n to.ExpirationTime = row.date_doc_end;\r\n if (this.flag == undefined) {\r\n return Swal.fire(this.translations.aprroveorrevoce, '', 'error');\r\n }\r\n if (this.flag == 0) {\r\n to.Status = \"V\";\r\n to.StatusId = 39;\r\n to.VerificateComment = \"\";\r\n mensaje = trans.show_message_approve;\r\n }\r\n else {\r\n if (row.VerificateComment == \" \" || row.VerificateComment == null || row.VerificateComment == \"\") {\r\n Swal.fire(trans.docapprove_error_missingcomment, '', 'error');\r\n return;\r\n }\r\n to.Status = \"R\";\r\n to.StatusId = 40;\r\n to.VerificateComment = row.VerificateComment;\r\n mensaje = trans.show_message_reject;\r\n }\r\n Swal.fire({\r\n title: mensaje,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.ok,\r\n preConfirm: () => {\r\n this.procesardoc(qst, to);\r\n\r\n }\r\n }).then((result) => {\r\n });\r\n\r\n }\r\n\r\n procesardoc(qst: any, to: any) {\r\n this.loadingList = true;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.loadingList = false;\r\n if (x.success) {\r\n this.confirmDialog(x.msg, '', 'success');\r\n } else {\r\n this.confirmDialog(x.msg, '', 'error');\r\n }\r\n }, error => {\r\n this.confirmDialog(error, '', 'error');\r\n });\r\n }\r\n\r\n changeSelect(row) {\r\n console.log(row);\r\n if (row.valor == 0) {\r\n this.flag = 0;\r\n } else {\r\n this.flag = 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 \r\n {{this.name_company}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'date_register' | translate}} \r\n \r\n {{'document' | translate}}\r\n \r\n {{'date_emision' | translate}} \r\n {{ \"caducity_date\" | translate }}{{'approve' | translate}} {{'reject' | translate}}{{'comment' | translate}} {{'action' | translate}}
{{ i + 1}}\r\n
\r\n {{row.VerificatesSendTime | date:'y-MM-dd'}}\r\n
\r\n
\r\n
\r\n {{row.NameDoc}}\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport { environment } from 'src/environments/environment';\r\nimport { blobToB64 } from '../approvedocumentsbase/approvedocumentsbase.component';\r\n\r\n\r\nconst API_EMPLOYEE_GET_DOCUMENT_APPROVE = environment.Global.API_EMPLOYEE_GET_DOCUMENT_APPROVE;\r\nconst API_GET_FILE_EMPLOYEE_ID = environment.Global.API_GET_FILE_EMPLOYEE_ID;\r\nconst API_EMPLOYEE_APPROVE_DOCUMENT = environment.Global.API_EMPLOYEE_APPROVE_DOCUMENT;\r\n\r\n@Component({\r\n selector: 'app-proapprovedocumentsemployees',\r\n templateUrl: './proapprovedocumentsemployees.component.html',\r\n styleUrls: ['./proapprovedocumentsemployees.component.css']\r\n})\r\nexport class ProapprovedocumentsemployeesComponent extends BaseCrudComponent {\r\n id:any;\r\n userinfo:any;\r\n name_company:any;\r\n flag:any;\r\n valor;\r\n\r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row: any = [];\r\n\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n this.search_fields = ['EmployeeDocumentId','identification','EmployeeName','NameDoc','plazo'];\r\n\r\n this.c_obj['EmployeeDocument'] = [];\r\n }\r\n\r\n\r\n async ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n this.userinfo['DocumentApprove'] = '';\r\n this.userinfo['DocumentStatusReverse'] = '';\r\n\r\n this.route.queryParams.subscribe(params => {\r\n this.name_company = params.state\r\n });\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList()\r\n }\r\n\r\n public getList()\r\n {\r\n var qst = API_EMPLOYEE_GET_DOCUMENT_APPROVE +\"/\"+ this.id;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x=>{\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.rows.forEach(element => {\r\n element.valor = null;\r\n });\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n openViewModal(modal, object){\r\n const DocFileName = object.ParamDocumentID;\r\n const name = object.FileName;\r\n this.row = object;\r\n\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_EMPLOYEE_ID, object.EmployeeId , DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n });\r\n }\r\n\r\n downloadDocFile(data) {\r\n const DocFileName = data.ParamDocumentID;\r\n const name = data.FileName;\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_EMPLOYEE_ID, data.EmployeeId ,DocFileName).subscribe((data) => {\r\n importedSaveAs(data,name )\r\n });\r\n }\r\n\r\n verificateprocesardoc(row:any){\r\n var qst = API_EMPLOYEE_APPROVE_DOCUMENT;\r\n var mensaje:any;\r\n var to:any = {};\r\n let trans = this.translations;\r\n to.EmployeeDocumentId=row.EmployeeDocumentId;\r\n to.EmployeeId=row.EmployeeId;\r\n to.VerificateUser=this.userinfo.logon;\r\n to.DateDocument = row.date_doc != null?row.date_doc: row.DateDocument;debugger;\r\n to.ExpirationTime = row.date_doc_end != null?row.date_doc_end: row.ExpirationTime;\r\n if (this.flag == undefined) {\r\n return Swal.fire(this.translations.aprroveorrevoce,'' , 'error');\r\n }\r\n if(this.flag==0)\r\n {\r\n to.Status=\"V\";\r\n to.StatusId=39;\r\n to.VerificateComment=\"\";\r\n mensaje=trans.show_message_approve;\r\n }\r\n else{\r\n if (row.VerificateComment==\" \" || row.VerificateComment==null || row.VerificateComment==\"\")\r\n {\r\n Swal.fire(trans.docapprove_error_missingcomment, '', 'error');\r\n return;\r\n }\r\n to.Status=\"R\";\r\n to.StatusId=40;\r\n to.VerificateComment=row.VerificateComment;\r\n mensaje=trans.show_message_reject;\r\n }\r\n Swal.fire({\r\n title: mensaje,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.ok,\r\n preConfirm: () => {\r\n this.procesardoc(qst,to);\r\n\r\n }\r\n }).then((result) => {\r\n });\r\n\r\n }\r\n\r\n procesardoc(qst:any,to:any){\r\n this.loadingList = true;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success)\r\n {\r\n this.confirmDialog(x.msg, '', 'success');\r\n }else {\r\n this.confirmDialog(x.msg, '', 'error');\r\n }\r\n }, error => {\r\n this.confirmDialog(error, '', 'error');\r\n });\r\n }\r\n\r\n changeSelect(row) {\r\n // console.log(row)\r\n if(row.valor == 0) {\r\n this.flag = 0;\r\n } else {\r\n this.flag = 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
\r\n \r\n {{this.name_company}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'date_register' | translate}} \r\n \r\n {{'document' | translate}}\r\n \r\n {{'date_emision' | translate}} \r\n {{ \"caducity_date\" | translate }}{{'approve' | translate}} {{'reject' | translate}}{{'comment' | translate}} {{'action' | translate}}
{{ i + 1}}\r\n
\r\n {{row.VerificatesSendTime | date:'y-MM-dd'}}\r\n
\r\n
\r\n
\r\n {{row.NameDoc}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \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, ActivatedRoute } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport Swal from 'sweetalert2';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport { Storage } from '@ionic/storage';\r\nimport { environment } from 'src/environments/environment';\r\nimport { blobToB64 } from '../approvedocumentsbase/approvedocumentsbase.component';\r\n\r\nconst API_VEHICLE_GET_DOCUMENT_APPROVE = environment.Global.API_VEHICLE_GET_DOCUMENT_APPROVE;\r\nconst API_GET_FILE_VEHICLE_ID = environment.Global.API_GET_FILE_VEHICLE_ID;\r\nconst API_VEHICLE_APPROVE_DOCUMENT = environment.Global.API_VEHICLE_APPROVE_DOCUMENT;\r\n\r\n@Component({\r\n selector: 'app-proapprovedocumentsvehicle',\r\n templateUrl: './proapprovedocumentsvehicle.component.html',\r\n styleUrls: ['./proapprovedocumentsvehicle.component.css']\r\n})\r\nexport class ProapprovedocumentsvehicleComponent extends BaseCrudComponent {\r\n id:any;\r\n userinfo:any;\r\n name_company:any;\r\n flag:any;\r\n valor;\r\n\r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row: any = [];\r\n\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n this.search_fields = ['VehicleDocumentID','NameDoc','identification','plazo'];\r\n this.c_obj['VehicleDocument'] = [];\r\n }\r\n\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n this.userinfo['DocumentApprove'] = '';\r\n this.userinfo['DocumentStatusReverse'] = '';\r\n this.route.queryParams.subscribe(params => {\r\n this.name_company = params.state\r\n });\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n\r\n this.getList();\r\n }\r\n\r\n\r\n public getList()\r\n {\r\n var qst = API_VEHICLE_GET_DOCUMENT_APPROVE +\"/\"+ this.id;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x=>{\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.rows.forEach(element => {\r\n element.valor = null;\r\n });\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n openViewModal(modal, object){\r\n const DocFileName = object.ParamDocumentID;\r\n this.row = object;\r\n\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_VEHICLE_ID, object.VehicleID, DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n });\r\n }\r\n\r\n downloadDocFile(data) {\r\n const DocFileName = data.ParamDocumentID;\r\n const name = data.FileName;\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_VEHICLE_ID, data.VehicleID ,DocFileName).subscribe((data) => {\r\n importedSaveAs(data,name )\r\n });\r\n }\r\n\r\n verificateprocesardoc(row:any){\r\n var qst = API_VEHICLE_APPROVE_DOCUMENT;\r\n var mensaje:any;\r\n var to:any = {};\r\n let trans = this.translations;\r\n to={};\r\n to.VehicleDocumentID=row.VehicleDocumentID;\r\n to.VehicleID=row.VehicleID;\r\n to.VerificateUser=this.userinfo.logon;\r\n to.DateDocument = row.DateDocument;\r\n to.ExpirationTime = row.ExpirationTime;\r\n if (this.flag == undefined) {\r\n return Swal.fire(this.translations.aprroveorrevoce, '' , 'error');\r\n }\r\n if(this.flag==0)\r\n {\r\n to.Status=\"V\";\r\n to.StatusId=39;\r\n to.VerificateComment=\"\";\r\n mensaje=trans.show_message_approve;\r\n }\r\n else{\r\n if (row.VerificateComment==\" \" || row.VerificateComment==null || row.VerificateComment==\"\")\r\n {\r\n Swal.fire(trans.docapprove_error_missingcomment, '', 'error');\r\n return;\r\n }\r\n to.Status=\"R\";\r\n to.StatusId=40;\r\n to.VerificateComment=row.VerificateComment;\r\n mensaje=trans.show_message_reject;\r\n }\r\n Swal.fire({\r\n title: mensaje,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.ok,\r\n allowOutsideClick: false,\r\n preConfirm: () => {\r\n this.procesardoc(qst,to);\r\n\r\n }\r\n }).then((result) => {\r\n });\r\n }\r\n\r\n procesardoc(qst:any,to:any){\r\n this.loadingList = true;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success)\r\n {\r\n this.confirmDialog(x.msg, '', 'success');\r\n }else {\r\n this.confirmDialog(x.msg, '', 'error');\r\n }\r\n }, error => {\r\n this.confirmDialog(error, '', 'error');\r\n });\r\n }\r\n\r\n changeSelect(row) {\r\n if(row.valor == 0) {\r\n this.flag = 0;\r\n } else {\r\n this.flag = 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 {{this.name_company}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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_register' | translate}} \r\n \r\n {{'time_term' | translate}} \r\n \r\n {{'document' | translate}}\r\n \r\n {{'date_emision' | translate}} \r\n {{ \"caducity_date\" | translate }}{{'approve' | translate}} {{'reject' | translate}}{{'comment' | translate}} {{'action' | translate}}
{{ i + 1}}\r\n
\r\n {{row.VerificatesSendTime | date:'y-MM-dd'}}\r\n
\r\n
\r\n
\r\n {{row.NameDoc}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \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 } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSULTAVEHICLE = environment.Global.API_CONSULTAVEHICLE;\r\nconst API_DESACTIVEVEHICLE = environment.Global.API_DESACTIVEVEHICLE;\r\nconst API_ACTIVEVEHICLE = environment.Global.API_ACTIVEVEHICLE;\r\nconst API_CREATEVEHICLE = environment.Global.API_CREATEVEHICLE;\r\nconst API_CONSULTALL = environment.Global.API_CONSULTALL;\r\nconst API_UPDATEVEHICLE = environment.Global.API_UPDATEVEHICLE;\r\nconst API_GET_SEVERITY_TYPE_BY_ID = environment.Global.API_GET_SEVERITY_TYPE_BY_ID;\r\nconst API_UPDATE_STATUS_VEHICLE = environment.Global.API_UPDATE_STATUS_VEHICLE;\r\n\r\nenvironment.ConfigVehicle.tipo\r\n\r\n@Component({\r\n selector: 'app-reg-vehicle-contra',\r\n templateUrl: './reg-vehicle-contra.component.html',\r\n styleUrls: ['./reg-vehicle-contra.component.css']\r\n})\r\nexport class RegVehicleContraComponent extends BaseCrudComponent {\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n jobtypeID:any;\r\n mostarselectemp = true;\r\n date;\r\n CompanyID;\r\n seleccionados=[];\r\n SubContratista = \"SubContratista\";\r\n curr_cur:any;\r\n listcomp:any;\r\n ruta:any;\r\n brands = null;\r\n models = null;\r\n type = null;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSULTAVEHICLE;\r\n this.delete_url = API_DESACTIVEVEHICLE;\r\n this.active_url = API_ACTIVEVEHICLE;\r\n this.create_url = API_CREATEVEHICLE;\r\n this.update_url = API_UPDATEVEHICLE;\r\n\r\n this.search_fields = ['VehicleID','CarRegistration'];\r\n\r\n this.c_obj['SubCompany'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n this.date = new Date();\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n if(this.userinfo.ProfileID == 1) {\r\n this.ruta = API_CONSULTALL;\r\n }else if(this.userinfo.ProfileID == 2 || this.userinfo.ProfileID == 21){ //contratista o transportista\r\n this.ruta = this.read_url + this.userinfo['selectedCompanyId'];\r\n }\r\n });\r\n this.getList();\r\n }\r\n\r\n\r\n public getList() {\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(this.ruta).subscribe(x => {\r\n console.log(x);\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n this.getBrands();\r\n this.getModels();\r\n this.getType();\r\n }\r\n\r\n public getBrands() {\r\n this.srv.getCall(API_GET_SEVERITY_TYPE_BY_ID + \"BRAND_VEHICLES\").subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.brands = x.val;\r\n }\r\n }\r\n })\r\n }\r\n public getModels() {\r\n this.srv.getCall(API_GET_SEVERITY_TYPE_BY_ID + \"MODEL_VEHICLES\").subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.models = x.val;\r\n }\r\n }\r\n })\r\n }\r\n\r\n public getType() {\r\n this.srv.getCall(API_GET_SEVERITY_TYPE_BY_ID + \"TYPE_VEHICLES\").subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.type = x.val;\r\n }\r\n }\r\n })\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n var validated = true;\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n var to:any;\r\n form.CompanyID = this.userinfo.selectedCompanyId;\r\n form.CreatorUser = this.userinfo['logon'];\r\n to = form;\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.confirmDialogWithModal(x.msg, '' , 'success',content);\r\n }\r\n else{\r\n this.confirmDialogWithModal(x.msg, '' , 'warning',content);\r\n }\r\n });\r\n }\r\n\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'RegistrationNumber': new FormControl(fields.RegistrationNumber, [Validators.required]),\r\n 'MarcaId': new FormControl(fields.MarcaId, [Validators.required]),\r\n 'Model': new FormControl(fields.Model, [Validators.required]),\r\n 'VehicleTypeId': new FormControl(fields.VehicleTypeId, [Validators.required]),\r\n 'Color': new FormControl(fields.Color, [Validators.required]),\r\n });\r\n return mygroup.valid;\r\n }\r\n\r\n public openUpdateModal(content: any, obj: any) {\r\n this.isUpdating = false;\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false ,windowClass:\"myCustomModalClass\"});\r\n }\r\n\r\n\r\n public updateItem(content:any, form:any){\r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n var to:any;\r\n var validated = true;\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n to = {};\r\n to.CompanyID = this.userinfo.selectedCompanyId;\r\n to.VehicleID = form.VehicleID;\r\n to.RegistrationNumber = form.RegistrationNumber;\r\n to.MarcaId = form.MarcaId;\r\n to.Color = form.Color;\r\n to.VehicleTypeId = form.VehicleTypeId;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.confirmDialogWithModal(x.msg, '' , 'success',content);\r\n\r\n } else {\r\n this.confirmDialogWithModal(x.msg, '' , 'warning',content);\r\n }\r\n }, err => {\r\n this.confirmDialogWithModal(err, '' , 'error',content);\r\n });\r\n }\r\n\r\n\r\n public updateStatus(id, status) {\r\n let to = {\r\n VehicleID : id,\r\n Status: status\r\n }\r\n this.srv.postCall(API_UPDATE_STATUS_VEHICLE, to).subscribe(x => {\r\n if ( x.success ) {\r\n this.confirmDialog(x.msg,'','success');\r\n } else {\r\n this.confirmDialog(x.msg,'','error');\r\n }\r\n })\r\n }\r\n\r\n\r\n public toggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.updateStatus(id, 1);\r\n }else {\r\n this.updateStatus(id, 2);\r\n }\r\n }\r\n\r\n public onlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n\r\n public openCreateModal(content: any) {\r\n this.isCreating = false;\r\n this.c_obj = {};\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false ,windowClass:\"myCustomModalClass\"});\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'code' | translate}}\r\n {{'v_registration' | translate}}{{'v_brand' | translate}}{{'v_model' | translate}}{{'v_type' | translate}}{{'habidesa' | translate}}{{'action' | translate}}
{{row.VehicleID}}{{row.RegistrationNumber}}{{row.Brand}}{{row.ModelName[0].value}}{{row.VehicleType}}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { Companieadmin } from '../../../interfaces/companieadmin';\r\nimport * as CryptoJS from 'crypto-js';\r\nimport { format } from 'd3-format';\r\n//mport { Console } from 'console';\r\n\r\nconst KEY = environment.KEY;\r\nconst API_CONSULTACOMPANIES = environment.Global.API_CONSULTACOMPANIES;\r\nconst API_REGISTEREMP = environment.Global.API_REGISTEREMP;\r\nconst API_CONSULTAEMP = environment.Global.API_CONSULTAEMP;\r\nconst API_UPDATEEMP = environment.Global.API_UPDATEEMP;\r\nconst API_DESATEEMP = environment.Global.API_DESATEEMP;\r\nconst API_ACTIVETEEMP = environment.Global.API_ACTIVETEEMP;\r\nconst API_CONSDOCUMENEMP = environment.Global.API_CONSDOCUMENEMP;\r\n\r\n@Component({\r\n selector: 'app-regcompanies',\r\n templateUrl: './regcompanies.component.html',\r\n styleUrls: ['./regcompanies.component.css']\r\n})\r\nexport class RegcompaniesComponent extends BaseCrudComponent {\r\n tipo_empresa = [{id:1, name:\"Contratista\"},{id:2, name:\"Transportista\"}];\r\n service_type = [{id:true, name:\"Recurrente\"},{id:false, name:\"No recurrente\"}];\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n jobtypeID:any;\r\n mostarselectemp = true;\r\n date;\r\n seleccionados=[];\r\n Empresas = \"Empresas\";\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n permissions = [];\r\n RegCompanie: FormGroup;\r\n passuno: string;\r\n passdos: string;\r\n passnew: string;\r\n conversionEncryptOutput: string;\r\n conversionDecryptOutput:string;\r\n cedulaexiste;\r\n resetclave:any;\r\n tieneruc = true;\r\n disableEditCompType: boolean = false;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSULTACOMPANIES;\r\n this.create_url = API_REGISTEREMP;\r\n this.select_url = API_CONSULTAEMP;\r\n this.update_url = API_UPDATEEMP;\r\n this.delete_url = API_DESATEEMP;\r\n this.active_url = API_ACTIVETEEMP;\r\n this.documentemp_url = API_CONSDOCUMENEMP;\r\n\r\n this.search_fields = ['CompanyID','Name', 'Ruc'];\r\n\r\n this.c_obj['Company'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n this.crearFormEmp();\r\n\r\n }\r\n\r\n async ngOnInit() {\r\n this.date = new Date();\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n if( isNumeric( this.userinfo.logon) ) {\r\n this.mostarselectemp = false;\r\n } else {\r\n this.getList();\r\n this.mostarselectemp = true;\r\n }\r\n });\r\n }\r\n\r\n public getList() {\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n}\r\n\r\npublic openCreateModal(content: any) {\r\n this.c_obj = {};\r\n this.passnew=\"\";\r\n //this.modalService.open(content, { size: 'lg' });\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false });\r\n}\r\n\r\npublic openUpdateModalValidateCompany(content: any, obj: any, size?:any) {\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n\r\n // obtiene los documentos aprobados/valdados\r\n var qst = environment.Global.API_CAN_CHANGE_COMPANY_TYPE + obj.CompanyID;\r\n this.srv.getCall(qst).subscribe(x=>{\r\n // this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n console.log(x.val);\r\n // si hay algun documento se deshabilita el combo para editar el tipo de compañía\r\n this.disableEditCompType = x.val.length > 0;\r\n }\r\n }\r\n });\r\n\r\n this.u_obj = newobj;\r\n console.log(this.u_obj);\r\n if( size == undefined ){\r\n this.modalService.open(content, { centered: true });\r\n }\r\n else{\r\n this.modalService.open(content, { centered: true, size: size });\r\n }\r\n\r\n}\r\n\r\nonlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n}\r\n\r\ncrearFormEmp() {\r\n this.RegCompanie = new FormGroup({\r\n ruc: new FormControl('', Validators.compose([Validators.required, Validators.pattern(`^[0-9]{10}([0-9]{3})?$`)])),\r\n empresa: new FormControl('', [Validators.required]),\r\n email: new FormControl('', Validators.compose([Validators.required, Validators.pattern(\"^[a-z0-9._%+-]+@[a-z0-9.-]+\\\\.[a-z]{2,4}$\")])),\r\n pass: new FormControl('', []),\r\n typecompany: new FormControl('', [Validators.required]),\r\n typeservice: new FormControl('', [Validators.required]),\r\n });\r\n}\r\n\r\nonSubmit() {\r\n this.isCreating = true;\r\n var qst = this.create_url;\r\n\r\n if (this.RegCompanie.valid) {\r\n const companieNew: Companieadmin = new Companieadmin();\r\n companieNew.Username = this.RegCompanie.value.ruc;\r\n companieNew.Name = this.RegCompanie.value.empresa;\r\n companieNew.Email = this.RegCompanie.value.email;\r\n companieNew.typeCompany = this.RegCompanie.value.typecompany;\r\n companieNew.IsRecurrent = this.RegCompanie.value.IsRecurrent;\r\n companieNew.PassWord = this.conversionEncryptOutput ;\r\n companieNew.CreatorUserID = this.userinfo['userId'];\r\n this.srv.postCall(qst, companieNew).subscribe(x => {\r\n this.isCreating = false;\r\n if (x.success) {\r\n Swal.fire(\r\n {\r\n title: this.translations['msg_create'],\r\n text: x.msg,\r\n icon:'success',\r\n allowOutsideClick: false\r\n }\r\n ).then((result) => {\r\n if (result.value) {\r\n this.RegCompanie.reset();\r\n this.closeModal('create1');\r\n this.getList();\r\n }\r\n });\r\n } else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }else {\r\n Swal.fire(this.translations.msg_all_required, '', 'warning');\r\n return;\r\n }\r\n}\r\n\r\ngenerapass(){\r\n if (this.RegCompanie.controls.ruc.status == 'VALID' && this.RegCompanie.controls.empresa.status == 'VALID') {\r\n this.passnew = this.GeneratePw(this.RegCompanie.value.empresa, this.RegCompanie.value.ruc);\r\n this.conversionEncryptOutput = this.passnew;\r\n }\r\n}\r\n private GeneratePw(empresa, ruc) {\r\n if (empresa.length > 3) {\r\n this.passuno = empresa.substr(0, 4);\r\n } else {\r\n this.passuno = empresa;\r\n }\r\n this.passdos = ruc.substr(3, 4);\r\n return this.passuno.concat(this.passdos);\r\n }\r\nconsultaEmp (){\r\n if (this.RegCompanie.controls.ruc.status == 'VALID') {\r\n\r\n var qst = this.select_url;\r\n const companieNew: Companieadmin = new Companieadmin();\r\n companieNew.Ruc = this.RegCompanie.value.ruc;\r\n\r\n this.srv.postCall(qst, companieNew).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.RegCompanie.reset();\r\n this.reload.next(true);\r\n this.closeModal('create1');\r\n this.getList();\r\n Swal.fire(this.translations.ruc_exist,x.msg , 'success');\r\n } else{\r\n this.tieneruc = false;\r\n return;\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n }\r\n }\r\n\r\n public ValidaCheck(val:any){\r\n this.resetclave=\"\";\r\n if (val.target.checked==true){\r\n this.resetclave=true;\r\n }\r\n else{\r\n this.resetclave=false;\r\n }\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.Name == undefined) || (form.Name == '') ){\r\n Swal.fire(this.translations.msg_all_required, '', 'error');\r\n return;\r\n }\r\n to = {};\r\n to.Ruc = form.Ruc;\r\n to.Name = form.Name;\r\n to.Email = form.Email;\r\n to.LastModifierUserID = this.userinfo['userId'];\r\n to.CompanyID = form.CompanyID;\r\n to.typeCompany = form.typeCompany;\r\n to.IsRecurrent = form.IsRecurrent;\r\n to.mailModificate = this.userinfo['emailAddress'];\r\ndebugger;\r\n console.log(to);\r\n\r\n if(this.resetclave==true)\r\n {\r\n to.ResetPass=1;\r\n //to.PassWord = CryptoJS.AES.encrypt(this.GeneratePw(to.Name, to.Ruc), KEY.trim()).toString();\r\n to.PassWord = this.GeneratePw(to.Name, to.Ruc);\r\n }\r\n else{\r\n to.ResetPass=2;\r\n }\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations['updated'], '', 'success');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n\r\n}\r\n\r\ndeleteItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.CompanyID = obj;\r\n var qst = this.delete_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\n\r\nActivar(obj: any){\r\n var id:any;\r\n id = {};\r\n id.CompanyID = obj;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\ntoggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n}\r\n\r\n\r\n}\r\n\r\n DeletedItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.CompanyID = obj;\r\n id.DeleteUserID = this.userinfo['userId'];\r\n var qst = \"RegisterCompany/delete\";\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'ruc' | translate}}\r\n {{'company_type' | translate}}{{'service_type' | translate}}{{'habidesa' | translate}}{{'action' | translate}}
{{row.CompanyID}}{{row.Name}}{{row.Ruc}}{{row.typeCompany == 1 ? 'Contratista' : 'Transportista'}}{{row.IsRecurrent == 1 ? 'Recurrente' : 'No recurrente'}}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
Formato\r\n del correo inválido
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
Formato del RUC inválido
\r\n
{{'msg_company' | translate}}
\r\n \r\n
{{'msg_company1' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n

{{'edit_item' | translate}}: {{u_obj['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
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { Newsubcomjob } from '../../../interfaces/newsubcomjob';\r\n\r\nconst API_CONSDOCUMENEMP = environment.Global.API_CONSDOCUMENEMP;\r\n\r\n\r\n@Component({\r\n selector: 'app-regcompaniesdocu',\r\n templateUrl: './regcompaniesdocu.component.html',\r\n styleUrls: ['./regcompaniesdocu.component.css']\r\n})\r\nexport class RegcompaniesdocuComponent extends BaseCrudComponent {\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n RegSubJobCo: FormGroup;\r\n jobtypeID:any;\r\n seleccionados=[];\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n \r\n this.read_url = API_CONSDOCUMENEMP;\r\n // this.create_url = API_REGISTERJOBSUBCOM;\r\n // this.update_url = API_UPDATESUBJOBCOM;\r\n // this.active_url = API_ACTIVESUBJOBCOM;\r\n // this.delete_url = API_DESACTIVESUBJOBCOM;\r\n // this.urlJob = API_CONSULTAJOBTYPEACTIVE;\r\n \r\n\r\n this.search_fields = ['ParamDocumentID', 'DocumentName'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n \r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n Swal.fire(\r\n {\r\n title: this.translations['loading'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n var id:any;\r\n id = {};\r\n id.NameJobType = this.id;\r\n \r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.rows = rs;\r\n Swal.close()\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\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
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'menu_title_man_documento' | translate}}\r\n \r\n {{'Obligatorio' | translate}}\r\n {{'carga' | translate}}{{ 'Check' | translate}}
{{row.ParamDocumentID}}{{row.DocumentName}}
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{items.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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { saveAs as importedSaveAs } from \"file-saver\";\r\nimport Swal from 'sweetalert2';\r\nimport { blobToB64 } from '../approvedocumentsbase/approvedocumentsbase.component';\r\nimport { env } from 'process';\r\nimport {Global} from \"../../../services/global\";\r\n\r\nconst API_CONSDOCUMENEMP = environment.Global.API_CONSPARAMDOCUMENT_COMPANY;\r\nconst API_GETCOMPANYID = environment.Global.API_CONSULTACOMPANIESID;\r\nconst API_UPDATEEMP = environment.Global.API_UPDATECOMPANIE;\r\nconst API_FILE_COMPANY = environment.Global.API_FILE_COMPANY;\r\nconst API_UPDATE_DATA_COMPANY = environment.Global.API_UPDATE_DATA_COMPANY;\r\nconst API_GET_DOCUMENT_BY_COMPANY_ID = environment.Global.API_GET_DOCUMENT_BY_COMPANY_ID;\r\nconst API_GET_FILE_COMPANY_ID = environment.Global.API_GET_FILE_COMPANY_ID;\r\nconst API_UPDATE_COMPANY_DOCUMENTS = environment.Global.API_UPDATE_COMPANY_DOCUMENTS;\r\nconst API_DELETE_DOCUMET = environment.Global.API_DELETE_DOCUMET;\r\nconst API_GET_SEVERITY_TYPE_BY_ID=environment.Global.API_GET_SEVERITY_TYPE_BY_ID;\r\nconst API_GET_COMPANY_BY_ID=environment.Global.API_GET_COMPANY_BY_ID;\r\n\r\n\r\n@Component({\r\n selector: 'app-regcompaniesemp',\r\n templateUrl: './regcompaniesemp.component.html',\r\n styleUrls: ['./regcompaniesemp.component.css']\r\n})\r\nexport class RegcompaniesempComponent extends BaseCrudComponent {\r\n\r\n loadingRequired = false;\r\n translations: any;\r\n available_languages: any;\r\n mostarselectemp;\r\n currlang: any;\r\n version: any;\r\n userinfo: any;\r\n company: any;\r\n id;\r\n permissions = [];\r\n mostargridvacio = false;\r\n NewCompanie: FormGroup;\r\n directiontemp;\r\n phonetemp;\r\n namefile: any;\r\n cargados = false;\r\n archivos = [];\r\n tipotrabajo = [];\r\n mensaje = \"\";\r\n size_max = 4194304//3145728;//3mb\r\n curr_parameter: any;\r\n typeSelected = '';\r\n seeModalCar = false;\r\n position: any\r\n docName: any\r\n CompDocumentId: any\r\n\r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row2: any = [];\r\n titlePolitics=\"\";\r\n descriptionPolitics=\"\";\r\n rutaArchivoMEDEVAC: string = Global.API_GENERAL_URL.replace('api/','')+'Documents/Templates/Ficha_MEDEVAC_proveedores_y_contratistas_VF.xlsx';\r\n rutaArchivoServicio: string = Global.API_GENERAL_URL.replace('api/','')+'Documents/Templates/INFORME_DE_ENTREGA_DE_SERVICIO_VF.xlsx';\r\n rutaArchivoReporte: string = Global.API_GENERAL_URL.replace('api/','')+'Documents/Templates/Formato_Reporte_de_Campo_Contratistas_VF.xlsx';\r\n rutaArchivoIndice: string = Global.API_GENERAL_URL.replace('api/','')+'Documents/Templates/GIS_Contratista_VF.xlsx';\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.select_url = API_GETCOMPANYID;\r\n this.update_url = API_UPDATEEMP;\r\n this.documentemp_url = API_CONSDOCUMENEMP;\r\n this.delete_url_details = API_DELETE_DOCUMET;\r\n this.curr_parameter = 0;\r\n this.search_fields = ['Name', 'Ruc'];\r\n\r\n this.c_obj['Company'] = [];\r\n }\r\n\r\n\r\n async ngOnInit() {\r\n this.company = [];\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = {};\r\n this.userinfo['logon'] = '';\r\n this.userinfo['typeCompany'] = '';\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(async x => {\r\n this.userinfo = x;\r\n if (isNumeric(this.userinfo.logon)) {\r\n this.mostarselectemp = false;\r\n }\r\n await this.getList();\r\n await this.srv.getCall(API_GET_SEVERITY_TYPE_BY_ID+\"/POLITICA DE PRIVACIDAD DE DATOS\").subscribe(resp=>{\r\n console.log(resp.val);\r\n this.titlePolitics=resp.val[0][\"field\"]\r\n this.descriptionPolitics=resp.val[0][\"value\"]\r\n } );\r\n });\r\n this.cargarCompany();\r\n\r\n }\r\n\r\n onlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n\r\n async getList() {\r\n this.loadingList = true;\r\n var id: any = {};\r\n id.CompanyID = this.userinfo.selectedCompanyId;\r\n var par_url = this.select_url;\r\n var to: any = {};\r\n to.CompanyId = this.userinfo.selectedCompanyId;\r\n this.messageShowLoading();\r\n await this.srv.postCall(par_url, to).toPromise().then(x => {\r\n this.loadingList = false;\r\n if (x.success) {\r\n if (x.val != null) {\r\n var rs = x.val;\r\n this.u_obj = rs;\r\n // console.log(this.u_obj);\r\n this.userinfo.typeCompany = x.val['typeCompany'];\r\n this.typeSelected = x.val['typeCompany'];\r\n // this.messageDialog(x.msg, '' , 'success');\r\n this.closeLoadingMessage();\r\n } else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.u_obj = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n this.getListDocument();\r\n this.GetDocumentUpload();\r\n\r\n }\r\n\r\n public getListDocument() {\r\n var qst = this.documentemp_url;\r\n var to: any;\r\n to = {};\r\n to._IdComp = this.userinfo.selectedCompanyId;\r\n if (this.userinfo['typeCompany'] == 1) {\r\n to._Id = 25;\r\n } else {\r\n to._Id = 97;\r\n }\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.loadingList = false;\r\n if (x.success) {\r\n if (x.val != null) {\r\n var rs = x.val;\r\n this.rowdocument = rs;\r\n } else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rowdocument = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public GetDocumentUpload() {\r\n var par_url = API_GET_DOCUMENT_BY_COMPANY_ID + this.userinfo.selectedCompanyId;\r\n this.srv.getCall(par_url).subscribe(x => {\r\n this.loadingList = false;\r\n if (x.success) {\r\n if (x.val != null && x.val.length > 0) {\r\n var rs = x.val;\r\n this.rowdocumentupload = rs;\r\n let flag = false;\r\n this.rowdocumentupload.forEach(element => {\r\n if (element.status_doc == \"A\" || element.status_doc == \"R\") {\r\n flag = true;\r\n }\r\n });\r\n\r\n if (flag) {\r\n this.cargados = true;\r\n } else {\r\n this.cargados = false;\r\n }\r\n } else {\r\n // Swal.fire(x.msg, '', 'success');\r\n this.rowdocumentupload = [];\r\n this.cargados = false;\r\n this.mensaje = \"\";\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public validateCreateInfo(fields: any): boolean {\r\n let mygroup: any = {};\r\n mygroup = new FormGroup({\r\n 'com_legalidentification': new FormControl(fields.com_legalidentification, [Validators.required]),\r\n 'com_Securityidentification': new FormControl(fields.com_Securityidentification, [Validators.required]),\r\n 'com_legalrepresentative': new FormControl(fields.com_legalrepresentative, [Validators.required]),\r\n 'com_Securityrepresentative': new FormControl(fields.com_Securityrepresentative, [Validators.required]),\r\n 'com_legalmail': new FormControl(fields.com_legalmail, [Validators.required]),\r\n 'com_Securitymail': new FormControl(fields.com_Securitymail, [Validators.required])\r\n });\r\n return mygroup.valid;\r\n }\r\n\r\n public updateItem(content: any, form: any) {\r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n var validated = true;\r\n\r\n if (form == undefined) {\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if (!validated) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n var to: any;\r\n\r\n\r\n to = {};\r\n to.CompanyID = this.userinfo.selectedCompanyId;\r\n to.Telephone = form.Telephone;\r\n to.Direction = form.Direction;\r\n to.typeCompany = form.typeCompany;\r\n to.com_legalidentification = form.com_legalidentification;\r\n to.com_Securityidentification = form.com_Securityidentification;\r\n to.com_legalrepresentative = form.com_legalrepresentative;\r\n to.com_Securityrepresentative = form.com_Securityrepresentative;\r\n to.com_legalmail = form.com_legalmail;\r\n to.com_Securitymail = form.com_Securitymail;\r\n to.LastModifierUserID = this.userinfo['userId'];\r\n // Contratistas a Transportistas: Transportistas a Contratistas\r\n // console.log(\"Valor anterior:\", this.userinfo.typeCompany)\r\n // console.log(\"Valor Nuevo:\", to.typeCompany)\r\n let title = \"\"\r\n\r\n if (this.userinfo.typeCompany != to.typeCompany && to.typeCompany == 1) {\r\n title = this.translations.messageDriversToWorker\r\n } else if (this.userinfo.typeCompany != to.typeCompany && to.typeCompany == 2) {\r\n title = this.translations.messageWorkerToDrivers;\r\n } else {\r\n title = this.translations.MessageConfirmTitle;\r\n }\r\n\r\n\r\n Swal.fire(\r\n {\r\n title: title,\r\n text: this.translations.TextConfirm,\r\n icon: 'info',\r\n allowOutsideClick: false,\r\n showCancelButton: true,\r\n cancelButtonText: this.translations.Cancel,\r\n cancelButtonColor: '#84888b',\r\n confirmButtonText: this.translations.Accept,\r\n confirmButtonColor: '#C8102E',\r\n showCloseButton: true,\r\n }\r\n ).then((result) => {\r\n\r\n if (result.value == true) {\r\n\r\n this.messageShowLoading();\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n this.closeModal('update5');\r\n Swal.fire(this.translations.msg_create, x.msg, 'success');\r\n this.curr_parameter = 0;\r\n this.getList();\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n } else {\r\n // console.log(result)\r\n this.isUpdating = 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 async onExpSubmit(row: any) {//, content\r\n\r\n //console.log(row)\r\n\r\n if (this.archivos.length == 0) {\r\n Swal.fire(this.translations.document, this.translations.document_error_minqty, 'error');\r\n return;\r\n }\r\n var size_document = this.archivos[0].size;\r\n if (size_document > this.size_max) {\r\n Swal.fire(this.translations.document, this.translations.pdi_img_toobig, 'error');\r\n this.archivos = [];\r\n return;\r\n }\r\n if (row.date_doc == undefined || row.date_doc_end == undefined) {\r\n Swal.fire(this.translations.msg_all_required, '', 'error');\r\n return;\r\n }\r\n\r\n let formData = new FormData();\r\n formData.append('FileUpload', this.archivos[0]);\r\n formData.append('CompanyID', this.userinfo.selectedCompanyId);\r\n formData.append('ParamDocumentID', row.ParamDocumentID);\r\n\r\n\r\n await this.srv.AddFiles(API_FILE_COMPANY, formData).toPromise().then(async result => {\r\n if (result.STATUS) {\r\n Swal.fire({\r\n title: result.MENSAJE,\r\n text: '',\r\n icon: 'success',\r\n showCancelButton: false,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'OK'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.uploadDataBase(row);\r\n }\r\n })\r\n }\r\n else {\r\n Swal.fire(result.MENSAJE, '', 'error');\r\n this.archivos = [];\r\n this.getList();\r\n }\r\n });\r\n\r\n }\r\n\r\n public async uploadDataBase(row: any) {\r\n var par_url = API_UPDATE_DATA_COMPANY;\r\n var to: any = {};\r\n to.ParamDocumentID = row.ParamDocumentID;\r\n to.CompanyID = this.userinfo.selectedCompanyId;\r\n to.LastModifierUser = this.userinfo.logon;\r\n to.CreatorUser = this.userinfo.logon;\r\n to.ImageFileName = this.namefile;\r\n to.DateDocument = row.date_doc;\r\n to.ExpirationTime = row.date_doc_end;\r\n\r\n await this.srv.postCall(par_url, to).toPromise().then(x => {\r\n if (x.success) {\r\n Swal.fire({\r\n title: x.msg,\r\n text: '',\r\n icon: 'success',\r\n showCancelButton: false,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'OK',\r\n allowOutsideClick: false\r\n }).then((result) => {\r\n if (result.value) {\r\n this.archivos = [];\r\n this.getList();\r\n }\r\n })\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n handleInputChange(e, i :number) {\r\n this.archivos = [];\r\n const fileInput = e.target;\r\n const file = e.dataTransfer ? e.dataTransfer.files[0] : e.target.files[0];\r\n\r\n if (!file) {\r\n this.messageDialog('No se ha seleccionado ningún archivo.', '', 'error');\r\n return;\r\n }\r\n\r\n const allowedExtensions = ['application/pdf'];\r\n const extension = file.type;\r\n\r\n if (allowedExtensions.includes(extension)) {\r\n this.archivos.push(file);\r\n this.namefile = file.name;\r\n let btnGuardar=document.getElementById(\"guardarButton\"+i);\r\n console.log(btnGuardar!=null)\r\n btnGuardar.click();\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n fileInput.value = '';\r\n return;\r\n }\r\n }\r\n\r\n openViewModal(modal, object){\r\n const DocFileName = object.ParamDocumentID;\r\n this.row2 = object;\r\n\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_COMPANY_ID, object.CompanyID, DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n });\r\n }\r\n\r\n downloadDocFile(data) {\r\n const DocFileName = data.ParamDocumentID;\r\n const name = data.ImageFileName;\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_COMPANY_ID, data.CompanyID, DocFileName).subscribe((data) => {\r\n importedSaveAs(data, name)\r\n });\r\n }\r\n public PoliticsPrivate(){\r\n let trans = this.translations;\r\n if(this.company.approvedPolitics!=true){\r\n\r\n Swal.fire({\r\n title: this.titlePolitics,\r\n text: this.descriptionPolitics,\r\n icon: 'warning',\r\n // showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n // cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.accept,\r\n allowOutsideClick: false,\r\n preConfirm: () => {\r\n this.company.approvedPolitics=true\r\n this.srv.postCall(API_UPDATEEMP, this.company).subscribe(resp=>{\r\n if(resp.success){\r\n this.UpdateStatus();\r\n }\r\n })\r\n }\r\n }).then((result) => {\r\n });\r\n }else{\r\n this.UpdateStatus();\r\n }\r\n }\r\n public UpdateStatus() {\r\n var to: any = {};\r\n to.CompanyID = this.userinfo.selectedCompanyId;\r\n to.Status = \"P\";\r\n to.StatusId = 38;\r\n if (this.u_obj.com_Securitymail == \" \" || this.u_obj.com_Securitymail == \" \" || this.u_obj.com_Securitymail == null) {\r\n Swal.fire(this.translations.important, this.translations['msg_mail'], 'warning');\r\n return;\r\n }\r\n\r\n let trans = this.translations;\r\n\r\n Swal.fire({\r\n title: trans.sampapp_refmethodswarn,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.ok,\r\n allowOutsideClick: false,\r\n preConfirm: () => {\r\n this.saveVerificationAPI(to);\r\n }\r\n }).then((result) => {\r\n });\r\n }\r\n\r\n saveVerificationAPI(to: any) {\r\n this.isUpdating = true;\r\n this.srv.postCall(API_UPDATE_COMPANY_DOCUMENTS, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n this.getList();\r\n }\r\n else {\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n public addParameter(obj: any) {\r\n if (this.curr_parameter == 0) {\r\n return;\r\n }\r\n else {\r\n let parm = this.tipotrabajo.filter(f => {\r\n return f.JobTypeID == this.curr_parameter;\r\n });\r\n let checker = obj['CompanyByJob'].filter(f => {\r\n return f.CompanyID == this.curr_parameter;\r\n });\r\n\r\n if (parm.length > 0) {//( (parm.length > 0) && (checker.length == 0) ){\r\n let parameter = parm[0];\r\n obj['CompanyByJob'].push({ JobTypeID: parameter['JobTypeID'], CompanyId: obj['CompanyId'], fullname: parameter['Name'] });\r\n }\r\n }\r\n\r\n }\r\n\r\n public delParameter(obj: any, position: number) {\r\n obj['CompanyByJob'].splice(position, 1);\r\n }\r\n\r\n\r\n\r\n public deleteFile(position, modal, docName, CompDocumentId) {\r\n //this.position = position\r\n //this.docName = docName\r\n //this.CompDocumentId = CompDocumentId\r\n //this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n\r\n let trans = this.translations;\r\n Swal.fire({\r\n title: '¿Está seguro que desea eliminar el archivo ' + docName + ' ?',\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.ok,\r\n allowOutsideClick: false,\r\n preConfirm: () => {\r\n this.confirmDeleteFile(CompDocumentId);\r\n this.company.approvedPolitics=true;\r\n this.srv.postCall(API_UPDATEEMP, this.company);\r\n }\r\n }).then((result) => {\r\n });\r\n }\r\n\r\n confirmDeleteFile(CompDocumentId) {\r\n\r\n var qst = this.delete_url_details;\r\n var to: any;\r\n\r\n to = {};\r\n to.CompDocumentId = CompDocumentId\r\n to.DeleteUser = this.userinfo.logon;\r\n\r\n\r\n this.isUpdating = true;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n this.getList();\r\n }\r\n else {\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n /*\r\n public confirmDeleteFile(position, modal, CompDocumentId){\r\n\r\n var qst = this.delete_url_details;\r\n var to:any;\r\n\r\n to = {};\r\n to.CompDocumentId = CompDocumentId\r\n to.DeleteUser = this.userinfo.logon;\r\n\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n this.closeModal('modaldelete'); // Close Modal\r\n Swal.fire(this.translations.msg_create, x.msg, 'success');\r\n //this.curr_parameter = 0;\r\n this.ngOnInit(); // Reloaded\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n */\r\n\r\n public activateIconVehicle() {\r\n if (this.typeSelected == 'T') {\r\n this.seeModalCar = true;\r\n } else {\r\n this.seeModalCar = false;\r\n }\r\n }\r\n\r\n public openCreateCarModal(modal) {\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'lg', centered: true });\r\n }\r\n public cargarCompany(){\r\n let company=this.userinfo.selectedCompanyId;\r\n this.srv.getCall(API_GET_COMPANY_BY_ID+company).subscribe( resp=> {\r\n this.company=resp[\"val\"]\r\n })\r\n }\r\n}\r\n","\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n

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

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n {{option.name |\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 \"menu_title_man_documento\" | translate\r\n }}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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 }}{{ \"desc\" | translate }}{{ \"Obligatorio\" | translate }}{{ \"emition_date\" | translate }}{{ \"caducity_date\" | translate }}{{ \"document\" | translate }}{{ \"action\" | translate }}
\r\n
\r\n {{ row.DocumentName }}\r\n
\r\n
\r\n
\r\n {{ row.DocumentDescription }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{ \"comp_max_doc_size\" | translate }}\r\n {{ \"max_doc_size\" | translate }} MB\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n {{ \"documents_send\" | translate }}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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_upload\" | translate }}{{ \"name_archive\" | translate }}{{ \"emition_date\" | translate }}{{ \"expiration_date\" | translate }}{{ \"status\" | translate }}{{ \"comment\" | translate }}{{ \"action\" | translate }}
\r\n
\r\n {{ row1.NameDoc }}\r\n
\r\n
\r\n
\r\n {{ row1.ImageFileName }}\r\n
\r\n
\r\n
\r\n {{ row1.DateDocument | date: \"y-MM-dd\" }}\r\n
\r\n
\r\n
\r\n {{ row1.ExpirationTime | date: \"y-MM-dd\" }}\r\n
\r\n
{{ row1.status_name }}\r\n
\r\n {{ (row1.VerificateComment == null || row1.VerificateComment == \"\") ? \"Sin novedad\" :\r\n row1.VerificateComment }}\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n

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

\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
{{ \"textDeleteDoc\" | translate }} {{ this.docName }} ?
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \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 { ApiService } from '../../../services/main/api.service';\r\nimport {NgbModal, ModalDismissReasons, NgbActiveModal, NgbAlert} from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup,FormBuilder, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport * as moment from 'moment-timezone';\r\nimport { environment } from '../../../../environments/environment';\r\nimport {Subject} from \"rxjs\";\r\nimport {debounceTime} from \"rxjs/operators\";\r\n\r\nconst KEY = environment.KEY;\r\nconst API_REGEMPLOYEE = Global.API_REGISTEREMPLOYEE;\r\nconst API_ALLEMPLOYEE = Global.API_ALLEMPLOYEECOMPANYID;\r\nconst API_UPDATEEMPLOYEE = Global.API_UPDATEEMPLOYEE;\r\nconst API_UPDATESTATUSEMPLOYEE = Global.API_STATUSEMPLOYEE;\r\nconst API_CONSDOCUMENEMP = Global.API_CONSPARAMDOCUMENT_VEHICLE;\r\nconst API_CONSULTAVEHICLE = Global.API_CONSULTAVEHICLE;\r\nconst API_EXIST_EMPLOYEE = environment.Global.API_EXIST_EMPLOYEE;\r\nconst API_GET_EMPLOYEE_BY_COMPANY = environment.Global.API_GET_EMPLOYEE_BY_COMPANY;\r\n\r\n@Component({\r\n selector: 'app-regdriver',\r\n templateUrl: './regdriver.component.html',\r\n styleUrls: ['./regdriver.component.css']\r\n})\r\nexport class RegdriverComponent extends BaseCrudComponent{\r\n userinfo:any;\r\n groupselect:any;\r\n plantas:any;\r\n tipotrabajo:any;\r\n loadingRequired = false;\r\n translations:any;\r\n momentjs: any = moment;\r\n fileName:any;\r\n foto64;\r\n imageSrc:any;\r\n fields:any;\r\n list_doc:any;\r\n passuno: string;\r\n passdos: string;\r\n passnew: string;\r\n conversionEncryptOutput: string;\r\n conversionDecryptOutput:string;\r\n resultado:any;\r\n form:FormGroup;\r\n listavehiculos:any;\r\n default = '../../../assets/images/users/1.jpg';\r\n newobj: any;\r\n successMessage = '';\r\n\r\n @ViewChild('selfClosingAlert', {static: false}) selfClosingAlert: NgbAlert;\r\n\r\n private _success = new Subject();\r\n\r\n\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService,\r\n ) {\r\n super(srv, modalService, storage, router);\r\n\r\n this.read_url = API_ALLEMPLOYEE;\r\n this.create_url = API_REGEMPLOYEE;\r\n this.update_url = API_UPDATEEMPLOYEE;\r\n this.active_url = API_UPDATESTATUSEMPLOYEE;\r\n this.list_doc= API_CONSDOCUMENEMP;\r\n this.groupselect = [];\r\n\r\n this.search_fields = ['EmployeeId','NumberIdentification','Name','NameSubCompany'];\r\n\r\n this.c_obj['Employee'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n this.getList();\r\n });\r\n\r\n this._success.subscribe(message => this.successMessage = message);\r\n this._success.pipe(debounceTime(1000)).subscribe(() => {\r\n if (this.selfClosingAlert) {\r\n this.selfClosingAlert.close();\r\n }\r\n });\r\n }\r\n\r\n public getList()\r\n {\r\n var qst = API_GET_EMPLOYEE_BY_COMPANY + \"/\" + this.userinfo['selectedCompanyId'];\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'error');\r\n this.closeLoadingMessage();\r\n return;\r\n }\r\n });\r\n this.getCompany();\r\n }\r\n\r\n public getCompany(){\r\n let url = 'CompaniesConsulta/SubCompanyByIDCompany';\r\n var to:any;\r\n to={};\r\n to.CompanyID=this.userinfo['selectedCompanyId'];\r\n this.srv.postCall(url, to).subscribe(x => {\r\n if (x.success) {\r\n this.groupselect=x.val;\r\n } else{\r\n this.groupselect=[];\r\n return;\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n\r\n public openCreateModal(content: any) {\r\n this.default = '../../../assets/images/users/1.jpg';\r\n this.c_obj = {};\r\n let curr_date = this.momentjs().tz('America/Guayaquil').format('YYYY-MM-DD');\r\n this.c_obj['Birth_date'] = curr_date;\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n }\r\n\r\n\r\n onFileChanged(event) {\r\n const reader = new FileReader();\r\n const file = event.target.files[0];\r\n reader.readAsDataURL(file);\r\n reader.onload = () => {\r\n this.fileName = file.name + ' ' + file.type;\r\n const str = reader.result.toString();\r\n this.foto64 = str;\r\n if (this.u_obj['Picture'] == null) {\r\n this.u_obj['Picture'] = this.foto64;\r\n }\r\n this.imageSrc = str;\r\n this.default = null;\r\n };\r\n }\r\n\r\n\r\n\r\n openUpdateModal(content:any, obj:any){\r\n this.isUpdating = false;\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n this.imageSrc = null;\r\n if (this.u_obj['Picture'] == null) {\r\n this.default = '../../../assets/images/users/1.jpg';\r\n }\r\n this.u_obj['Birth_date'] = obj.Birth_date.split('T')[0];\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n this.foto64=obj.Picture;\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n var to:any;\r\n\r\n if( (form.Name == undefined) || (form.Name == '') ){\r\n Swal.fire(this.translations.msg_all_required, 'msg', 'warning');\r\n return;\r\n }\r\n to = {};\r\n to = form;\r\n to.Picture = this.foto64;\r\n to.LastModifierUserID = this.userinfo['logon'];\r\n to.CompanyID = this.userinfo['selectedCompanyId'];\r\n to.Status=\"A\"\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n this.confirmDialogWithModal(x.msg,'','success', content);\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n toggleEditable(event, id){\r\n if ( event.target.checked ) {\r\n this.Activar(id,1);\r\n }else {\r\n this.Activar(id,2);\r\n }\r\n }\r\n\r\n Activar(obj: any, valor:any){\r\n var to:any = {};\r\n to.EmployeeId = obj;\r\n to.Status=valor;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n Swal.close();\r\n if(x.success){\r\n this.confirmDialog(x.msg,'','success');\r\n }\r\n else{\r\n this.confirmDialog(x.msg,'','error');\r\n }\r\n }, err => {\r\n this.messageDialog(err,'','error');\r\n });\r\n }\r\n\r\n searchEmployee() {\r\n this.srv.getCall(API_EXIST_EMPLOYEE + this.c_obj['NumberIdentification']).subscribe(x => {\r\n if (x.success ) {\r\n if (x.val != null) {\r\n this.newobj = x.val;\r\n this.messageDialog(x.msg, '' ,'success');\r\n this._success.next(`${this.newobj.NumberIdentification} - Ya esta registrado en ${this.newobj.CompanyName}.`);\r\n this.c_obj['NumberIdentification'] = null;\r\n }\r\n }\r\n }, error => {\r\n this.messageDialog(error, '' ,'error');\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'NumberIdentification': new FormControl(fields.NumberIdentification, [Validators.required]),\r\n 'Name': new FormControl(fields.Name, [Validators.required]),\r\n 'Email': new FormControl(fields.Email, [Validators.required]),\r\n 'telephone': new FormControl(fields.telephone, [Validators.required]),\r\n 'address': new FormControl(fields.address, [Validators.required]),\r\n 'nationality': new FormControl(fields.nationality, [Validators.required]),\r\n\r\n });\r\n\r\n return mygroup.valid;\r\n}\r\n public async createItem(content:any, obj:any){\r\n var validated = true;\r\n validated = this.validateCreateInfo(obj);\r\n if( !validated ){\r\n Swal.fire(this.translations.msg_all_required, '', 'error');\r\n return;\r\n }\r\n obj.Picture = this.foto64;\r\n obj.CompanyID = this.userinfo.selectedCompanyId;\r\n obj.CreatorUser = this.userinfo['logon'];\r\n obj.Status = \"A\";\r\n obj.TypeEmployeeID = 101;\r\n obj.position = \"Conductor\";\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n // console.log(obj)\r\n await this.srv.postCall(qst, obj).toPromise().then(async x => {\r\n if(x.success){\r\n await this.CreateUserAndSenmail(x.val, content);\r\n this.isCreating = false;\r\n }\r\n else{\r\n this.isCreating = false;\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n generapass(numero:any,names:any){\r\n if (numero!=\"\" && numero!=null) {\r\n this.passuno = names.substr(0, 3);\r\n this.passdos = numero.substr(4, 6);\r\n this.passnew = this.passuno.concat(this.passdos);\r\n this.conversionEncryptOutput = this.passnew;\r\n }\r\n }\r\n\r\n async CreateUserAndSenmail(obj:any, content)\r\n {\r\n var qst=\"Employee/CreateUser\";\r\n this.generapass(obj.NumberIdentification,obj.Name);\r\n var to = obj;\r\n to.address=this.conversionEncryptOutput;\r\n to.position=this.passnew;\r\n if (this.conversionEncryptOutput==\"\")\r\n {\r\n this.resultado=\"error\";\r\n return;\r\n }\r\n await this.srv.postCall(qst, to).toPromise().then(x => {\r\n this.isCreating = false;\r\n if (x.success) {\r\n this.confirmDialogWithModal(this.translations.msg_create, x.msg, 'success', content);\r\n this.imageSrc = \"\";\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n\r\n onlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'identification' | translate}}\r\n \r\n {{'name' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{i + 1}}{{row.NumberIdentification}}{{row.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

{{'create_item' | translate}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"your\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ successMessage }}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n

{{'edit_item' | translate}}: {{u_obj['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 \"your\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport {NgbModal, ModalDismissReasons, NgbActiveModal, NgbAlert} from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup,FormBuilder, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport * as moment from 'moment-timezone';\r\nimport { environment } from '../../../../environments/environment';\r\nimport {Subject} from \"rxjs\";\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\nconst KEY = environment.KEY;\r\nconst API_REGEMPLOYEE = environment.Global.API_REGISTEREMPLOYEE;\r\nconst API_ALLEMPLOYEE = environment.Global.API_ALLEMPLOYEECOMPANYID;\r\nconst API_UPDATEEMPLOYEE = environment.Global.API_UPDATEEMPLOYEE;\r\nconst API_UPDATESTATUSEMPLOYEE = environment.Global.API_STATUSEMPLOYEE;\r\n// const API_CONSDOCUMENEMP = environment.Global.API_CONSPARAMDOCUMENT_1;\r\nconst API_EXIST_EMPLOYEE = environment.Global.API_EXIST_EMPLOYEE;\r\nconst API_GET_EMPLOYEE_BY_COMPANY = environment.Global.API_GET_EMPLOYEE_BY_COMPANY;\r\nconst API_GET_SYSTEM_PARAMETER_BY_FIELD = environment.Global.API_GET_SEVERITY_TYPE_BY_ID;\r\n\r\n@Component({\r\n selector: 'app-regemployee',\r\n templateUrl: './regemployee.component.html',\r\n styleUrls: ['./regemployee.component.css']\r\n})\r\nexport class RegemployeeComponent extends BaseCrudComponent{\r\n userinfo:any;\r\n groupselect:any;\r\n plantas:any;\r\n tipotrabajo:any;\r\n loadingRequired = false;\r\n translations:any;\r\n momentjs: any = moment;\r\n fileName:any;\r\n foto64;\r\n imageSrc:any;\r\n fields:any;\r\n list_doc:any;\r\n curr_parameter:any[];\r\n curr_parameterl:any[];\r\n curr_parameter2:any[];\r\n passuno: string;\r\n passdos: string;\r\n passnew: string;\r\n conversionEncryptOutput: string;\r\n conversionDecryptOutput:string;\r\n resultado:any;\r\n form:FormGroup;\r\n listavehiculos:any;\r\n vehiculosSelected = [];\r\n default = '../../../assets/images/users/1.jpg';\r\n telephone1 = '';\r\n telephone2 = '';\r\n newobj: any;\r\n successMessage = '';\r\n\r\n type_document: any[];\r\n type_nacionality: any[];\r\n tipo_documento_edit: string;\r\n\r\n @ViewChild('selfClosingAlert', {static: false}) selfClosingAlert: NgbAlert;\r\n\r\n private _success = new Subject();\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService,\r\n private FormBuilder:FormBuilder\r\n ) {\r\n super(srv, modalService, storage, router);\r\n\r\n this.read_url = API_ALLEMPLOYEE;\r\n this.create_url = API_REGEMPLOYEE;\r\n this.update_url = API_UPDATEEMPLOYEE;\r\n this.active_url = API_UPDATESTATUSEMPLOYEE;\r\n // this.list_doc= API_CONSDOCUMENEMP;\r\n this.groupselect = [];\r\n this.plantas=[];\r\n this.tipotrabajo=[];\r\n this.curr_parameter2 = [];\r\n this.curr_parameter = [];\r\n this.curr_parameterl = [];\r\n\r\n this.search_fields = ['EmployeeId','NumberIdentification','Name','NameSubCompany'];\r\n\r\n this.c_obj['Employee'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n this.getList();\r\n });\r\n// debugger;\r\n this._success.subscribe(message => this.successMessage = message);\r\n this._success.pipe(debounceTime(1000)).subscribe(() => {\r\n if (this.selfClosingAlert) {\r\n this.selfClosingAlert.close();\r\n }\r\n });\r\n }\r\n\r\n public getList()\r\n {\r\n var qst = API_GET_EMPLOYEE_BY_COMPANY + \"/\" + this.userinfo['selectedCompanyId'];\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n // this.messageDialog(x.msg, '' ,'error');\r\n this.closeLoadingMessage();\r\n return;\r\n }\r\n });\r\n this.getCompany();\r\n this.getTypeJob();\r\n this.getTypeDocument();\r\n this.getTypeNacionality();\r\n }\r\n\r\n public getCompany(){\r\n let url = 'CompaniesConsulta/SubCompanyByIDCompany';\r\n var to:any;\r\n to={};\r\n to.CompanyID=this.userinfo['selectedCompanyId'];\r\n this.srv.postCall(url, to).subscribe(x => {\r\n if (x.success) {\r\n this.groupselect=x.val;\r\n } else{\r\n this.groupselect=[];\r\n return;\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public getTypeJob(){\r\n let url = 'ConsultasGenerales/ConsultaJobTypeActive';\r\n\r\n var to:any;\r\n to={};\r\n to.CompanyID=this.userinfo['selectedCompanyId'];\r\n this.srv.getCall(url).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n this.tipotrabajo = x.val;\r\n }else {\r\n this.tipotrabajo = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public getTypeDocument(){\r\n let url = API_GET_SYSTEM_PARAMETER_BY_FIELD + 'TYPE_DOCUMENT';\r\n\r\n this.srv.getCall(url).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n console.log(x.val);\r\n this.type_document = x.val;\r\n }\r\n }\r\n });\r\n }\r\n\r\n public getTypeNacionality(){\r\n let url = API_GET_SYSTEM_PARAMETER_BY_FIELD + 'TYPE_NACIONALITY';\r\n\r\n this.srv.getCall(url).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n console.log(x.val);\r\n this.type_nacionality = x.val;\r\n }\r\n }\r\n });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.default = '../../../assets/images/users/1.jpg';\r\n this.c_obj = {};\r\n let curr_date = this.momentjs().tz('America/Guayaquil').format('YYYY-MM-DD');\r\n this.c_obj['Birth_date'] = curr_date;\r\n this.c_obj['EmployeeByJob'] = [];\r\n this.c_obj['EmployeeByPlanta'] = [];\r\n this.curr_parameter = [];\r\n this.curr_parameterl=[];\r\n this.curr_parameter2=[];\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n }\r\n\r\n\r\n onFileChanged(event) {\r\n const reader = new FileReader();\r\n const file = event.target.files[0];\r\n reader.readAsDataURL(file);\r\n reader.onload = () => {\r\n this.fileName = file.name + ' ' + file.type;\r\n const str = reader.result.toString();\r\n this.foto64 = str;\r\n if (this.u_obj['Picture'] == null) {\r\n this.u_obj['Picture'] = this.foto64;\r\n }\r\n this.imageSrc = str;\r\n this.default = null;\r\n };\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n console.log(fields)\r\n mygroup = new FormGroup({\r\n 'NumberIdentification': new FormControl(fields.NumberIdentification, [Validators.required]),\r\n 'Name': new FormControl(fields.Name, [Validators.required]),\r\n 'Email': new FormControl(fields.Email, [Validators.required]),\r\n 'telephone': new FormControl(fields.telephone, [Validators.required]),\r\n 'address': new FormControl(fields.address, [Validators.required]),\r\n 'nationalityID': new FormControl(fields.nationalityID, [Validators.required]),\r\n 'position': new FormControl(fields.position, [Validators.required]),\r\n 'TypeIdentificationID': new FormControl(fields.TypeIdentificationID, [Validators.required])\r\n });\r\n\r\n return mygroup.valid;\r\n}\r\n\r\n openUpdateModal(content:any, obj:any){\r\n console.log(obj);\r\n\r\n this.tipo_documento_edit = this.type_document.find(type => type.ID === obj.TypeIdentificationID)?.value;\r\n this.isUpdating = false;\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n this.imageSrc = null;\r\n if (this.u_obj['Picture'] == null) {\r\n this.default = '../../../assets/images/users/1.jpg';\r\n }\r\n this.u_obj['Birth_date'] = obj.Birth_date.split('T')[0];\r\n this.curr_parameter= [];\r\n this.curr_parameterl=[];\r\n this.curr_parameter2=[];\r\n this.u_obj._JobTypeEmployee.forEach(element => {\r\n this.curr_parameter.push(\r\n element.JobTypeID\r\n )\r\n });\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n this.foto64=obj.Picture;\r\n\r\n }\r\n\r\n public async updateItem(content:any, form:any){\r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n var to:any;\r\n\r\n if( (form.Name == undefined) || (form.Name == '') ){\r\n Swal.fire(this.translations.msg_all_required, 'msg', 'warning');\r\n return;\r\n }\r\n to = {};\r\n to = form;\r\n to.Picture = this.foto64;\r\n to.LastModifierUserID = this.userinfo['logon'];\r\n to.CompanyID = this.userinfo['selectedCompanyId'];\r\n to.Status=\"A\";\r\n await this.srv.postCall(qst, to).subscribe(async x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n await this.CreateUserAndSenmail(x.val, content);\r\n this.curr_parameter = [];\r\n this.confirmDialogWithModal(x.msg,'','success', content);\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n }\r\n\r\n toggleEditable(event, id){\r\n if ( event.target.checked ) {\r\n this.Activar(id,1);\r\n }else {\r\n this.Activar(id,2);\r\n }\r\n }\r\n\r\n Activar(obj: any, valor:any){\r\n var to:any = {};\r\n to.EmployeeId = obj;\r\n to.Status=valor;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n Swal.close();\r\n if(x.success){\r\n this.confirmDialog(x.msg,'','success');\r\n }\r\n else{\r\n this.confirmDialog(x.msg,'','error');\r\n }\r\n }, err => {\r\n this.messageDialog(err,'','error');\r\n });\r\n }\r\n\r\n public addJob() {\r\n this.c_obj.EmployeeByJob = [];\r\n this.curr_parameter.forEach(element => {\r\n this.tipotrabajo.forEach(trabajo => {\r\n if (element == trabajo.JobTypeID) {\r\n this.c_obj.EmployeeByJob.push({\r\n JobTypeID: trabajo['JobTypeID'],\r\n EmployeeId: this.c_obj['EmployeeId'],\r\n FullName: trabajo['Name']\r\n })\r\n }\r\n });\r\n });\r\n }\r\n\r\n\r\n public addJobUpdate() {\r\n this.u_obj.EmployeeByJob = [];\r\n this.curr_parameter.forEach(element => {\r\n this.tipotrabajo.forEach(trabajo => {\r\n if (element == trabajo.JobTypeID) {\r\n this.u_obj.EmployeeByJob.push({\r\n JobTypeID: trabajo['JobTypeID'],\r\n EmployeeId: this.u_obj['EmployeeId'],\r\n FullName: trabajo['Name']\r\n })\r\n }\r\n });\r\n });\r\n }\r\n\r\n\r\n searchEmployee() {\r\n this.srv.getCall(API_EXIST_EMPLOYEE + this.c_obj['NumberIdentification']).subscribe(x => {\r\n if (x.success ) {debugger;\r\n if (x.val != null) {\r\n this.newobj = x.val;\r\n this.messageDialog(x.msg, '' ,'success');\r\n this._success.next(`${this.newobj.NumberIdentification} - Ya esta registrado en ${this.newobj.CompanyName}.`);\r\n this.c_obj['NumberIdentification'] = null;\r\n }\r\n }\r\n }, error => {\r\n this.messageDialog(error, '' ,'error');\r\n });\r\n }\r\n\r\n public async createItem(content:any, obj:any){\r\n console.log(obj);\r\n const LONG = obj.NumberIdentification.length;\r\n const TIPO_CEDULA = 208 // ID DEL TIPO DE DOCUMENTO CÉDULA EN SYSTEMPARAMETER\r\n const ID_IS_NUMBER = !isNaN(obj.NumberIdentification) && obj.NumberIdentification.trim() !== '';\r\n console.log(ID_IS_NUMBER)\r\n console.log(TIPO_CEDULA)\r\n console.log(LONG)\r\n if(((LONG > 10) || !ID_IS_NUMBER) && (obj.TypeIdentificationID == TIPO_CEDULA)){\r\n Swal.fire('Está ingresando una cédula inválida', '', 'error');\r\n return;\r\n }\r\n\r\n var validated = true;\r\n validated = this.validateCreateInfo(obj);\r\n if( !validated ){\r\n Swal.fire(this.translations.msg_all_required, '', 'error');\r\n return;\r\n }\r\n //TODO: eliminar el uso del campo nationality progresivamente,\r\n //se hace de esta forma para salir más rápido\r\n obj.nationality = this.type_nacionality.find(type => type.ID === obj.nationalityID).value;\r\n\r\n obj.Picture = this.foto64;\r\n obj.CompanyID = this.userinfo.selectedCompanyId;\r\n obj.CreatorUser = this.userinfo['logon'];\r\n obj.Status = \"A\";\r\n obj.TypeEmployeeID = 100;\r\n var qst = this.create_url;\r\n\r\n console.log(obj);\r\n // return;\r\n this.isCreating = true;\r\n // validar longitu de cedula\r\n if ((LONG < 10) && obj.TypeIdentificationID == TIPO_CEDULA) {\r\n const result = await Swal.fire({\r\n title: `Está ingresando la cédula\\n${obj.NumberIdentification} que contiene ${LONG} dígitos,\\n¿desea continuar?`,\r\n showConfirmButton: true,\r\n showCancelButton: true,\r\n cancelButtonText: 'No',\r\n confirmButtonText: 'Si',\r\n });\r\n\r\n if (result.dismiss === Swal.DismissReason.cancel) {\r\n this.isCreating = false;\r\n return;\r\n }\r\n }\r\n\r\n console.log(obj)\r\n await this.srv.postCall(qst, obj).toPromise().then(async x => {\r\n if(x.success){\r\n await this.CreateUserAndSenmail(x.val, content);\r\n this.isCreating = false;\r\n }\r\n else{\r\n this.isCreating = false;\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n generapass(numero:any,names:any){\r\n if (numero!=\"\" && numero!=null) {\r\n this.passuno = names.substr(0, 3);\r\n this.passdos = numero.substr(4, 6);\r\n this.passnew = this.passuno.concat(this.passdos);\r\n this.conversionEncryptOutput = this.passnew;\r\n }\r\n }\r\n\r\n async CreateUserAndSenmail(obj:any, content)\r\n {\r\n var qst=\"Employee/CreateUser\";\r\n this.generapass(obj.NumberIdentification,obj.Name);\r\n var to = obj;\r\n to.address=this.conversionEncryptOutput;\r\n to.position=this.passnew;\r\n if (this.conversionEncryptOutput==\"\")\r\n {\r\n this.resultado=\"error\";\r\n return;\r\n }\r\n await this.srv.postCall(qst, to).toPromise().then(x => {\r\n this.isCreating = false;\r\n if (x.success) {\r\n this.confirmDialogWithModal(this.translations.msg_create, x.msg, 'success', content);\r\n this.imageSrc = \"\";\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public delParameter(obj:any, position:number)\r\n {\r\n obj['EmployeeByJob'].splice(position, 1);\r\n }\r\n public delParameter2(obj:any, position:number)\r\n {\r\n obj['EmployeeByPlanta'].splice(position, 1);\r\n }\r\n\r\n onlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'identity_document' | translate}}\r\n \r\n {{'name' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{i + 1}}{{row.NumberIdentification}}{{row.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

{{'create_item' | translate}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"your\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{p.value}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{ successMessage }}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n {{p.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 \r\n \r\n {{p.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

{{'edit_item' | translate}}: {{u_obj['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 \"your\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{p.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","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport { environment } from 'src/environments/environment';\r\nimport { blobToB64 } from '../approvedocumentsbase/approvedocumentsbase.component';\r\n\r\nconst API_CONSDOCUMENEMP = environment.Global.API_CONSPARAMDOCUMENT_EMPLOYEE;\r\nconst API_GET_FILE_EMPLOYEE_ID = environment.Global.API_GET_FILE_EMPLOYEE_ID;\r\nconst API_FILE_EMPLOYEE = environment.Global.API_FILE_EMPLOYEE;\r\nconst API_UPDATE_DATA_EMPLOYEE = environment.Global.API_UPDATE_DATA_EMPLOYEE;\r\nconst API_GET_DOCUMENT_BY_EMPLOYEE_ID = environment.Global.API_GET_DOCUMENT_BY_EMPLOYEE_ID;\r\nconst API_EMPLOYEE_DOCUMENT_UPDATE_STATUS = environment.Global.API_EMPLOYEE_DOCUMENT_UPDATE_STATUS;\r\nconst API_DELETE_DOCUMET = environment.Global.API_EMPLOYEE_DOCUMENT_DELETE;\r\n\r\n@Component({\r\n selector: 'app-regemployeedoc',\r\n templateUrl: './regemployeedoc.component.html',\r\n styleUrls: ['./regemployeedoc.component.css']\r\n})\r\nexport class RegemployeedocComponent extends BaseCrudComponent {\r\n id:any;\r\n userinfo:any;\r\n date_doc:any;\r\n archivos:any;\r\n namefile:any;\r\n mensaje=\"\";\r\n size_max= 3145728;//3mb\r\n cargavacia=false;\r\n cargados=false;\r\n\r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row2: any = [];\r\n\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n this.delete_url_details = API_DELETE_DOCUMET;\r\n this.read_url = API_CONSDOCUMENEMP;\r\n this.date_doc =new Date();\r\n this.search_fields = ['DocumentName'];\r\n this.c_obj['EmployeeDocument'] = [];\r\n\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList();\r\n\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n var to:any;\r\n to = {};\r\n to._IdComp = this.id;\r\n if (this.userinfo.ProfileID == 2) {\r\n to._Id = 27; // trabajador\r\n } else if (this.userinfo.ProfileID == 21) {\r\n to._Id = 98 // conductor\r\n }\r\n this.messageShowLoading();\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n // this.messageDialog(x.msg, '' , 'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' , 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n this.GetDocumentUpload();\r\n }\r\n\r\n handleInputChange(e, buttonId:any) {\r\n debugger\r\n let buttonSubmit=document.getElementById(\"submit\"+buttonId);\r\n this.archivos = [];\r\n const fileInput = e.target;\r\n const file = e.dataTransfer ? e.dataTransfer.files[0] : e.target.files[0];\r\n\r\n if (!file) {\r\n this.messageDialog('No se ha seleccionado ningún archivo.', '', 'error');\r\n return;\r\n }\r\n\r\n const allowedExtensions = ['application/pdf', 'image/jpeg', 'image/jpg', 'image/png'];\r\n const extension = file.type;\r\n\r\n if (allowedExtensions.includes(extension)) {\r\n this.archivos.push(file);\r\n this.namefile = file.name;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n fileInput.value = '';\r\n return;\r\n }\r\n buttonSubmit.click();\r\n }\r\n async onExpSubmit(row:any) {\r\n if (this.archivos.length==0)\r\n {\r\n Swal.fire(this.translations.document, this.translations.document_error_minqty, 'error');\r\n return;\r\n }\r\n var size_document=this.archivos[0].size;\r\n if (size_document > this.size_max){\r\n Swal.fire(this.translations.document, this.translations.pdi_img_toobig, 'error');\r\n this.archivos=[];\r\n return;\r\n }\r\n if (row.date_doc == undefined || row.date_doc_end == undefined ) {\r\n Swal.fire(this.translations.msg_all_required, '' , 'error');\r\n return;\r\n }\r\n let formData = new FormData();\r\n formData.append('FileUpload', this.archivos[0]);\r\n formData.append('EmployeeID', this.id);\r\n formData.append('ParamDocumentID', row.ParamDocumentID);\r\n await this.srv.AddFiles(API_FILE_EMPLOYEE, formData ).subscribe(async result => {\r\n if (result.STATUS) {\r\n Swal.fire({\r\n title: result.MENSAJE,\r\n text: '',\r\n icon: 'success',\r\n showCancelButton: false,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'OK',\r\n allowOutsideClick: false\r\n }).then((result) => {\r\n if (result.value) {\r\n this.uploadDataBase(row);\r\n }\r\n })\r\n }\r\n else{\r\n Swal.fire( result.MENSAJE, '', 'error');\r\n this.archivos=[];\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n public async uploadDataBase(row:any){\r\n var par_url = API_UPDATE_DATA_EMPLOYEE;\r\n var to:any = {};\r\n to.ParamDocumentID=row.ParamDocumentID;\r\n to.EmployeeId=this.id;\r\n to.LastModifierUser=this.userinfo.logon;\r\n to.CreatorUser=this.userinfo.logon;\r\n to.FileName=this.namefile;\r\n to.DateDocument=row.date_doc;\r\n to.ExpirationTime = row.date_doc_end;\r\n this.loadingList = true;\r\n await this.srv.postCall(par_url, to).toPromise().then(x => {\r\n if (x.success) {\r\n Swal.fire({\r\n title: x.msg,\r\n text: '',\r\n icon: 'success',\r\n showCancelButton: false,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'OK',\r\n allowOutsideClick: false\r\n }).then((result) => {\r\n if (result.value) {\r\n this.archivos=[];\r\n this.getList();\r\n this.loadingList = false;\r\n }\r\n })\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public GetDocumentUpload()\r\n {\r\n var par_url = API_GET_DOCUMENT_BY_EMPLOYEE_ID + this.id;\r\n this.srv.getCall(par_url).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null && x.val.length > 0){\r\n var rs = x.val;\r\n this.rowdocumentupload = rs;\r\n let flag = false;\r\n this.rowdocumentupload.forEach(element => {\r\n if ( element.status_doc == \"A\" || element.status_doc == \"R\" ) {\r\n flag = true;\r\n }\r\n });\r\n if (flag) {\r\n this.cargados = true;\r\n } else {\r\n this.cargados = false;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'success');\r\n this.rowdocumentupload = [];\r\n this.cargados=false;\r\n this.mensaje=\"\";\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n openViewModal(modal, object){\r\n const DocFileName = object.ParamDocumentID;\r\n this.row2 = object;\r\n\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_EMPLOYEE_ID, this.id, DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n });\r\n }\r\n\r\n downloadDocFile(data) {\r\n const DocFileName = data.ParamDocumentID;\r\n const name = data.FileName;\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_EMPLOYEE_ID, this.id ,DocFileName).subscribe((data) => {\r\n importedSaveAs(data,name )\r\n });\r\n }\r\n\r\n public UpdateStatus()\r\n {\r\n var to:any;\r\n to={};\r\n to.EmployeeId=this.id;\r\n to.Status=\"P\";\r\n to.StatusId=38;\r\n to.FileName=this.userinfo['name'];\r\n this.isUpdating = true;\r\n let trans = this.translations;\r\n Swal.fire({\r\n title: trans.sampapp_refmethodswarn,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.ok,\r\n allowOutsideClick: false,\r\n preConfirm: () => {\r\n this.saveVerificationAPI(to);\r\n }\r\n }).then((result) => {\r\n });\r\n }\r\n\r\n saveVerificationAPI(to:any){\r\n var par_url = API_EMPLOYEE_DOCUMENT_UPDATE_STATUS;\r\n this.srv.postCall(par_url, to).subscribe(x => {\r\n if (x.success) {\r\n this.confirmDialog(x.msg, '' , 'success');\r\n }\r\n else{\r\n this.confirmDialog(x.msg, '' , 'error');\r\n }\r\n this.isUpdating = false;\r\n });\r\n }\r\n public deleteFile(position, modal, docName, CompDocumentId) {\r\n //this.position = position\r\n //this.docName = docName\r\n //this.CompDocumentId = CompDocumentId\r\n //this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n\r\n let trans = this.translations;\r\n Swal.fire({\r\n title: '¿Está seguro que desea eliminar el archivo ' + docName + ' ?',\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.ok,\r\n allowOutsideClick: false,\r\n preConfirm: () => {\r\n this.confirmDeleteFile(CompDocumentId);\r\n //this.srv.postCall(API_EMPLOYEE_DOCUMENT_UPDATE_STATUS, position);\r\n }\r\n }).then((result) => {\r\n });\r\n }\r\n confirmDeleteFile(CompDocumentId) {\r\n var qst = this.delete_url_details;\r\n var to: any;\r\n\r\n to = {};\r\n to.EmployeeDocumentId = CompDocumentId;\r\n to.DeleteUser = this.userinfo.logon;\r\n\r\n this.isUpdating = true;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n this.getList();\r\n }\r\n else {\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'menu_title_man_documento' | translate}}\r\n {{'desc' | translate}} \r\n {{'Obligatorio' | translate}}\r\n {{ \"emition_date\" | translate }}{{ \"caducity_date\" | translate }}{{'carga' | translate}}{{'action' | translate}}
{{row.DocumentName}}\r\n
\r\n {{row.DocumentDescription}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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_upload\" | translate }}{{ \"name_archive\" | translate }}{{ \"emition_date\" | translate }}{{ \"expiration_date\" | translate }}{{ \"status\" | translate }}{{ \"comment\" | translate }}{{ \"action\" | translate }}
\r\n
\r\n {{ row1.NameDoc }}\r\n
\r\n
\r\n
\r\n {{ row1.FileName }}\r\n
\r\n
\r\n
\r\n {{ row1.DateDocument | date: \"y-MM-dd\" }}\r\n
\r\n
\r\n
\r\n {{ row1.ExpirationTime | date: \"y-MM-dd\" }}\r\n
\r\n
{{ row1.status_name }}\r\n
\r\n {{ (row1.VerificateComment == null || row1.VerificateComment == \"\") ? \"Sin novedad\" : row1.VerificateComment }}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n \r\n
\r\n

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

\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
{{ \"textDeleteDoc\" | translate }} {{ this.docName }} ?
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \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, ActivatedRoute } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Storage } from '@ionic/storage';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { environment } from 'src/environments/environment.prod';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport Swal from 'sweetalert2';\r\nimport { blobToB64 } from '../approvedocumentsbase/approvedocumentsbase.component';\r\n\r\nconst API_CONSUDOC_VEHICLE = environment.Global.API_CONSUDOC_VEHICLE;\r\nconst API_CONSPARAMDOCUMENT_VEHICLE = environment.Global.API_CONSPARAMDOCUMENT_VEHICLE;\r\nconst API_FILE_VEHICLE = environment.Global.API_FILE_VEHICLE;\r\nconst API_VEHICLE_UPDATE = environment.Global.API_VEHICLE_UPDATE;\r\nconst API_VEHICLE_UPDATE_STATUS = environment.Global.API_VEHICLE_UPDATE_STATUS;\r\nconst API_GET_DOCUMENT_BY_VEHICLE_ID = environment.Global.API_GET_DOCUMENT_BY_VEHICLE_ID;\r\nconst API_GET_FILE_VEHICLE_ID = environment.Global.API_GET_FILE_VEHICLE_ID;\r\n\r\n@Component({\r\n selector: 'app-regvehicluedocu',\r\n templateUrl: './regvehicluedocu.component.html',\r\n styleUrls: ['./regvehicluedocu.component.css']\r\n})\r\nexport class RegvehicluedocuComponent extends BaseCrudComponent {\r\n id:any;\r\n seleccionados=[];\r\n namefile:any;\r\n cargados=false;\r\n archivos=[];\r\n mensaje=\"\";\r\n size_max= 3145728;//3mb\r\n cargavacia=false;\r\n date_doc:any;\r\n userinfo;\r\n\r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row2: any = [];\r\n\r\n constructor( srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n this.read_url = API_CONSUDOC_VEHICLE;\r\n this.date_doc =new Date();\r\n this.search_fields = ['DocumentName'];\r\n }\r\n\r\n async ngOnInit() {\r\n this.rowdocumentupload = [];\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList();\r\n }\r\n\r\n public getList(){\r\n var qst = API_CONSPARAMDOCUMENT_VEHICLE;\r\n this.loadingList = true;\r\n let to: any = {};\r\n to._IdComp = this.id;\r\n to._Id = 99;\r\n this.messageShowLoading();\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.rawdata = rs;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n // console.log(rs)\r\n // this.messageDialog(x.msg, '','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '','warning');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '','error');\r\n this.closeLoadingMessage();\r\n return;\r\n }\r\n });\r\n this.GetDocumentUpload();\r\n }\r\n\r\n handleInputChange(e) {\r\n this.archivos = [];\r\n const fileInput = e.target;\r\n const file = e.dataTransfer ? e.dataTransfer.files[0] : e.target.files[0];\r\n \r\n if (!file) {\r\n this.messageDialog('No se ha seleccionado ningún archivo.', '', 'error');\r\n return;\r\n }\r\n \r\n const allowedExtensions = ['application/pdf', 'image/jpeg', 'image/jpg', 'image/png'];\r\n const extension = file.type;\r\n \r\n if (allowedExtensions.includes(extension)) {\r\n this.archivos.push(file);\r\n this.namefile = file.name;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n fileInput.value = ''; \r\n return;\r\n }\r\n }\r\n\r\n public GetDocumentUpload()\r\n {\r\n var par_url = API_GET_DOCUMENT_BY_VEHICLE_ID + this.id;\r\n this.loadingList = true;\r\n this.srv.getCall(par_url).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null && x.val.length > 0){\r\n var rs = x.val;\r\n this.rowdocumentupload = rs;\r\n let flag = false;\r\n this.rowdocumentupload.forEach(element => {\r\n if ( element.status_doc == \"A\" || element.status_doc == \"R\" ) {\r\n flag = true;\r\n }\r\n });\r\n if (flag) {\r\n this.cargados = true;\r\n } else {\r\n this.cargados = false;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'success');\r\n this.rowdocumentupload = [];\r\n this.cargados=false;\r\n this.mensaje=\"\";\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n async onExpSubmit(row:any) {\r\n if (this.archivos.length==0)\r\n {\r\n Swal.fire(this.translations.document, this.translations.document_error_minqty, 'error');\r\n return;\r\n }\r\n var size_document=this.archivos[0].size;\r\n if (size_document > this.size_max){\r\n Swal.fire(this.translations.document, this.translations.pdi_img_toobig, 'error');\r\n this.archivos=[];\r\n return;\r\n } \r\n if (row.date_doc == undefined || row.date_doc_end == undefined ) {\r\n Swal.fire(this.translations.msg_all_required, '' , 'error');\r\n return;\r\n }\r\n let formData = new FormData();\r\n formData.append('FileUpload', this.archivos[0]);\r\n formData.append('VehicleID', this.id);\r\n formData.append('ParamDocumentID', row.ParamDocumentID);\r\n await this.srv.AddFiles(API_FILE_VEHICLE, formData ).subscribe(async result => {\r\n if (result.STATUS) {\r\n Swal.fire({\r\n title: result.MENSAJE,\r\n text: '',\r\n icon: 'success',\r\n showCancelButton: false,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'OK',\r\n allowOutsideClick: false\r\n }).then((result) => {\r\n if (result.value) {\r\n this.uploadDataBase(row);\r\n }\r\n })\r\n }\r\n else{\r\n Swal.fire( result.MENSAJE, '', 'error');\r\n this.archivos=[];\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n public async uploadDataBase(row:any){\r\n var par_url = API_VEHICLE_UPDATE;\r\n var to:any;\r\n to={};\r\n to.ParamDocumentID=row.ParamDocumentID;\r\n to.VehicleID=this.id;\r\n to.LastModifierUser=this.userinfo.logon;\r\n to.CreatorUser=this.userinfo.logon;\r\n to.FileName=this.namefile;\r\n to.DateDocument=row.date_doc;\r\n to.ExpirationTime = row.date_doc_end;\r\n this.loadingList = true;\r\n await this.srv.postCall(par_url, to).toPromise().then(x => {\r\n if (x.success) {\r\n Swal.fire({\r\n title: x.msg,\r\n text: '',\r\n icon: 'success',\r\n showCancelButton: false,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'OK',\r\n allowOutsideClick: false\r\n }).then((result) => {\r\n if (result.value) {\r\n this.archivos=[]; \r\n this.getList();\r\n this.loadingList = false;\r\n }\r\n })\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n openViewModal(modal, object){\r\n const DocFileName = object.ParamDocumentID;\r\n this.row2 = object;\r\n \r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_VEHICLE_ID, this.id, DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n });\r\n }\r\n\r\n downloadDocFile(data) {\r\n const DocFileName = data.ParamDocumentID;\r\n const name = data.FileName;\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_VEHICLE_ID, this.id ,DocFileName).subscribe((data) => {\r\n importedSaveAs(data,name )\r\n });\r\n }\r\n\r\n public UpdateStatus()\r\n {\r\n \r\n this.isUpdating = true;\r\n var to:any;\r\n to={};\r\n to.VehicleID=this.id;\r\n to.Status=\"P\";\r\n to.StatusId=38;\r\n to.FileName=this.userinfo['name'];\r\n let trans = this.translations;\r\n Swal.fire({\r\n title: trans.sampapp_refmethodswarn,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: trans.cancel,\r\n confirmButtonText: trans.ok,\r\n allowOutsideClick: false,\r\n preConfirm: () => {\r\n this.saveVerificationAPI(to);\r\n }\r\n }).then((result) => {\r\n });\r\n }\r\n\r\n saveVerificationAPI(to:any){\r\n var par_url = API_VEHICLE_UPDATE_STATUS;\r\n this.srv.postCall(par_url, to).subscribe(x => {\r\n if (x.success) {\r\n this.confirmDialog(x.msg, '' , 'success');\r\n }\r\n else{\r\n this.confirmDialog(x.msg, '' , 'error');\r\n }\r\n this.isUpdating = 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 {{'menu_title_man_documento' | translate}}\r\n {{'desc' | translate}} \r\n {{'Obligatorio' | translate}}\r\n {{ \"emition_date\" | translate }}{{ \"caducity_date\" | translate }}{{'carga' | translate}}{{'action' | translate}}
\r\n
\r\n {{ row.DocumentName }}\r\n
\r\n
\r\n
\r\n {{ row.DocumentDescription }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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_upload\" | translate }}{{ \"name_archive\" | translate }}{{ \"emition_date\" | translate }}{{ \"expiration_date\" | translate }}{{ \"status\" | translate }}{{ \"comment\" | translate }}{{ \"action\" | translate }}
\r\n
\r\n {{ row1.NameDoc }}\r\n
\r\n
\r\n
\r\n {{ row1.FileName }}\r\n
\r\n
\r\n
\r\n {{ row1.DateDocument | date: \"y-MM-dd\" }}\r\n
\r\n
\r\n
\r\n {{ row1.ExpirationTime | date: \"y-MM-dd\" }}\r\n
\r\n
{{ row1.status_name }}\r\n
\r\n {{ (row1.VerificateComment == null || row1.VerificateComment == \"\") ? \"Sin novedad\" : row1.VerificateComment }}\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

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \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 { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { Storage } from '@ionic/storage';\r\nimport { LoginService } from 'src/app/services/authentication/login.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-actionplan',\r\n templateUrl: './actionplan.component.html',\r\n styleUrls: ['./actionplan.component.css']\r\n})\r\nexport class ActionplanComponent implements OnInit {\r\n translations:any;\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n items:any;\r\n permissions = [];\r\n userinfo = [];\r\n isSkretting = false;\r\n object;\r\n constructor(\r\n public _router: Router,\r\n public translate: TranslateService,\r\n public auth: LoginService,\r\n private storage: Storage,\r\n private route: ActivatedRoute,\r\n private srv: ApiService,) { }\r\n\r\n ngOnInit() {\r\n this.items = [\r\n {title: 'audit_5s', url: '/actnosecure', icon: 'mdi mdi-format-list-bulleted'},\r\n {title: 'audit_hse', url: '/hse', icon: 'mdi mdi-adjust'},\r\n {title: 'actionPlan', url: '/plan', icon: 'mdi mdi-adjust'},\r\n {title: 'schedule', url: '/oportunitymejor', icon: 'mdi mdi-adjust'},\r\n {title: 'autoEval', url: '/oportunitymejor', icon: 'mdi mdi-adjust'},\r\n ];\r\n \r\n this.auth.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n\r\n \r\n \r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n }\r\n hasPermission(str:string){\r\n if( this.permissions.indexOf(str) > -1 ){\r\n return true;\r\n }\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
{{ row.title | translate }}
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-fives',\r\n templateUrl: './fives.component.html',\r\n styleUrls: ['./fives.component.css']\r\n})\r\nexport class FivesComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","

fives works!

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { BaseCrudComponent } from 'src/app/ic2/base-crud/base-crud.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { Storage } from '@ionic/storage';\r\nimport { environment } from 'src/environments/environment';\r\nimport { GlobalService } from 'src/app/services/main/global.service';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\n@Component({\r\n selector: 'app-hse',\r\n templateUrl: './hse.component.html',\r\n styleUrls: ['./hse.component.css']\r\n})\r\nexport class HseComponent extends BaseCrudComponent implements OnInit {\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private globalService: GlobalService,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n\r\n }\r\n\r\n\r\n\r\n openCreateModal(content) {\r\n this.modalService.open(content, { backdrop: 'static', keyboard : false, size: 'lg' });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{'create_item' | translate}}

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

{{'HSE'}}

\r\n
\r\n

{{'header' | translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \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 { BaseCrudComponent } from 'src/app/ic2/base-crud/base-crud.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { Storage } from '@ionic/storage';\r\nimport { environment } from 'src/environments/environment';\r\nimport { GlobalService } from 'src/app/services/main/global.service';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nconst GET_ALL_SITES_ACTIVE = environment.Global.API_GET_ALL_SITES_ACTIVE;\r\nconst GET_ALL_AREA_BY_ID = environment.Global.API_GET_ALL_AREA_BY_ID;\r\nconst API_CREATE_PLANACTION = environment.Global.API_CREATE_PLANACTION;\r\nconst API_UPDATE_PLANACTION= environment.Global.API_UPDATE_PLANACTION;\r\nconst API_ALL_PLANACTION = environment.Global.API_ALL_PLANACTION;\r\nconst API_ID_PLANACTION = environment.Global.API_ID_PLANACTION;\r\nconst API_UPDATESTATUS_PLANACTION = environment.Global.API_UPDATESTATUS_PLANACTION;\r\nconst API_GET_PLANACTION_BY_USER = environment.Global.API_GET_PLANACTION_BY_USER;\r\n\r\nconst API_GET_UNSAFEACTBYID = environment.Global.API_GET_UNSAFEACTBYID;\r\nconst API_ID_BETTER = environment.Global.API_ID_BETTER;\r\nconst API_ID_UNSAFECONDITION = environment.Global.API_ID_UNSAFECONDITION;\r\n\r\n\r\nconst API_UPDATE_UNSAFEACT_STATUS = environment.Global.API_UPDATE_UNSAFEACT_STATUS;\r\nconst API_UPDATESTATUS_UNSAFECONDITION= environment.Global.API_UPDATESTATUS_UNSAFECONDITION;\r\nconst API_UPDATESTATUS_BETTER = environment.Global.API_UPDATESTATUS_BETTER;\r\n@Component({\r\n selector: 'app-plan',\r\n templateUrl: './plan.component.html',\r\n styleUrls: ['./plan.component.css']\r\n})\r\nexport class PlanComponent extends BaseCrudComponent implements OnInit {\r\n userinfo: any;\r\n modalCreate = false;\r\n row_plantas_area = [];\r\n row_plantas = [];\r\n id = null;\r\n typeForm;\r\n typePlan = null;\r\n typePlanEsp = null;\r\n inspectionObject = null;\r\n listaAcciones = [];\r\n pageTotal2 = 0;\r\n page2 = 0;\r\n flag = true;\r\n flagprog = true;\r\n close_object : any;\r\n contador = 0;\r\n cantidadFotos = 0;\r\n isClosing = false;\r\n existInspection = false;\r\n evidenceForActionImage: any;\r\n habilitarAct = true;\r\n creoPlan = false;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private globalService: GlobalService,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n \r\n // this.getTypeFouls();\r\n this.search_fields = ['ActionPlanId','PlantaName'];\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n this.getList();\r\n });\r\n this.pageSize2 = 3;\r\n this.page2 = 1;\r\n this.GetPlantas();\r\n this.route.queryParams.subscribe(params => {\r\n this.id = params['id'];\r\n this.typeForm = params['type'];\r\n });\r\n \r\n this.getInformationByType();\r\n }\r\n\r\n public getList() {\r\n this.loadingList = true;\r\n this.srv.getCall(API_GET_PLANACTION_BY_USER + this.userinfo['logon']).subscribe(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n this.rows = this.rawdata;\r\n // console.log(this.rows)\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n if(this.flag) {\r\n Swal.close()\r\n }\r\n this.rows.forEach(element => {\r\n if (element.InspectionID == this.id) {\r\n this.existInspection = true;\r\n if(!this.creoPlan) {\r\n Swal.fire(this.translations.msg_have_plan, this.translations.msg_dont_create_plan, 'info');\r\n }\r\n }\r\n });\r\n \r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public deletePlan(row) {\r\n this.ActivarItem(row.ActionPlanId,3);\r\n }\r\n\r\n public ActivarItem(id:any, accion:any): void\r\n {\r\n var to:any;\r\n to = {};\r\n to.ActionPlanId = id;\r\n to.Status = accion;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n // console.log(to)\r\n this.srv.postCall(API_UPDATESTATUS_PLANACTION, to).subscribe(x => {\r\n Swal.close();\r\n if(x.success){\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.flag = false;\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.modalCreate = true;\r\n this.c_obj = {};\r\n // this.modalCreate = true;\r\n // console.log(this.inspectionObject)\r\n this.c_obj['level'] = this.inspectionObject['PlantaName'];\r\n this.c_obj['levelcode'] = this.inspectionObject['PlantaID'];\r\n this.c_obj['areacode'] = this.inspectionObject['SeccionID'];\r\n this.c_obj['area'] = this.inspectionObject['SeccionName'];\r\n this.c_obj['Reportby'] = this.inspectionObject['Reportby'] == undefined ? this.inspectionObject['CreatorUser'] : this.inspectionObject['Reportby'];\r\n this.c_obj['date_ha'] = this.inspectionObject['Date'].split('T')[0];\r\n this.c_obj['justificative'] = this.typePlanEsp ;\r\n this.c_obj['invertion'] = 0;\r\n this.modalService.open(content, { backdrop: 'static', keyboard : false, size: 'lg' });\r\n // this.GetPlantas();\r\n // this.updateStatusForInspections();\r\n if (this.typeForm == 1 || this.typeForm == 2) {\r\n this.c_obj['paramDetailDescription'] = this.inspectionObject['paramDetailDescription'];\r\n } else if (this.typeForm ==3 ){\r\n this.c_obj['Observation'] = this.inspectionObject['Observation'];\r\n }\r\n }\r\n\r\n public getInformationByType() {\r\n // console.log(this.typeForm)\r\n switch (this.typeForm) {\r\n case '1':\r\n this.typePlan = 'menu_act_nosecure';\r\n this.typePlanEsp = 'Acto inseguro';\r\n this.getUnsafeAct();\r\n break;\r\n case '2':\r\n this.typePlan = 'menu_condi_nosecure';\r\n this.typePlanEsp = 'Condición insegura';\r\n this.getUnsafeCondition();\r\n break;\r\n case '3':\r\n this.typePlan = 'menu_oportunity_mejor';\r\n this.typePlanEsp = 'Mejora u Oportunidad';\r\n this.getOportunity();\r\n break;\r\n }\r\n }\r\n\r\n public getUnsafeAct() {\r\n this.srv.getCall(API_GET_UNSAFEACTBYID + this.id).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n this.inspectionObject = x.val[0];\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public getUnsafeCondition() {\r\n this.srv.getCall(API_ID_UNSAFECONDITION + this.id).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n this.inspectionObject = x.val[0];\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public getOportunity() {\r\n this.srv.getCall(API_ID_BETTER + this.id).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n this.inspectionObject = x.val[0];\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public addToTable(object) {\r\n // console.log(this.c_obj)\r\n const indice = this.listaAcciones.length + 1;\r\n let validated = this.validateActionDetail(object);\r\n if( !validated ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n if(this.listaAcciones.length > 0) {\r\n let cont = 0;\r\n this.listaAcciones.forEach(element => {\r\n if(element.Action === object['actionCon']) {\r\n cont = 1;\r\n }\r\n })\r\n if(cont == 0) {\r\n this.listaAcciones.push(\r\n {\r\n Nro: indice,\r\n Action: this.c_obj['actionCon'],\r\n Details: this.c_obj['detailEject'],\r\n Observation: this.c_obj['observation'],\r\n Responsable: this.c_obj['responsable'],\r\n InitDate: this.c_obj['date_planea_init'],\r\n PlanEndDate: this.c_obj['date_planea_end'],\r\n PlanProgDate: null,\r\n PlanProgDate2: null,\r\n EndDate: this.c_obj['date_planea_end']\r\n }\r\n );\r\n } else {\r\n return Swal.fire(this.translations['action_repeated'], '', 'error');\r\n }\r\n } else {\r\n this.listaAcciones.push(\r\n {\r\n Nro: indice,\r\n Action: this.c_obj['actionCon'],\r\n Details: this.c_obj['detailEject'],\r\n Observation: this.c_obj['observation'],\r\n Responsable: this.c_obj['responsable'],\r\n InitDate: this.c_obj['date_planea_init'],\r\n PlanEndDate: this.c_obj['date_planea_end'],\r\n PlanProgDate: null,\r\n PlanProgDate2: null,\r\n EndDate: this.c_obj['date_planea_end']\r\n }\r\n );\r\n }\r\n this.c_obj['actionCon'] = null;\r\n this.c_obj['detailEject'] = null;\r\n // this.c_obj['observation'] = null; La observacion no e borra porque puede ser general\r\n this.c_obj['date_planea_init'] = null;\r\n this.c_obj['date_planea_end'] = null;\r\n this.c_obj['date_fini'] = null;\r\n this.c_obj['responsable'] = null;\r\n\r\n if( Array.isArray(this.listaAcciones) ){\r\n this.pageTotal2 = this.listaAcciones.length;\r\n }\r\n }\r\n\r\n public deleteAction ( numero ) {\r\n this.listaAcciones.splice(numero - 1, 1)\r\n if( Array.isArray(this.listaAcciones) ){\r\n this.pageTotal2 = this.listaAcciones.length;\r\n }\r\n }\r\n\r\n public setEndDate () {\r\n this.c_obj['date_fini'] = this.c_obj['date_planea_end']\r\n }\r\n\r\n public GetPlantas() {\r\n var qst = GET_ALL_SITES_ACTIVE;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.row_plantas = [];\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas = rs;\r\n // console.log(this.row_plantas)\r\n }else {\r\n this.row_plantas = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public searchArea() {\r\n if (this.modalCreate) {\r\n var qst = GET_ALL_AREA_BY_ID + this.c_obj['level'];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n // console.log(this.row_plantas_area)\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n } else {\r\n var qst = GET_ALL_AREA_BY_ID + this.u_obj['level'];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n // console.log(this.row_plantas_area)\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n \r\n }\r\n\r\n\r\n\r\n public validateCreateInfo(fields:any): boolean {\r\n let form:any = {};\r\n form = new FormGroup({\r\n 'level': new FormControl(fields.level, [Validators.required]),\r\n 'area': new FormControl(fields.area, [Validators.required]),\r\n 'date_ha': new FormControl(fields.date_ha, [Validators.required]),\r\n 'justificative': new FormControl(fields.justificative, [Validators.required]),\r\n 'invertion': new FormControl(fields.invertion, [Validators.required]),\r\n // 'result_esp': new FormControl(fields.result_esp, [Validators.required]),\r\n });\r\n return form.valid;\r\n }\r\n\r\n public validateActionDetail(fields:any): boolean {\r\n let form:any = {};\r\n form = new FormGroup({\r\n 'actionCon': new FormControl(fields.actionCon, [Validators.required]),\r\n 'detailEject': new FormControl(fields.detailEject, [Validators.required]),\r\n 'responsable': new FormControl(fields.responsable, [Validators.required]),\r\n // 'invertion': new FormControl(fields.invertion, [Validators.required]),\r\n // 'result_esp': new FormControl(fields.result_esp, [Validators.required]),\r\n 'observation': new FormControl(fields.observation, [Validators.required]),\r\n 'date_planea_init': new FormControl(fields.date_planea_init, [Validators.required]),\r\n 'date_planea_end': new FormControl(fields.date_planea_end, [Validators.required]),\r\n });\r\n return form.valid;\r\n }\r\n\r\n public openUpdateModal (content, object) {\r\n // console.log(object)\r\n this.modalService.open(content, { backdrop: 'static', keyboard : false, size: 'lg' });\r\n this.u_obj['level'] = object['PlantaName'];\r\n this.u_obj['levelcode'] = object['PlantaID'];\r\n this.u_obj['area'] = object['SeccionName'];\r\n this.u_obj['areacode'] = object['SeccionID'];\r\n this.u_obj['Reportby'] = object['CreatorUser'];\r\n this.u_obj['date_ha'] = object['FindingDate'].split('T')[0];\r\n this.u_obj['justificative'] = object['Justification'];\r\n this.u_obj['ActionPlanDetails'] = object['ActionPlanDetails'];\r\n this.u_obj['invertion'] = object['Investment'];\r\n this.u_obj['ActionPlanId'] = object['ActionPlanId'];\r\n this.u_obj['status'] = object['Status'];\r\n this.u_obj['StatusPlan'] = object['StatusPlan'];\r\n\r\n let contadorfechas = 0;\r\n let contadorUpdateDates = this.u_obj['ActionPlanDetails'].length;\r\n this.u_obj['ActionPlanDetails'].forEach(element => {\r\n if (element.PlanProgDate !== null && element.PlanProg2Date !== null) {\r\n contadorfechas ++;\r\n }\r\n });\r\n // console.log(contadorfechas, contadorUpdateDates)\r\n if(contadorfechas == contadorUpdateDates) {\r\n this.habilitarAct = false;\r\n }\r\n\r\n // console.log(this.habilitarAct)\r\n }\r\n\r\n public createItem(modal, object) {\r\n this.isCreating = true;\r\n let validated = this.validateCreateInfo(object);\r\n if( !validated ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n let new_obj = {\r\n PlantaID: object['levelcode'],\r\n SeccionID: object['areacode'],\r\n FindingDate: object['date_ha'],\r\n Justification: object['justificative'],\r\n Investment: object['invertion'],\r\n ActionPlanDetails: this.listaAcciones,\r\n CreatorUser: this.userinfo['logon'],\r\n InspectionID: this.id\r\n }\r\n // console.log(new_obj)\r\n // console.log(this.listaAcciones);\r\n this.srv.postCall(API_CREATE_PLANACTION, new_obj).toPromise().then( (data)=> {\r\n if(data.success){\r\n this.c_obj = {};\r\n this.listaAcciones = [];\r\n this.flag = false;\r\n Swal.fire(this.translations.msg_create,'', 'success');\r\n this.getList();\r\n this.isCreating = false;\r\n this.creoPlan = true;\r\n this.closeModal(modal);\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isCreating = false;\r\n });\r\n\r\n }\r\n\r\n public changeDate(date, ActionPlanDetails) {\r\n ActionPlanDetails.PlanEndDate = date\r\n }\r\n\r\n public updateItem(modal, object) {\r\n this.isUpdating = true;\r\n let new_obj = {\r\n ActionPlanId: object['ActionPlanId'],\r\n ActionPlanDetails: object['ActionPlanDetails'],\r\n LastModifierUser: this.userinfo['logon']\r\n }\r\n this.srv.postCall(API_UPDATE_PLANACTION, new_obj).toPromise().then( (data)=> {\r\n if(data.success){\r\n this.u_obj = {};\r\n this.flag = false;\r\n Swal.fire(this.translations.msg_update,'', 'success');\r\n this.getList();\r\n this.isUpdating = false;\r\n this.closeModal(modal);\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = false;\r\n });\r\n }\r\n public openCloseModal (content, object) {\r\n // console.log(object)\r\n this.cantidadFotos = object.ActionPlanDetails.length;\r\n this.contador = 0;\r\n object.ActionPlanDetails.forEach(element => {\r\n if(element.Evidence !== null) {\r\n this.contador ++;\r\n }\r\n });\r\n console.log(this.contador, this.cantidadFotos)\r\n this.modalService.open(content, { backdrop: 'static', keyboard : false, size: 'lg' });\r\n this.close_object = {};\r\n this.close_object['level'] = object['PlantaName'];\r\n this.close_object['levelcode'] = object['PlantaID'];\r\n this.close_object['area'] = object['SeccionName'];\r\n this.close_object['areacode'] = object['SeccionID'];\r\n this.close_object['Reportby'] = object['CreatorUser'];\r\n this.close_object['date_ha'] = object['FindingDate'].split('T')[0];\r\n this.close_object['justificative'] = object['Justification'];\r\n this.close_object['ActionPlanDetails'] = object['ActionPlanDetails'];\r\n this.close_object['invertion'] = object['Investment'];\r\n this.close_object['ActionPlanId'] = object['ActionPlanId'];\r\n this.close_object['StatusPlan'] = object['StatusPlan'] == 'C'? 'is_closed' : 'is_open';\r\n }\r\n\r\n public insertImg(event, acc) {\r\n const file = event.target.files[0];\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => {\r\n // console.log(reader.result);\r\n acc['Evidence'] = reader.result;\r\n };\r\n // console.log(acc)\r\n }\r\n\r\n public updateCloseModalEvidence(content, object) {\r\n console.log(object)\r\n this.isUpdating = true;\r\n let contador = 0;\r\n this.contador = 0;\r\n object.ActionPlanDetails.forEach(element => {\r\n if(element.Evidence !== null) {\r\n contador ++;\r\n }\r\n });\r\n console.log(contador)\r\n if(contador == 0) {\r\n return Swal.fire(this.translations.should_upload_img,'','error')\r\n }\r\n\r\n let new_obj = {\r\n ActionPlanId: object['ActionPlanId'],\r\n ActionPlanDetails: object['ActionPlanDetails'],\r\n LastModifierUser: this.userinfo['logon']\r\n }\r\n\r\n this.srv.postCall(API_UPDATE_PLANACTION, new_obj).toPromise().then( (data)=> {\r\n if(data.success){\r\n this.u_obj = {};\r\n this.flag = false;\r\n Swal.fire(this.translations.msg_update,'', 'success');\r\n this.getList();\r\n this.isUpdating = false;\r\n this.closeModal(content);\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = false;\r\n });\r\n\r\n }\r\n\r\n public closePlanStatus(content, object) {\r\n this.isClosing = true;\r\n var to:any;\r\n to = {};\r\n to.ActionPlanId = object['ActionPlanId'];\r\n to.Status = '4';\r\n to.LastModifierUser = this.userinfo['logon'];\r\n this.srv.postCall(API_UPDATESTATUS_PLANACTION, to).subscribe(x => {\r\n if(x.success){\r\n this.isClosing = false;\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.updateStatusForInspections ();\r\n this.closeModal(content); \r\n this.flag = false;\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n this.isClosing = false;\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public updateStatusForInspections () {\r\n let url = '';\r\n var to:any;\r\n to = {};\r\n to.Status = '4';\r\n to.LastModifierUser = this.userinfo['logon'];\r\n switch (this.typeForm) {\r\n case '1':\r\n url = API_UPDATE_UNSAFEACT_STATUS;\r\n to.UnsafeActId = this.id;\r\n break;\r\n case '2':\r\n url = API_UPDATESTATUS_UNSAFECONDITION;\r\n to.UnsafeConditionId = this.id;\r\n break;\r\n case '3':\r\n url = API_UPDATESTATUS_BETTER;\r\n to.GetsBetterId = this.id;\r\n break;\r\n }\r\n \r\n this.srv.postCall(url, to).subscribe(x => {\r\n if(x.success){\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public seeEvidence(modal, evidence) {\r\n this.evidenceForActionImage = evidence\r\n this.modalService.open(modal, { backdrop: 'static', keyboard : false, size: 'lg' })\r\n }\r\n\r\n}","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'level' | translate}}{{'cmp_area' | translate}}{{'date_ha' | translate}}{{'justificative' | translate}}{{'N_inspeccion' | translate}}{{'no_actions' | translate}}{{'StatusPlan' | translate}}{{'action' | translate}}
{{row.ActionPlanId}}{{row.PlantaName}}{{row.SeccionName}}{{row.FindingDate.split('T')[0]}}{{row.Justification}}{{row.InspectionID}}{{row.ActionPlanDetails.length}}{{row.StatusPlan == 'A' ? 'Abierto': 'Cerrado'}}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{'create_item' | translate}}

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

{{'actionPlan' | translate}} {{typePlan |translate}}

\r\n
\r\n

{{'header' | translate}}

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

{{'register' | translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \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

{{'preguntadetalle' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Nro{{'action_table' | translate}}{{'preguntadetalle' | translate}}{{'init' | translate}}{{'end' | translate}}{{'action' | translate}}
{{acc.Nro}}{{acc.Action}}{{acc.Details}}{{acc.InitDate}}{{acc.PlanEndDate}}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n

{{'edit_item' | translate}}

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

{{'actionPlan' | translate}} {{typePlan |translate}}

\r\n
\r\n

{{'header' | translate}}

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

{{'actions' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'action' | translate}}{{'observation' | translate}}{{'preguntadetalle' | translate}}{{'responsible' | translate}}{{'init' | translate}}{{'end' | translate}}{{'end_repro' | translate}}{{'end_repro2' | translate}}{{'end_finit' | translate}}
{{acc.ActionPlanDetailsId}}{{acc.Action}}{{acc.Observation}}{{acc.Details}}{{acc.Responsable}}{{acc.InitDate !== null ? acc.InitDate.split('T')[0] : ''}}{{acc.EndDate !== null ? acc.EndDate.split('T')[0] : ''}}{{acc.PlanProgDate.split('T')[0]}}{{acc.PlanProgDate.split('T')[0]}}{{acc.PlanEndDate !== null ? acc.PlanEndDate.split('T')[0] : ''}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n

{{'edit_item' | translate}}

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

{{'actionPlan' | translate}} {{typePlan |translate}}

\r\n {{'status' |translate}} {{this.close_object['StatusPlan'] | translate}}\r\n
\r\n

{{'header' | translate}}

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

{{'actions' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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}}{{'observation' | translate}}{{'preguntadetalle' | translate}}{{'responsable' | translate}}{{'upload_evidence' | translate}}{{'picture' | translate}}
{{acc.Action}}{{acc.Observation}}{{acc.Details}}{{acc.Responsable}}\r\n \r\n

\r\n {{'action_contain_evidence' | translate}}\r\n {{'action_contain_evidence_no' | translate}}\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{'msg_evidence_to_close' | translate}}\r\n {{'msg_status_plan_closed' | translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'evidence' | translate}}

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

{{'evidence' | translate}}

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

schedule works!

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Storage } from '@ionic/storage';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { environment } from 'src/environments/environment';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Swal from 'sweetalert2';\r\n\r\nconst API_GET_ENTRY_REQUEST_EMPLOYEES = environment.Global.API_GET_ENTRY_REQUEST_EMPLOYEES;\r\n\r\n@Component({\r\n selector: 'app-entryemployee',\r\n templateUrl: './entryemployee.component.html',\r\n styleUrls: ['./entryemployee.component.css']\r\n})\r\nexport class EntryemployeeComponent extends BaseCrudComponent implements OnInit {\r\n userinfo: any;\r\n listTools = [];\r\n listCars = [];\r\n havedata = null;\r\n detalleDocumentos = [];\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.pageSize = 5;\r\n this.pageSize2 = 5;\r\n this.search_fields = ['Name','NumberIdentification'];\r\n this.userinfo = [];\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList();\r\n }\r\n\r\n public getList() {\r\n this.loadingList = true;\r\n let url = API_GET_ENTRY_REQUEST_EMPLOYEES;\r\n this.srv.getCall(url).subscribe(x => {\r\n this.loadingList = false;\r\n if (x.success) {\r\n if(x.val != null) {\r\n // console.log(x.val)\r\n this.rawdata = x.val;\r\n this.rows = x.val;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n Swal.close()\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }\r\n })\r\n }\r\n\r\n public seeListTools (row, modal) {\r\n this.listTools = row['_ListsToolsDetails'];\r\n if(this.listTools.length == 0) {\r\n Swal.fire(this.translations.dont_have_tools, '','info');\r\n } else {\r\n this.modalService.open(modal, { backdrop: 'static', keyboard : false, size: 'lg' });\r\n }\r\n }\r\n\r\n public seeDocumentsVehicle (row, modal) {\r\n this.listCars = row['_VehicleByEmployee']; \r\n this.havedata = null;\r\n if(this.listCars.length == 0) {\r\n Swal.fire(this.translations.dont_have_vehicle, '','info');\r\n } else {\r\n this.listCars.forEach( car => {\r\n let cont = 0;\r\n let contador = 0;\r\n if (car._DocumentsVehicle.length > 0) {\r\n car._DocumentsVehicle.forEach(documento => {\r\n if (documento.Obligatorio == true) {\r\n contador ++;\r\n }\r\n if (documento.Status == \"V\" && documento.Obligatorio == true) {\r\n cont ++;\r\n }\r\n })\r\n } else {\r\n cont --;\r\n }\r\n if (contador == cont) {\r\n car.estadoGeneral = \"Aprobado\";\r\n } else {\r\n car.estadoGeneral = \"Rechazado\";\r\n }\r\n });\r\n this.modalService.open(modal, { backdrop: 'static', keyboard : false, size: 'lg' });\r\n }\r\n \r\n }\r\n\r\n public seeDetailDocument(document) {\r\n this.detalleDocumentos = document;\r\n if (this.detalleDocumentos.length > 0) {\r\n this.havedata = true;\r\n } else {\r\n this.havedata = 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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'employee'| translate}}\r\n {{'identification' | translate}}{{'job_to_do' | translate}}{{'date_init' | translate}}{{'date_end' | translate}}{{'emergency' | translate}}{{'status_docs' | translate}}{{'status_eval' | translate}}{{'status_sanct' | translate}}{{'action' | translate}}
{{i + 1}}{{row.Name}}{{row.NumberIdentification}}{{row.WorkDescription}}{{row.startDateRequest.split('T')[0]}}{{row.endDateRequest.split('T')[0]}}{{row.emergency ? ('emergency' | translate ): ('no_emergency' | translate)}}{{row.Status_doc == \"VALIDADO\" ? \"Aprobado\" : \"Rechazado/Pendiente\"}}{{row.Status_evaluation == \"APROBADO\" ? \"Aprobado\" : \"Reprobado/Pendiente\"}}{{row.Status_faltas == \"N\" ? \"Sin faltas\" : \"Con faltas\"}}\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'see_tools' | translate}}

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'description' | translate}}{{'brand_model' | translate}}{{'quantity' | translate}}{{'notice_in' | translate}}{{'notice_out' | translate}}
{{i + 1}}{{row.Description}}{{row.ModelBrand}}{{row.quantity}}{{row.EntryNews}}{{row.DeparturesNews}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{'see_vehicle' | translate}}

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'v_model' | translate}}{{'v_registration' | translate}}{{'v_color' | translate}}{{'status' | translate}}{{'action' | translate}}
{{i + 1}}{{row.Model}}{{row.CarRegistration}}{{row.Color}}{{row.estadoGeneral}}
\r\n
\r\n
\r\n

{{'doc_vehicles' | translate}}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'document' | translate}}{{'description' | translate}}{{'Obligatorio' | translate}}{{'status' | translate}}
{{i + 1}}{{row.document}}{{row.description}}{{row.Obligatorio ? 'Obligatorio' : 'No obligatorio'}}{{row.Status == \"V\" ? \"Aprobado\" : \"Reprobado\"}}
\r\n
\r\n
\r\n

{{'dont_have_document' | translate}}

\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Storage } from '@ionic/storage';\r\nimport Swal from 'sweetalert2';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoginService } from '../../../services/authentication/login.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport { isNumeric } from 'rxjs/internal-compatibility';\r\nimport { PermissionService } from 'src/app/services/authentication/permission.service';\r\n\r\nconst URL_TO_DOWNLOAD_QRCODE = environment.Global.API_DOWNLOAD_QR;\r\n\r\n@Component({\r\n selector: 'app-excelenciahome',\r\n templateUrl: './excelenciahome.component.html',\r\n styleUrls: ['./excelenciahome.component.css']\r\n})\r\nexport class ExcelenciahomeComponent implements OnInit {\r\n\r\n translations:any;\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n items:any = [];\r\n permissions = [];\r\n userinfo = [];\r\n isWorkerExt = false;\r\n\r\n constructor(\r\n public _router: Router,\r\n public translate: TranslateService,\r\n public auth: LoginService,\r\n private storage: Storage,\r\n private srv: ApiService,\r\n public permission: PermissionService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let id = environment.Global.Menus.Excelencia// menu formularios\r\n this.permission.getModulesByMenuId(id).then(x => {\r\n // console.log(x)\r\n x.forEach(element => {\r\n if (element.principal == 1) {\r\n this.items.push(element)\r\n }\r\n });\r\n })\r\n\r\n this.auth.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n\r\n\r\n }\r\n\r\n hasPermission(str:string){\r\n let flag = false;\r\n this.permissions.forEach(permission => {\r\n if(permission.Permission == str) {\r\n flag = true;\r\n }\r\n })\r\n return flag;\r\n }\r\n\r\n // downloadQR () {\r\n // let qst = URL_TO_DOWNLOAD_QRCODE + `${this.userinfo['userCode']}`;\r\n // this.srv.downloadFileQR(qst).subscribe(data => {\r\n // if (data) {\r\n // importedSaveAs(data, 'QR - INGRESO PLANTA DURAGAS');\r\n // }\r\n // }, error => {\r\n // console.log(error.message)\r\n // });\r\n // }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
{{ row.title | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DomSanitizer, SafeResourceUrl, SafeUrl } from '@angular/platform-browser';\r\nimport { environment } from 'src/environments/environment';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport { Cell, Img, PdfMakeWrapper, Table, Txt } from 'pdfmake-wrapper';\r\nimport Swal from 'sweetalert2';\r\nimport * as moment from 'moment-timezone';\r\n\r\nconst API_GET_FILE = environment.Global.API_GET_FILE;\r\nconst API_GET_CERTIFIED = environment.Global.API_GET_CERTIFIED;\r\nconst API_GET_IMAGE_SIGNATURE=environment.Global.API_GET_IMAGE_SIGNATURE;\r\n\r\n@Component({\r\n selector: 'app-myevaluation',\r\n templateUrl: './myevaluation.component.html',\r\n styleUrls: ['./myevaluation.component.css']\r\n})\r\nexport class MyevaluationComponent extends BaseCrudComponent {\r\n urlvideo: SafeUrl;\r\n userinfo:any;\r\n videoPlayer: HTMLVideoElement;\r\n apiLoaded = false;\r\n momentjs: any = moment;\r\n dataCertified = [];\r\n title_certified = \"\";\r\n user_signature_certified = \"\";\r\n user_profile_certified = \"\";\r\n imageSignature=\"\";\r\n constructor(\r\n private _sanitizer: DomSanitizer,\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['EvaluationId','EvaluationName'];\r\n\r\n this.c_obj['Company'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList();\r\n }\r\n\r\n public getList()\r\n {\r\n var qst = \"Request/AllByUser/\"+this.userinfo.userCode;\r\n console.log(qst)\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n console.log(x);\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n console.log(\"rs:\",rs);\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.messageDialog(x.msg, '', 'success');\r\n this.srv.getCall(API_GET_IMAGE_SIGNATURE).toPromise().then(resp => {\r\n this.imageSignature = resp.val[\"PhotoSignature\"]\r\n })\r\n }else {\r\n this.messageDialog(x.msg, '', 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '', 'success');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n openVideo (modal, obj) {\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n }\r\n\r\n GoEvaluation(content:any,obj:any)\r\n {\r\n this.closeModal(content);\r\n this.requestID=obj.RequestId;\r\n this.router.navigateByUrl('myevaluationepecific/'+obj.EvaluationId+\"-\"+obj.RequestId);\r\n\r\n }\r\n\r\n openModalVideo(content: any, obj: any, size?:any) {\r\n console.log(obj)\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n this.urlVideo = this._sanitizer.bypassSecurityTrustResourceUrl(this.u_obj.UrlGeneral);\r\n if( size == undefined ){\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, centered:true });\r\n }\r\n else{\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, centered:true });\r\n }\r\n\r\n }\r\n\r\n downloadDocFile(data) {\r\n const name = data.fileName;\r\n this.srv.downloadFiles(API_GET_FILE + data.EvaluationId ).subscribe((data) => {\r\n importedSaveAs(data,name )\r\n });\r\n }\r\n\r\n async getdataCertified() {\r\n debugger\r\n let qst = API_GET_CERTIFIED;\r\n await this.srv.getCall(qst).toPromise().then(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n var rs = x.val;\r\n this.dataCertified = rs\r\n\r\n rs.forEach(element => {\r\n if (element.s.field == \"CERTIFIED_TITLE\") {\r\n this.title_certified = element.s.value;\r\n }\r\n else if (element.s.field == \"CERTIFIED_USER\") {\r\n this.user_signature_certified = element.s.value;\r\n }\r\n else if (element.s.field == \"CERTIFIED_USER_POSITION\") {\r\n this.user_profile_certified = element.s.value;\r\n }\r\n });\r\n\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n async downloadCertificate(EvaluationName:string) {\r\n // console.log(this.userinfo)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n\r\n // console.log(...this.rows);\r\n // console.log(listInReport)\r\n // debugger\r\n\r\n\r\n\r\n\r\n\r\n const pdf = new PdfMakeWrapper();\r\n\r\n await this.getdataCertified();\r\n\r\n // INFORMATION IN TITLE NAV\r\n\r\n let content = 'Por haber completado exitosamente la actividad formativa';\r\n // let fecha = this.momentjs().tz('America/Guayaquil').format('YYYY-MMM-DD H:mm:ss').;\r\n let fecha = this.momentjs().locale('es').format('DD/MMM/YYYY');\r\n\r\n\r\n\r\n\r\n pdf.info({\r\n\r\n title: \"Certificado\",\r\n // author: `${this.userInfo.name}`,\r\n author: 'DURAGAS',\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n\r\n var fontSize: 10\r\n\r\n\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: fontSize,\r\n alignment: 'justify'\r\n });\r\n pdf.pageMargins([40, 110, 40, 110]);\r\n const jsImg = await new Img(\r\n '../../../../assets/images/image_certified.png'\r\n ).width(841.89).height(595.28).build();\r\n\r\n pdf.background(jsImg);\r\n pdf.add(\r\n new Table(\r\n [\r\n [\r\n new Txt([new Txt(this.title_certified).bold().end]).fontSize(13).alignment('center').end,\r\n ],\r\n ]\r\n )\r\n .margin([0, 50, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n\r\n [\r\n new Txt([new Txt(this.userinfo.name).bold().end]).fontSize(22).alignment('center').end,\r\n ],\r\n\r\n\r\n ]\r\n )\r\n .margin([0, 20, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n\r\n [\r\n new Txt([new Txt(content).bold().end]).fontSize(13).alignment('center').end,\r\n ],\r\n\r\n\r\n ]\r\n )\r\n .margin([0, 10, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n\r\n [\r\n new Txt([new Txt(EvaluationName).bold().end]).fontSize(22).alignment('center').end,\r\n ],\r\n\r\n\r\n ]\r\n )\r\n .margin([0, 10, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n\r\n [\r\n new Txt([new Txt(fecha).bold().end]).fontSize(13).alignment('center').end,\r\n ],\r\n\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img(this.imageSignature).width('120').build()).end,\r\n ],\r\n\r\n // [\r\n // new Txt([new Txt(this.user_signature_certified).bold().end]).fontSize(14).alignment('center').end,\r\n // ],\r\n [\r\n new Txt([new Txt(this.user_profile_certified).bold().end]).fontSize(14).alignment('center').end,\r\n ],\r\n\r\n ]\r\n )\r\n .margin([0, 25, 0, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.pageOrientation('landscape');\r\n pdf.create().download(\"certificado_\" +EvaluationName+\"_\" + this.userinfo.name);\r\n Swal.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'code' | translate}}\r\n \r\n {{'name' | translate}}\r\n \r\n {{'numeropregunta' | translate}}\r\n \r\n {{'maximum_calification' | translate}}\r\n \r\n {{'durationtime' | translate}}\r\n \r\n {{'status' | translate}}\r\n \r\n {{'date' | translate}}\r\n {{'action' | translate}}
{{ i + 1}}{{row.EvaluationName}}{{row.NumeroPregunta}}{{row.PorcentajeCalificacion}}{{row.durationtime}}{{row.myevaluation == 'AP'? 'Aprobada' : row.myevaluation == 'RP'? 'Reprobada' : row.myevaluation == 'EX'? 'Expirado' :\r\n 'Pendiente'}}{{row.AssigneDateTime | date:'y-MM-dd hh:mm:s'}}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{'edit_item' | translate}}:\r\n {{u_obj['EvaluationName']}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \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 } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport * as moment from 'moment-timezone';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Cell, Img, PdfMakeWrapper, Table, Txt } from 'pdfmake-wrapper';\r\nimport Swal from 'sweetalert2';\r\n\r\n\r\nconst API_GET_QUESTION_EVAL_ID = environment.Global.API_GET_QUESTION_EVAL_ID;\r\nconst API_CREATE_EVALUATION = environment.Global.API_CREATE_EVALUATION;\r\nconst API_SEARCH_REPETITIONS = environment.Global.API_SEARCH_REPETITIONS;\r\nconst API_GET_CERTIFIED = environment.Global.API_GET_CERTIFIED;\r\nconst API_GET_IMAGE_SIGNATURE=environment.Global.API_GET_IMAGE_SIGNATURE;\r\n\r\n@Component({\r\n selector: 'app-myevaluationepecific',\r\n templateUrl: './myevaluationepecific.component.html',\r\n styleUrls: ['./myevaluationepecific.component.css']\r\n})\r\nexport class MyevaluationepecificComponent extends BaseCrudComponent {\r\n pdfbase64 = null;\r\n id: any;\r\n userinfo: any;\r\n band = null;\r\n texto: any;\r\n ind: any;\r\n respuestas: any;\r\n sec: any;\r\n seleccion = false;\r\n total_preguntas: any;\r\n finalizar = false;\r\n data_respuesta: any;\r\n time: number = 0;\r\n interval;\r\n play: any;\r\n duracion_evaluacion: any;\r\n duracion_evaluacion_t: number = 0;\r\n oculta_div_evaluacion = false;\r\n calificacion_evaluacion: any;\r\n puntaje: any;\r\n nameevaluation: any;\r\n mensaje: any;\r\n momentjs: any = moment;\r\n max_repeticiones: any;\r\n veces_repetidas: any;\r\n loadingRequired = false;\r\n rowsveces: any;\r\n minutos: number = 0;\r\n hora: number = 0;\r\n band_minutos: false;\r\n validEva: any[];\r\n\r\n\r\n numeroPregunta = 0;\r\n preguntas = [];\r\n preguntaAMostrar = {};\r\n opcionEscogida = null;\r\n puntajeMinimo = 0;\r\n puntajeMaximo = 0;\r\n\r\n dataCertified = [];\r\n title_certified = \"\";\r\n user_signature_certified = \"\";\r\n user_profile_certified = \"\";\r\n imageSignature=\"\";\r\n\r\n\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n //this.RegCompanie.value.ruc.substr(3, 4);\r\n this.requestID = this.id.substr(this.id.indexOf(\"-\") + 1, 99999999);\r\n this.id = this.id.substr(0, this.id.indexOf(\"-\"));\r\n\r\n\r\n this.read_url = \"Questions/GetQuestionsByEvaluationId\";\r\n this.search_fields = ['CompDocumentId', 'NameDoc', 'plazo'];\r\n this.respuestas = [];\r\n this.sec = 0;\r\n this.data_respuesta = [];\r\n this.mensaje = \"\";\r\n this.max_repeticiones = 2;\r\n this.veces_repetidas = 0;\r\n this.rowsveces = [];\r\n this.minutos = 0;\r\n this.hora = 0;\r\n\r\n this.c_obj['Respuesta'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if (val) {\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n this.repeticiones();\r\n\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.time = 0;\r\n this.minutos = 0;\r\n this.hora = 0;\r\n this.pauseTimer();\r\n }\r\n\r\n\r\n startTimer() {\r\n this.interval = setInterval(() => {\r\n if (this.time >= 0 && this.time < 59) {\r\n this.time++;\r\n } else {\r\n this.time = 0;\r\n this.minutos = this.minutos + 1;\r\n }\r\n if (this.minutos > this.duracion_evaluacion) {\r\n this.pauseTimer()\r\n this.finalizaevaluacion();\r\n }\r\n }, 1000)\r\n }\r\n\r\n pauseTimer() {\r\n clearInterval(this.interval);\r\n }\r\n\r\n public async getList() {\r\n var qst = API_GET_QUESTION_EVAL_ID + this.id;\r\n await this.srv.getCall(qst).toPromise().then(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n var rs = x.val;\r\n // console.log(rs);\r\n this.rows = rs;\r\n this.total_preguntas = this.rows['total_preguntas'];\r\n this.duracion_evaluacion = this.rows['duracion'];\r\n this.duracion_evaluacion_t = this.duracion_evaluacion * 60;\r\n this.puntajeMinimo = this.rows[\"calificacion_minima\"];\r\n this.puntajeMaximo = this.rows[\"calificacion_maxima\"];\r\n this.nameevaluation = this.rows[\"nameevaluation\"];\r\n this.preguntas = this.rows['preguntas']\r\n this.preguntas.forEach(pregunta => {\r\n pregunta['opcionEscogida'] = null;\r\n })\r\n this.srv.getCall(API_GET_IMAGE_SIGNATURE).toPromise().then(resp => {\r\n this.imageSignature = resp.val[\"PhotoSignature\"]\r\n })\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n this.band = true;\r\n\r\n }\r\n\r\n iniciaevaluacion() {\r\n if (this.veces_repetidas >= this.max_repeticiones) {debugger;\r\n Swal.fire(\r\n {\r\n title: 'Error',\r\n text: this.translations['msj_'],\r\n icon: 'error',\r\n confirmButtonColor: '#005c3c',\r\n allowOutsideClick: false,\r\n confirmButtonText: this.translations.come_back\r\n }\r\n ).then((result) => {\r\n if (result.value) {\r\n this.router.navigateByUrl('/myevaluation')\r\n }\r\n });\r\n }\r\n else {\r\n this.startTimer();\r\n this.band = false;\r\n this.mostrarpregunta();\r\n }\r\n }\r\n\r\n siguiente() {\r\n this.opcionEscogida == null;\r\n this.mostrarpregunta();\r\n }\r\n\r\n mostrarpregunta() {\r\n if (this.band == false) {\r\n this.numeroPregunta++;\r\n if (this.numeroPregunta < this.total_preguntas) {\r\n this.preguntaAMostrar = this.preguntas[this.numeroPregunta - 1];\r\n } else if (this.numeroPregunta == this.total_preguntas) {\r\n this.preguntaAMostrar = this.preguntas[this.numeroPregunta - 1];\r\n this.finalizar = true;\r\n }\r\n }\r\n }\r\n\r\n GuardarRespuesta(pregunta) {\r\n let resp = null;\r\n let desc = null;\r\n if (pregunta['TipoPreguntaID'] == 2) {\r\n if (pregunta.opcionEscogida == null) {\r\n return Swal.fire(this.translations.you_need_select_answer, '', 'error')\r\n } else {\r\n pregunta.RespuestasList.forEach(element => {\r\n if (element.respuesta == true) {\r\n if (element.respuesta) {\r\n resp = true;\r\n desc = element.descripcion;\r\n } else {\r\n resp = false;\r\n desc = element.descripcion;\r\n }\r\n }\r\n });\r\n this.c_obj['Respuesta'].push(\r\n {\r\n PreguntaID: pregunta.PreguntaID,\r\n DetallePreguntaID: pregunta.Pregunta,\r\n OpcionUsuario: pregunta.opcionEscogida,\r\n OpcionValida: resp,\r\n TipoPregunta: pregunta['TipoPreguntaID']\r\n }\r\n )\r\n }\r\n } else if (pregunta['TipoPreguntaID'] == 1) {\r\n let contador = 0;\r\n pregunta.RespuestasList.forEach(element => {\r\n if (element.opcionEscogida != undefined) {\r\n contador++;\r\n }\r\n });\r\n if (contador == 0) {\r\n return Swal.fire(this.translations.you_need_select_answer, '', 'error')\r\n } else {\r\n let obj = {\r\n PreguntaID: pregunta.PreguntaID,\r\n DetallePreguntaID: pregunta.Pregunta,\r\n OpcionUsuario: [],\r\n OpcionValida: [],\r\n TipoPregunta: pregunta['TipoPreguntaID']\r\n };\r\n pregunta.RespuestasList.forEach(element => {\r\n if (element.respuesta == true) {\r\n resp = true;\r\n } else {\r\n resp = false;\r\n }\r\n obj.OpcionUsuario.push(element.opcionEscogida != undefined ? element.opcionEscogida : false)\r\n obj.OpcionValida.push(resp)\r\n });\r\n this.c_obj['Respuesta'].push(obj)\r\n }\r\n }\r\n if (!this.finalizar) {\r\n this.siguiente();\r\n } else {\r\n this.finalizaevaluacion();\r\n }\r\n }\r\n\r\n finalizaevaluacion() {\r\n let calificacion = 0;\r\n let puntaje = 0;\r\n this.c_obj['Respuesta'].forEach(respuesta => {\r\n if (respuesta.TipoPregunta == 2) {\r\n if (respuesta.OpcionUsuario == respuesta.OpcionValida) {\r\n puntaje++;\r\n }\r\n } else if (respuesta.TipoPregunta == 1) {\r\n let contadorRespuestasV = 0;\r\n let contadorRespuestasU = 0;\r\n for (let index = 0; index < respuesta.OpcionUsuario.length; index++) {\r\n if (respuesta.OpcionValida[index]) {\r\n contadorRespuestasV++;\r\n }\r\n if (respuesta.OpcionValida[index] && respuesta.OpcionUsuario[index]) {\r\n contadorRespuestasU++;\r\n }\r\n }\r\n if (contadorRespuestasU == contadorRespuestasV) {\r\n puntaje++;\r\n }\r\n }\r\n })\r\n if (this.c_obj['Respuesta'].length > 0) {\r\n calificacion = Number(((puntaje * this.puntajeMaximo) / this.total_preguntas).toFixed(1));\r\n } else {\r\n calificacion = 0;\r\n }\r\n let titulo = '';\r\n let cuerpo = '';\r\n let status = '';\r\n if (calificacion < this.puntajeMinimo) {\r\n titulo = '' + `${this.translations.msj_evaluation2}` + '';\r\n status = 'RP';\r\n } else {\r\n titulo = '' + `${this.translations.msj_evaluation1}` + '';\r\n status = 'AP';\r\n\r\n }\r\n this.pauseTimer();\r\n cuerpo =\r\n `${this.translations.result_eval}` + ' ' + (`${calificacion.toString()}` + '/' + `${this.puntajeMaximo.toString()}`);\r\n Swal.fire({\r\n title: titulo,\r\n text: cuerpo,\r\n icon: status == 'RP' ? 'error' : 'success',\r\n showCancelButton: false,\r\n confirmButtonColor: status == 'AP' ? '#005c3c' : '#C8102E',\r\n allowOutsideClick: false,\r\n confirmButtonText: this.translations.accept\r\n }).then((result) => {\r\n if (result.value) {\r\n let curr_date = this.momentjs().tz('America/Guayaquil').format('YYYY-MM-DD H:mm:ss');\r\n this.u_obj[\"EmployeeId\"] = this.userinfo.userCode; // codigo de empelado externo\r\n this.u_obj[\"ParameEvaID\"] = this.id; // evaluacion realizada\r\n this.u_obj[\"RequestId\"] = this.requestID; // solicitud de induccion\r\n this.u_obj[\"max_repetition\"] = 2;\r\n this.u_obj[\"score_end\"] = Number(calificacion.toFixed(0));\r\n this.u_obj[\"number_questions\"] = this.total_preguntas;\r\n this.u_obj[\"score_evaluation\"] = this.puntajeMaximo;\r\n this.u_obj[\"status_end\"] = status;\r\n this.u_obj['DateModification'] = curr_date;\r\n this.u_obj['MyevaluationDetail'] = [];\r\n this.u_obj['MyevaluationDetail'].push({ score: Number(calificacion.toFixed(0)), status: status, creationtime: curr_date });\r\n this.u_obj['_pdfbase64'] = \"\"\r\n this.u_obj['nameReport'] = \"\"\r\n this.u_obj['ClientEmail'] = \"\"\r\n this.u_obj['Username'] = \"\"\r\n this.savescore(this.u_obj);\r\n }\r\n })\r\n }\r\n\r\n savescore(obj: any) {\r\n Swal.fire(\r\n {\r\n title: this.translations.save_data,\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.postCall(API_CREATE_EVALUATION, obj).subscribe(x => {\r\n if (x.success) {debugger;\r\n Swal.close()\r\n this.router.navigateByUrl('/myevaluation');\r\n if(this.u_obj[\"status_end\"] == 'AP')\r\n this.SendReportToMail();\r\n }\r\n else {\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n public repeticiones() {\r\n var qst = API_SEARCH_REPETITIONS +\r\n this.id + \"/\" +\r\n this.userinfo.userCode + \"/\" +\r\n this.requestID;\r\n this.srv.getCall(qst).subscribe(x => {\r\n if (x.success) {debugger;\r\n var rs = x.val;\r\n this.rowsveces = rs;\r\n this.max_repeticiones = this.rowsveces.max_repetition;\r\n this.veces_repetidas = this.rowsveces.vecesrepetidas;\r\n }\r\n else {\r\n this.max_repeticiones = 2;\r\n this.veces_repetidas = 0;\r\n }\r\n });\r\n }\r\n async getdataCertified() {\r\n debugger\r\n let qst = API_GET_CERTIFIED;\r\n await this.srv.getCall(qst).toPromise().then(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n var rs = x.val;\r\n this.dataCertified = rs\r\n\r\n rs.forEach(element => {\r\n if (element.s.field == \"CERTIFIED_TITLE\") {\r\n this.title_certified = element.s.value;\r\n }\r\n else if (element.s.field == \"CERTIFIED_USER\") {\r\n this.user_signature_certified = element.s.value;\r\n }\r\n else if (element.s.field == \"CERTIFIED_USER_POSITION\") {\r\n this.user_profile_certified = element.s.value;\r\n }\r\n });\r\n\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n async SendReportToMail() {\r\n // console.log(this.userinfo)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n\r\n // console.log(...this.rows);\r\n // console.log(listInReport)\r\n // debugger\r\n\r\n\r\n\r\n\r\n\r\n const pdf = new PdfMakeWrapper();\r\n\r\n await this.getdataCertified();\r\n\r\n // INFORMATION IN TITLE NAV\r\n\r\n let content = 'Por haber completado exitosamente la actividad formativa';\r\n // let fecha = this.momentjs().tz('America/Guayaquil').format('YYYY-MMM-DD H:mm:ss').;\r\n let fecha = this.momentjs().locale('es').format('DD/MMM/YYYY');\r\n\r\n pdf.info({\r\n\r\n title: \"Certificado\",\r\n // author: `${this.userInfo.name}`,\r\n author: 'DURAGAS',\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n\r\n var fontSize: 10\r\n\r\n\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: fontSize,\r\n alignment: 'justify'\r\n });\r\n pdf.pageMargins([40, 110, 40, 110]);\r\n const jsImg = await new Img(\r\n '../../../../assets/images/image_certified.png'\r\n ).width(841.89).height(595.28).build();\r\n\r\n pdf.background(jsImg);\r\n pdf.add(\r\n new Table(\r\n [\r\n [\r\n new Txt([new Txt(this.title_certified).bold().end]).fontSize(13).alignment('center').end,\r\n ],\r\n ]\r\n )\r\n .margin([0, 50, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n\r\n [\r\n new Txt([new Txt(this.userinfo.name).bold().end]).fontSize(22).alignment('center').end,\r\n ],\r\n\r\n\r\n ]\r\n )\r\n .margin([0, 20, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n\r\n [\r\n new Txt([new Txt(content).bold().end]).fontSize(13).alignment('center').end,\r\n ],\r\n\r\n\r\n ]\r\n )\r\n .margin([0, 10, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n\r\n [\r\n new Txt([new Txt(this.nameevaluation).bold().end]).fontSize(22).alignment('center').end,\r\n ],\r\n\r\n\r\n ]\r\n )\r\n .margin([0, 10, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n\r\n [\r\n new Txt([new Txt(fecha).bold().end]).fontSize(13).alignment('center').end,\r\n ],\r\n\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.add(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img(this.imageSignature).width('120').build()).end,\r\n ],\r\n\r\n // [\r\n // new Txt([new Txt(this.user_signature_certified).bold().end]).fontSize(14).alignment('center').end,\r\n // ],\r\n [\r\n new Txt([new Txt(this.user_profile_certified).bold().end]).fontSize(14).alignment('center').end,\r\n ],\r\n\r\n ]\r\n )\r\n .margin([0, 25, 0, 0])\r\n .alignment('center')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n\r\n\r\n\r\n pdf.pageOrientation('landscape');\r\n var nameReport = this.nameevaluation;\r\n var userName = this.userinfo.name\r\n let formData = new FormData();\r\n\r\n this.pdfbase64 = pdf.create().getBase64(data => {\r\n\r\n var file: any;\r\n file = {};\r\n\r\n file._pdfbase64 = data;\r\n file.nameReport = nameReport;\r\n file.ClientEmail = this.userinfo.emailAddress ;\r\n file.CompanyID = this.userinfo.selectedCompanyId;\r\n file.EmployeeID = this.userinfo.userCode;\r\n file.userName = userName;\r\n\r\n var qst = 'Myevaluation/SendPDFClient/';debugger;\r\n // console.log(qst)\r\n this.srv.postCall(qst, file).subscribe(x => {\r\n if (x.success) {\r\n Swal.fire(\"Certificado enviado correctamente\", '', 'success');\r\n this.closeModal(\"sendpdf\");\r\n }//end success\r\n else {\r\n Swal.fire(\"Error al enviar el certificado\", '', 'error');\r\n }\r\n });\r\n });\r\n\r\n\r\n // pdf.create().download(\"certificado:\" + this.userinfo.name);\r\n Swal.close();\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

{{'considerations' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n {{'msg_info_evaluation_consideration1' | translate}} {{this.duracion_evaluacion}} {{'minutes_evaluation' | translate}}\r\n
  • \r\n
  • \r\n {{'msg_info_evaluation_repetitions' | translate}} {{this.max_repeticiones}} {{'msg_info_evaluation_repetitions_1' | translate}}\r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'time_elapse'| translate}} {{hora}}:{{minutos}}:{{time}}

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

{{'question_'| translate}} {{numeroPregunta}} / {{total_preguntas}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\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 { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { Storage } from '@ionic/storage';\r\nimport { environment } from 'src/environments/environment';\r\nimport { GlobalService } from 'src/app/services/main/global.service';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport Swal from 'sweetalert2';\r\n\r\n\r\nconst URL_TO_DOWNLOAD_QRCODE = environment.Global.API_DOWNLOAD_QR;\r\nconst API_GET_ENTRY_REQUEST_BY_EMPLOYEE = environment.Global.API_GET_ENTRY_REQUEST_BY_EMPLOYEE;\r\n\r\n@Component({\r\n selector: 'app-qremployee',\r\n templateUrl: './qremployee.component.html',\r\n styleUrls: ['./qremployee.component.css']\r\n})\r\nexport class QremployeeComponent extends BaseCrudComponent implements OnInit {\r\n userinfo: any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private globalService: GlobalService,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n\r\n async ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n\r\n // this.getTypeFouls();\r\n this.search_fields = ['EntryRequestId','Requiredby'];\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList();\r\n }\r\n\r\n public getList() {\r\n this.loadingList = true;\r\n let url = API_GET_ENTRY_REQUEST_BY_EMPLOYEE + this.userinfo['userCode'];\r\n this.srv.getCall(url).subscribe( data => {\r\n this.loadingList = false;\r\n if (data.success) {\r\n if (data.val.length > 0) {\r\n this.rawdata = data.val;\r\n this.rows = data.val;\r\n this.page = 1;\r\n console.log(data.val)\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.loadingList = false;\r\n }\r\n }\r\n })\r\n }\r\n\r\n public downloadQr(row) {\r\n let fechaActual = new Date();\r\n let fecha = new Date(row.StartDate.split('T')[0]);\r\n let fechaSalida = new Date(row.EndDte.split('T')[0]);\r\n fecha.setDate(fecha.getDate() - 2)\r\n if (fechaActual.getTime() >= fecha.getTime() || fechaActual.getTime() <= fechaSalida.getTime() ) {\r\n let entryRequestId = row.EntryRequestId;\r\n let dato = this.userinfo['userCode'] + '-' + entryRequestId;\r\n let qst = URL_TO_DOWNLOAD_QRCODE + dato.toString();\r\n this.srv.downloadFileQR(qst).subscribe(data => {\r\n importedSaveAs(data, 'QR - INGRESO PLANTA DURAGAS');\r\n });\r\n } else {\r\n Swal.fire(this.translations.download_not_valid,this.translations.only_download_in_date,'error');\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'requiredby' | translate}}{{'job_area' | translate}}{{'date_init' | translate}}{{'date_end' | translate}}{{'job_to_do' | translate}}{{'job_risk' | translate}}{{'action' | translate}}
{{row.EntryRequestId}}{{row.Requiredby}}{{row.Requiredbyarea}}{{row.StartDate.split('T')[0]}}{{row.EndDte.split('T')[0]}}{{row.WorkDescription}}{{row.Risk ? 'Si': 'No'}}\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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../../base-crud/base-crud.component';\r\nimport { Storage } from '@ionic/storage';\r\nimport { environment } from 'src/environments/environment';\r\nimport { GlobalService } from 'src/app/services/main/global.service';\r\nimport Swal from 'sweetalert2';\r\nimport { LoginService } from 'src/app/services/authentication/login.service';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Canvas, Cell, Columns, Ellipse, Img, Item, Line, PageReference, PdfMakeWrapper, Polyline, Rect, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\n\r\nconst API_CONSULTATYPEFALTA = environment.Global.API_CONSULTATYPEFALTA;\r\nconst API_CONSULTAFALTADETAIL = environment.Global.API_CONSULTAFALTADETAIL;\r\nconst API_SANCION = environment.Global.API_SANCION;\r\nconst GET_EMPLOYEE_BY_IDENTIFICATION = environment.Global.API_GET_EMPLOYEE_BY_IDENTIFICATION;\r\nconst API_UPDATE_UNSAFEACT = environment.Global.API_UPDATE_UNSAFEACT;\r\nconst GET_ALL_SITES_ACTIVE = environment.Global.API_GET_ALL_SITES_ACTIVE;\r\nconst GET_ALL_AREA_BY_ID = environment.Global.API_GET_ALL_AREA_BY_ID;\r\nconst API_GET_UNSAFEACTBYID = environment.Global.API_GET_UNSAFEACTBYID;\r\nconst API_GET_UNSAFEACT = environment.Global.API_GET_UNSAFEACT;\r\nconst API_UPDATE_UNSAFEACT_STATUS = environment.Global.API_UPDATE_UNSAFEACT_STATUS;\r\nconst API_CREATE_UNSAFEACT = environment.Global.API_CREATE_UNSAFEACT;\r\nconst API_UPLOAD_FILE_UNSAFEACT = environment.Global.API_UPLOAD_FILE_UNSAFEACT;\r\nconst API_UNSAFEACT_FOULS = environment.Global.API_UNSAFEACT_FOULS;\r\nconst API_UNSAFE_SEND_MAIL = environment.Global.API_UNSAFE_SEND_MAIL;\r\n@Component({\r\n selector: 'app-actnosecure',\r\n templateUrl: './actnosecure.component.html',\r\n styleUrls: ['./actnosecure.component.css']\r\n})\r\nexport class ActnosecureComponent extends BaseCrudComponent implements OnInit {\r\n list_workers = [{id: 1, type: 'Interno'},{id: 2, type:'Externo'}];\r\n list_option_fault = [{id: 1, type: 'Sí'},{id: 2, type:'No'}];\r\n workerId = 1;\r\n list_work_perm = []; // lista para los permisos de trabajo\r\n public isCollapsed = false;\r\n list_fouls = [];\r\n list_fouls_detail = [];\r\n list_sanction = [];\r\n list_employees_worker = [];\r\n row_plantas_area = [];\r\n archivos=[];\r\n row_plantas = [];\r\n namefile:any;\r\n fechaActual = new Date();\r\n loadingList = false;\r\n isUpdating = false;\r\n enabled = true;\r\n hasWork = false;\r\n isCreating = false;\r\n userinfo:any;\r\n idcreatd: any;\r\n flag = true;\r\n listfouls = [];\r\n contadorFaltas;\r\n falta;\r\n pageSize = 10;\r\n descriptionFoul = '';\r\n getEmployee = false;\r\n\r\n\r\n selectedCar: number;\r\n\r\n cars = [\r\n { id: 1, name: 'Volvo' },\r\n { id: 2, name: 'Saab' },\r\n { id: 3, name: 'Opel' },\r\n { id: 4, name: 'Audi' },\r\n { id: 5, name: 'Opel' },\r\n { id: 6, name: 'Audi' },\r\n { id: 7, name: 'Opel' },\r\n { id: 8, name: 'Audi' },\r\n { id: 9, name: 'Opel' },\r\n { id: 10, name: 'Audi' },\r\n { id: 11, name: 'Opel' },\r\n { id: 12, name: 'Audi' },\r\n { id: 13, name: 'Opel' },\r\n { id: 14, name: 'Audi' },\r\n { id: 15, name: 'Opel' },\r\n { id: 16, name: 'Audi' },\r\n ];\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private globalService: GlobalService,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n imprimiro() {\r\n console.log(this.selectedCar)\r\n }\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n \r\n this.getList(); \r\n });\r\n // console.log(this.globalService.formatOnlyDate(this.fechaActual))\r\n this.getTypeFouls();\r\n this.search_fields = ['UnsafeActId','Name'];\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n // console.log(this.userinfo)\r\n }); \r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.getEmployee = false;\r\n // this.list_fouls = [];\r\n this.listfouls = [];\r\n this.c_obj = {};\r\n this.workerId = 1;\r\n this.list_employees_worker = [];\r\n this.c_obj['fault_type'] = null;\r\n this.c_obj['fault_associated'] = null;\r\n this.c_obj['type_sanction'] = null;\r\n this.c_obj['close_fault'] = 2;\r\n this.c_obj['cmp_area'] = null;\r\n this.c_obj['report_by'] = this.userinfo['logon'];\r\n this.getWorkPerm(); // se llama a todos los permisos de trabajo\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg' });\r\n }\r\n\r\n public getList() {\r\n this.loadingList = true; \r\n Swal.fire(\r\n {\r\n title: this.translations.loading,\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.getCall(API_GET_UNSAFEACT).subscribe(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n this.rows = this.rawdata;\r\n // console.log(this.rows)\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n if(this.flag) {\r\n Swal.close()\r\n }\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n this.GetPlantas();\r\n }\r\n\r\n public setTypeWorker() {\r\n // console.log(this.workerId)\r\n if(this.workerId == 2) {\r\n this.c_obj['worker_perm'] = null;\r\n } else {\r\n this.getEmployee = false;\r\n this.list_fouls = [];\r\n this.c_obj = {};\r\n this.list_employees_worker = [];\r\n }\r\n }\r\n\r\n public getWorkPerm() {\r\n const url = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\n this.list_work_perm = [];\r\n this.srv.getCall(url).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n x.val.forEach(element => {\r\n this.list_work_perm.push(element);\r\n })\r\n this.page = 1;\r\n if( Array.isArray(x.val) ){\r\n this.pageTotal = x.val.length;\r\n }\r\n }\r\n }\r\n });\r\n \r\n \r\n }\r\n\r\n public onlyNumberKey(event: any): boolean {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n public setDataInForm() {\r\n // console.log(this.c_obj['worker_perm'])\r\n if (this.c_obj['worker_perm'] !== '0' && this.c_obj['worker_perm'] !== null) { // existe el permisod e trabajo\r\n this.enabled = true;\r\n this.hasWork = true;\r\n let work_perm_selected = JSON.parse(this.c_obj['worker_perm']);\r\n this.list_employees_worker = [];\r\n work_perm_selected.RequestDetails.forEach(element => {\r\n this.list_employees_worker.push({\r\n name: element.EmployeeName,\r\n cod: element.NumberIdentification,\r\n typeJob: element.JobtypeName,\r\n position: element.position\r\n })\r\n });\r\n if (work_perm_selected !== null && work_perm_selected !== undefined) {\r\n this.c_obj['perm_number'] = work_perm_selected['WorkAuthId'];\r\n this.c_obj['level'] = work_perm_selected['PlantaName'];\r\n this.c_obj['levelCode'] = work_perm_selected['PlantaID'];\r\n this.c_obj['dateActInsecure'] = this.globalService.formatOnlyDate(this.fechaActual);\r\n this.c_obj['company'] = work_perm_selected['name'];\r\n } else {\r\n this.c_obj['NumberIdentification'] = null;\r\n return Swal.fire(this.translations.should_select_perm_work, '', 'error');\r\n }\r\n this.setLevelArea();\r\n } else if(this.c_obj['worker_perm'] === '0') { // no existe el permiso de trabajo\r\n this.list_employees_worker = [];\r\n this.hasWork = false;\r\n this.enabled = false; \r\n this.c_obj['NumberIdentification'] = null;\r\n this.c_obj['NameEmployee'] = null;\r\n this.c_obj['perm_number'] = null;\r\n this.c_obj['level'] = null;\r\n this.c_obj['levelCode'] = null;\r\n this.c_obj['dateActInsecure'] = null;\r\n this.c_obj['company'] = null;\r\n } else if (this.c_obj['worker_perm'] === null){\r\n this.list_employees_worker = [];\r\n this.hasWork = false;\r\n this.enabled = false; \r\n this.c_obj['NumberIdentification'] = null;\r\n this.c_obj['NameEmployee'] = null;\r\n this.c_obj['perm_number'] = null;\r\n this.c_obj['level'] = null;\r\n this.c_obj['levelCode'] = null;\r\n this.c_obj['dateActInsecure'] = null;\r\n this.c_obj['company'] = null;\r\n } \r\n }\r\n\r\n public GetEmployeeforIdentification(obj:any,val:any) {\r\n var qst = GET_EMPLOYEE_BY_IDENTIFICATION + obj;\r\n if (obj === \"\")\r\n {\r\n return;\r\n }\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.c_obj['NameEmployee'] = x.val['Name'];\r\n this.c_obj['EmployeeId'] = x.val['EmployeeId'];\r\n this.c_obj['namesubcompany'] = x.val['namesubcompany'];\r\n this.c_obj['position'] = x.val['position'];\r\n this.c_obj['dateActInsecure'] = this.globalService.formatOnlyDate(new Date())\r\n this.c_obj['company'] = x.val['namecompany'];\r\n this.c_obj['CompanyID'] = x.val['CompanyID'];\r\n } else {\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n this.getEmployee = true;\r\n if (this.getEmployee) {\r\n this.GetFoulByEmployee(obj);\r\n }\r\n }\r\n\r\n public GetFoulByEmployee (ci: string) {\r\n var qst = API_UNSAFEACT_FOULS + ci;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n this.listfouls = x.val;\r\n } else {\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public getTypeFouls () {\r\n let url = API_CONSULTATYPEFALTA;\r\n this.srv.getCall(url).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log('FALTAS')\r\n // console.log(x.val)\r\n this.list_fouls = x.val\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public getFouls(falta_id) {\r\n if (falta_id !== null){\r\n this.c_obj['fault_associated'] = null;\r\n let url = API_CONSULTAFALTADETAIL;\r\n let id = {FoulTypeID: falta_id};\r\n this.srv.postCall(url, id).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n this.list_fouls_detail = x.val;\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n this.getSanction(falta_id);\r\n } else {\r\n this.c_obj['fault_associated'] = null;\r\n this.c_obj['type_sanction'] = null;\r\n }\r\n }\r\n\r\n public getSanction(falta_id) {\r\n let url = API_SANCION;\r\n let id = {FoulTypeID: falta_id};\r\n this.srv.postCall(url, id).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log('SANCIONES ASOCIADAS')\r\n // console.log(x.val)\r\n this.list_sanction = x.val;\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n // Swal.fire(\r\n // {\r\n // title: this.translations.loading_foul,\r\n // html: '',\r\n // icon: 'info',\r\n // }\r\n // );\r\n // Swal.showLoading();\r\n setTimeout(()=>{\r\n this.setFoulsAndSanction(falta_id);\r\n }, 2000);\r\n }\r\n\r\n public setdescriptionFoul() {\r\n this.list_fouls_detail.forEach(element => {\r\n // console.log(element)\r\n if (element.ParaDetaFoulID == this.c_obj['fault_associated']) {\r\n this.descriptionFoul = element.Descripcion\r\n }\r\n })\r\n }\r\n\r\n public setFoulsAndSanction(falta_id) {\r\n this.contadorFaltas = 0;\r\n // console.log(falta_id)\r\n this.listfouls.forEach(element => {\r\n // console.log(element)\r\n if (element.typefouls == falta_id) {\r\n // console.log('entro')\r\n this.contadorFaltas = element.quantity + 1;\r\n }\r\n })\r\n // en caso de que la falta asociada sea 0\r\n if (this.contadorFaltas == 0) {\r\n this.contadorFaltas = 1;\r\n }\r\n // console.log('Contador de faltas: ', this.contadorFaltas)\r\n // console.log(this.list_fouls_detail);\r\n // console.log(this.list_sanction);\r\n // se establece la ultima falta asociada\r\n // if (this.contadorFaltas > this.list_fouls_detail.length) {\r\n // this.c_obj['fault_associated'] = this.list_fouls_detail[this.list_fouls_detail.length - 1].ParaDetaFoulID;\r\n // // this.falta['falta_asociada'] = this.list_fouls_detail[this.list_fouls_detail.length - 1];\r\n // } else if (this.contadorFaltas <= this.list_fouls_detail.length) {\r\n // this.c_obj['fault_associated'] = this.list_fouls_detail[this.contadorFaltas - 1].ParaDetaFoulID;\r\n // // this.falta['falta_asociada'] = this.list_fouls_detail[this.contadorFaltas - 1];\r\n // }\r\n\r\n\r\n if (this.contadorFaltas > this.list_sanction.length) {\r\n this.c_obj['type_sanction'] = this.list_sanction[this.list_sanction.length - 1].SanctionID;\r\n // this.falta['sancion_asociada'] = this.list_sanction[this.list_sanction.length - 1];\r\n } else if (this.contadorFaltas <= this.list_sanction.length) {\r\n this.c_obj['type_sanction'] = this.list_sanction[this.contadorFaltas - 1].SanctionID;\r\n // this.falta['sancion_asociada'] = this.list_sanction[this.contadorFaltas - 1];\r\n }\r\n Swal.close();\r\n // console.log(this.falta);\r\n }\r\n\r\n\r\n public handleInputChange(e){\r\n // console.log(e)\r\n this.archivos=[];\r\n var file = e.dataTransfer ? e.dataTransfer.files : e.target.files;\r\n let files = Object.values(file);\r\n files.forEach(element => {\r\n if (this.archivos.length < 2) {\r\n this.archivos.push(element);\r\n } else {\r\n return Swal.fire(this.translations.only_two_imgs,'','error');\r\n }\r\n });\r\n // console.log(this.archivos)\r\n }\r\n\r\n public searchArea() {\r\n console.log(this.c_obj['level'])\r\n this.setLevelArea();\r\n }\r\n\r\n public setLevelArea() {\r\n var qst = GET_ALL_AREA_BY_ID + (this.c_obj['levelCode'] !== null ? this.c_obj['levelCode'] : this.c_obj['level']);\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n // console.log(rs);\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public changeValueFoult() {\r\n if(this.c_obj['close_fault'] == 2) {\r\n this.c_obj['samp_comment'] = null;\r\n }\r\n }\r\n\r\n public async createItem(modal, object) {\r\n this.isCreating = true;\r\n let validated = this.validateCreateInfo(object);\r\n if( !validated ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error'); \r\n return;\r\n }\r\n\r\n if (this.archivos.length == 0) {\r\n return Swal.fire(this.translations.should_upload_imgs, '','error');\r\n }\r\n \r\n if(object['close_fault'] == 1 && object['samp_comment'] == null) {\r\n return Swal.fire(this.translations.add_comment_act, '','error');\r\n }\r\n\r\n let codePlant = 0;\r\n if (this.c_obj['worker_perm'] == 0) {\r\n codePlant = object['level'];\r\n } else if (this.c_obj['worker_perm'] != 0 && this.c_obj['worker_perm'] !== null) {\r\n codePlant = object['levelCode'];\r\n } \r\n\r\n let new_obj = {\r\n WorkerTypeId: this.workerId,\r\n WorkAuthId: object['perm_number'] == null ? '': object['perm_number'],\r\n EmployeeId: object['EmployeeId'],\r\n PlantaID: codePlant == 0 ? '': codePlant,\r\n SeccionID: object['cmp_area'],\r\n FoulTypeID: object['fault_type'],\r\n ParaDetaFoulID: object['fault_associated'],\r\n SanctionID: object['type_sanction'],\r\n Photos: '',\r\n StatusInsp: object['close_fault'],\r\n Commentary: object['samp_comment'] == null ? '' : object['samp_comment'],\r\n Reportby: object['report_by'],\r\n Requiredby: object['user_sol'],\r\n RequiredbyMail: object['email_sol']\r\n }\r\n console.log(new_obj)\r\n this.srv.postCall(API_CREATE_UNSAFEACT, new_obj).toPromise().then( async (data)=> {\r\n this.isCreating = true;\r\n if(data.success){\r\n this.flag = false;\r\n this.sendPhotos(data);\r\n await this.createReportToSend(data.val['UnsafeActId'])\r\n Swal.fire(this.translations.msg_create,'', 'success');\r\n this.getList();\r\n this.isCreating = false;\r\n this.c_obj = {};\r\n this.closeModal(modal);\r\n if (object['close_fault'] == 2) {\r\n this.gotoPlan(data.val['UnsafeActId']);\r\n }\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isCreating = false;\r\n });\r\n }\r\n\r\n public async sendPhotos(data?) {\r\n // console.log(data)\r\n let formData = new FormData();\r\n for(let file of this.archivos) {\r\n formData.append(file.name, file);\r\n }\r\n formData.append('CompanyID', this.c_obj['CompanyID']);\r\n formData.append('TypeWorker', this.workerId == 1 ? 'Interno': 'Externo');\r\n formData.append('UnsafeActId', data.val.UnsafeActId);\r\n // console.log(formData);\r\n // await this.srv.AddFiles(API_UPLOAD_FILE_UNSAFEACT, formData).toPromise().then(result => {\r\n // if (result==\"OK\") {\r\n // this.archivos=[];\r\n // // Swal.fire(this.translations.evidence, result, 'success'); \r\n // // this.getList();\r\n // }\r\n // else{\r\n // Swal.fire(this.translations.evidence, result, 'error');\r\n // this.archivos=[];\r\n // // this.getList();\r\n // }\r\n // });\r\n }\r\n\r\n public GetPlantas() {\r\n var qst = GET_ALL_SITES_ACTIVE;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.row_plantas = [];\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas = rs;\r\n console.log(rs)\r\n // console.log(this.row_plantas)\r\n }else {\r\n this.row_plantas = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public validateCreateInfo(fields:any): boolean {\r\n let internalWorker:any = {};\r\n internalWorker = new FormGroup({\r\n 'NumberIdentification': new FormControl(fields.NumberIdentification, [Validators.required]),\r\n 'user_sol': new FormControl(fields.user_sol, [Validators.required]),\r\n 'email_sol': new FormControl(fields.email_sol, [Validators.required]),\r\n 'cmp_area': new FormControl(fields.cmp_area, [Validators.required]),\r\n 'report_by': new FormControl(fields.report_by, [Validators.required]),\r\n 'fault_type': new FormControl(fields.fault_type, [Validators.required]),\r\n 'fault_associated': new FormControl(fields.fault_associated, [Validators.required]),\r\n 'type_sanction': new FormControl(fields.type_sanction, [Validators.required])\r\n\r\n });\r\n return internalWorker.valid;\r\n }\r\n\r\n public deleteInsp (row) {\r\n this.ActivarItem(row.UnsafeActId,3);\r\n }\r\n\r\n public ActivarItem(id:any, accion:any): void\r\n {\r\n var to:any;\r\n to = {};\r\n to.UnsafeActId = id;\r\n to.Status = accion;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n // console.log(to)\r\n this.srv.postCall(API_UPDATE_UNSAFEACT_STATUS, to).subscribe(x => {\r\n Swal.close();\r\n if(x.success){\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public edit(modal, row) {\r\n this.u_obj = row;\r\n this.u_obj['evidencia'] = [];\r\n row._Evidences.forEach(element => {\r\n this.u_obj['evidencia'].push(element.imagen);\r\n });\r\n \r\n console.log(row)\r\n this.modalService.open(modal, { backdrop: 'static', size: 'lg' });\r\n }\r\n\r\n public updateItem(modal, row) {\r\n this.isUpdating = true;\r\n let obj = {\r\n UnsafeActId: row.UnsafeActId,\r\n LastModifierUser: this.userinfo['logon'],\r\n StatusInsp : 'C',\r\n Commentary: this.u_obj['Commentary']\r\n }\r\n this.srv.postCall(API_UPDATE_UNSAFEACT, obj).toPromise().then( data =>{\r\n if(data.success){\r\n this.c_obj = {};\r\n this.closeModal(modal);\r\n this.flag = false;\r\n Swal.fire(this.translations.msg_update, '', 'success');\r\n this.isUpdating = false;\r\n this.getList();\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = false;\r\n });\r\n }\r\n\r\n\r\n\r\n public async createReportToSend(id) {\r\n let foult = '', descriptionFoul = '', elemento = {}, sanction = '';\r\n this.list_fouls.forEach(element => {\r\n if (element.FoulTypeID == this.c_obj['fault_type']) {\r\n foult = element.NameFoul;\r\n descriptionFoul = element.Descripcion;\r\n elemento = element;\r\n }\r\n })\r\n\r\n // this.list_fouls_detail.forEach(element =>{ \r\n // if (element.)\r\n // })\r\n this.list_sanction.forEach(element =>{\r\n if (element.SanctionID == this.c_obj['type_sanction']) {\r\n sanction = element.NameSan;\r\n }\r\n });\r\n // console.log(elemento);\r\n // console.log(foult);\r\n // console.log(descriptionFoul);\r\n // console.log(this.userinfo)\r\n // console.log(this.c_obj['type_sanction'])\r\n // console.log(this.globalService.formatOnlyDate(this.fechaActual))\r\n const pdf = new PdfMakeWrapper();\r\n pdf.info({\r\n title: `${this.c_obj['company'] + ' - ' + this.c_obj['NameEmployee']}`,\r\n author: `SKRETTING`,\r\n subject: 'Notificación de incumplimiento',\r\n });\r\n //OPTIONS\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: 10,\r\n alignment:'justify'\r\n });\r\n pdf.pageMargins([ 60, 110, 60, 110]);\r\n\r\n pdf.background(\r\n [\r\n await new Img('../../../../assets/images/Skretting-logo.png').absolutePosition(405, 35).width(160).build()\r\n ]\r\n )\r\n\r\n pdf.add(\r\n [\r\n new Stack([\r\n new Txt('NOTIFICACION DE INCUMPLIMIENTO').margin([0,10,0,5]).fontSize(13).bold().alignment('center').end,\r\n new Txt('PERSONAL TERCERO').margin([0,0,0,25]).fontSize(13).alignment('center').bold().end,\r\n ]).margin([0,25,0,0]).end,\r\n new Columns([new Txt([new Txt('DE: ').end,new Txt('GISIS S.A.').end]).margin([0,0,0,5]).bold().fontSize(10).end]).end,\r\n new Columns([new Txt([new Txt('PARA: ').end,new Txt(`${this.c_obj['company']}`).end]).margin([0,0,0,5]).bold().fontSize(10).end]).end,\r\n new Columns([new Txt([new Txt('ASUNTO: ').end,new Txt(`${foult}`.toUpperCase()).end]).margin([0,0,0,5]).bold().fontSize(10).end,]).end,\r\n new Columns([new Txt([new Txt('FECHA: ').end,new Txt(`${this.globalService.formatOnlyDate(this.fechaActual)}`).end]).bold().fontSize(10).end]).margin([0,0,0,25]).end,\r\n new Txt(\r\n [\r\n new Txt('Por medio de la presente se da conocimiento la sanción al (los) Sr. (a)(s)').end,\r\n new Txt(this.c_obj['NameEmployee'].toUpperCase()).bold().end,\r\n new Txt(', con cédula de identidad ').end,\r\n new Txt(this.c_obj['NumberIdentification']).bold().end,\r\n new Txt(' como consecuencia de la ').end,\r\n new Txt(foult.toUpperCase()).bold().end,\r\n new Txt(' las normas establecidas de HSE en la empresa GISIS S.A., la misma que corresponde a:').end,\r\n ]\r\n ).margin([0,0,0,20]).end,\r\n new Txt(this.descriptionFoul.toUpperCase()).italics().margin([0,0,0,35]).bold().end,\r\n new Txt(\r\n [\r\n new Txt('La cual corresponde a la ').end,\r\n new Txt(this.contadorFaltas.toString() + '° ' + foult.toUpperCase() + ': ').bold().end,\r\n new Txt(sanction.toUpperCase()).end,\r\n ]\r\n ).margin([0,0,0,35]).end,\r\n new Txt(\"Con este documento se deja constancia del incumplimiento y a su vez se espera su compromiso de evitar reincidencias/sanciones en nuestras instalaciones\")\r\n .margin([0,0,0,20])\r\n .end,\r\n new Txt(\"Atentamente\").margin([0,0,0,10]).bold().end,\r\n // new Txt(this.userinfo['name'].toUpperCase()).end,\r\n new Txt(('Departamento HSE').toUpperCase()).end,\r\n new Txt(('GISIS S.A.')).end,\r\n ]\r\n )\r\n\r\n // pdf.create().open();\r\n pdf.create().getBase64(base64 => {\r\n // console.log(base64)\r\n var to:any; \r\n to = {};\r\n to['_id'] = id;\r\n to['_pdfbase64'] = base64;\r\n let qst = API_UNSAFE_SEND_MAIL;\r\n this.srv.postCall(qst ,to).subscribe(x => {\r\n Swal.close();\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n })\r\n }\r\n\r\n public gotoPlan(UnsafeActId) {\r\n this.router.navigate(['plan/'],{ queryParams: {\r\n id: UnsafeActId,\r\n type: 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
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'worker_name' | translate}}{{'company' | translate}}{{'date' | translate}}{{'requiredby' | translate}}{{'status' | translate}}{{'action' | translate}}
{{row.UnsafeActId}}{{row.Name}}{{row.CompanyName}}{{row.Date.split('T')[0]}}{{row.Requiredby}}{{row.StatusInsp == '1' ? 'Cerrada' : 'Abierta'}}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'create_item' | translate}}

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

{{'select_type_worker' | translate}}

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

{{'select_work_perm' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n {{'any' | translate}}\r\n {{pw.WorkAuthId}}\r\n \r\n
\r\n
\r\n
\r\n
0\">\r\n
\r\n

{{'worker_names' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'ci' | translate}} {{'worker_name' | translate}} {{'position' | translate}} {{'job_to_do' | translate}}
{{emp.cod}}{{emp.name}}{{emp.position}}{{emp.typeJob}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

{{'data_details_request'| translate}}

\r\n
\r\n
**{{'detail_employees'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n

{{'should_register'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{f.NameFoul}}\r\n \r\n
\r\n
\r\n
\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.NameSan}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{rw.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

{{'should_register'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n {{rw.NameSeccion}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{f.NameFoul}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{fd.Name}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{s.NameSan}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'info_foul' | translate}}

\r\n
0, else mensaje\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'fault_type' | translate}}{{'quantity' | translate}}
{{foul.namefouls}}{{foul.quantity}}
\r\n
\r\n \r\n

{{'user_has_no_faults' | translate}}

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

{{'evidence'| translate}}

\r\n
\r\n
\r\n \r\n \r\n {{'only_2_pic' | translate}}\r\n
\r\n
\r\n
0\">\r\n \r\n
    \r\n
  1. \r\n {{a.name}}\r\n
  2. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'finish'| translate}}

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

{{'create_item' | translate}}

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

{{'data_details_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

{{'should_register'| translate}}

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

{{'evidence'| translate}}

\r\n
\r\n
\r\n \"{{'evidence'\r\n
\r\n
\r\n
\r\n

{{'finish'| translate}}

\r\n
\r\n
\r\n \r\n \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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../../base-crud/base-crud.component';\r\nimport { Storage } from '@ionic/storage';\r\nimport { environment } from 'src/environments/environment';\r\nimport { GlobalService } from 'src/app/services/main/global.service';\r\nimport Swal from 'sweetalert2';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\n\r\nconst API_CONSULTATYPEFALTA = environment.Global.API_CONSULTATYPEFALTA;\r\nconst API_CONSULTAFALTADETAIL = environment.Global.API_CONSULTAFALTADETAIL;\r\nconst API_SANCION = environment.Global.API_SANCION;\r\nconst GET_ALL_AREA_BY_ID = environment.Global.API_GET_ALL_AREA_BY_ID;\r\nconst GET_ALL_SITES_ACTIVE = environment.Global.API_GET_ALL_SITES_ACTIVE;\r\nconst API_GET_SEVERITY_TYPE_BY_ID = environment.Global.API_GET_SEVERITY_TYPE_BY_ID; \r\n\r\nconst API_CREATE_UNSAFECONDITION = environment.Global.API_CREATE_UNSAFECONDITION;\r\nconst API_UPDATE_UNSAFECONDITION= environment.Global.API_UPDATE_UNSAFECONDITION;\r\nconst API_ALL_UNSAFECONDITION= environment.Global.API_ALL_UNSAFECONDITION;\r\nconst API_ID_UNSAFECONDITION= environment.Global.API_ID_UNSAFECONDITION;\r\nconst API_UPDATESTATUS_UNSAFECONDITION= environment.Global.API_UPDATESTATUS_UNSAFECONDITION;\r\nconst API_GET_UNSAFECONDITION_BY_USER= environment.Global.API_GET_UNSAFECONDITION_BY_USER;\r\nconst API_UPLOAD_FILE_UNSAFECONDITION= environment.Global.API_UPLOAD_FILE_UNSAFECONDITION;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst API_UNSAFECONDITION_MAIL = environment.Global.API_UNSAFECONDITION_MAIL;\r\n\r\n@Component({\r\n selector: 'app-condinosecure',\r\n templateUrl: './condinosecure.component.html',\r\n styleUrls: ['./condinosecure.component.css']\r\n})\r\nexport class CondinosecureComponent extends BaseCrudComponent implements OnInit {\r\n list_type = [];\r\n fechaActual = new Date();\r\n list_workers = [{id: 1, type: 'Interno'},{id: 2, type:'Externo'}];\r\n workerId = 1;\r\n companyId = null;\r\n list_option_fault = [{id: 1, type: 'Sí'},{id: 2, type:'No'}];\r\n archivos=[];\r\n list_fouls = [];\r\n list_fouls_detail = [];\r\n list_sanction = [];\r\n row_plantas = [];\r\n row_plantas_area = [];\r\n userinfo: any;\r\n loadingList = false;\r\n isUpdating = false;\r\n iscreated = false;\r\n companies_list = [];\r\n getCompany = false;\r\n listfouls = [];\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private globalService: GlobalService,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.pageSize = 5\r\n this.search_fields = ['UnsafeConditionId','CategoryTypeName'];\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n this.c_obj['fault_type'] = null;\r\n this.c_obj['fault_associated'] = null;\r\n this.c_obj['type_sanction'] = null;\r\n this.c_obj['close_fault'] = 2;\r\n this.c_obj['category'] = null;\r\n this.c_obj['date'] = this.globalService.formatOnlyDate(this.fechaActual);\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n this.getList();\r\n });\r\n\r\n }\r\n\r\n public setTypeWorker() {\r\n // console.log(this.workerId)\r\n if(this.workerId == 2) {\r\n // this.c_obj['worker_perm'] = null; \r\n this.getCompanies();\r\n } else {\r\n this.companies_list = [];\r\n this.c_obj['companyID'] = null;\r\n }\r\n }\r\n\r\n public setCompany() {\r\n this.c_obj['companyID'] = this.companyId;\r\n \r\n this.getCompany = true;\r\n }\r\n \r\n public getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => { \r\n if(data.success) {\r\n if(data.val !== null){\r\n // console.log(data.val)\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push(\r\n {\r\n id: element.CompanyID, \r\n ruc: element.Ruc,\r\n name: element.Name,\r\n }\r\n );\r\n })\r\n }\r\n }\r\n })\r\n\r\n }\r\n\r\n public GetSeverityTypes() {\r\n var qst = API_GET_SEVERITY_TYPE_BY_ID + 'CATEGORY_TYPE';\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.list_type = [];\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n x.val.forEach(element => {\r\n this.list_type.push(\r\n {\r\n id: element.ID,\r\n type: element.value\r\n }\r\n );\r\n })\r\n }else {\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.GetSeverityTypes(); \r\n this.getTypeFouls();\r\n this.iscreated = true;\r\n this.GetPlantas();\r\n this.c_obj['category'] = null;\r\n this.c_obj['level'] = null;\r\n this.c_obj['area'] = null;\r\n this.c_obj['reportby'] = this.userinfo['logon'];\r\n this.modalService.open(content, { backdrop: 'static', size: 'lg' });\r\n }\r\n\r\n public handleInputChange(e){\r\n // console.log(e)\r\n this.archivos=[];\r\n var file = e.dataTransfer ? e.dataTransfer.files : e.target.files;\r\n // console.log(file)\r\n let files = Object.values(file);\r\n // console.log(files)\r\n files.forEach(element => {\r\n if (this.archivos.length < 2) {\r\n this.archivos.push(element);\r\n } else {\r\n return Swal.fire(this.translations.only_two_imgs,'','error');\r\n }\r\n });\r\n \r\n }\r\n\r\n public getTypeFouls () {\r\n let url = API_CONSULTATYPEFALTA;\r\n this.srv.getCall(url).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n this.list_fouls = x.val\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public getFouls(falta_id) {\r\n // console.log(falta_id)\r\n if (falta_id !== null) {\r\n let url = API_CONSULTAFALTADETAIL;\r\n let id = {FoulTypeID: falta_id}; \r\n this.c_obj['fault_associated'] = null;\r\n this.srv.postCall(url, id).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n this.list_fouls_detail = x.val;\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n this.getSanction(falta_id);\r\n } else {\r\n this.c_obj['fault_associated'] = null;\r\n this.c_obj['type_sanction'] = null;\r\n }\r\n }\r\n\r\n public getSanction(falta_id) {\r\n let url = API_SANCION;\r\n let id = {FoulTypeID: falta_id};\r\n this.srv.postCall(url, id).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n this.list_sanction = x.val;\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public GetPlantas() {\r\n var qst = GET_ALL_SITES_ACTIVE;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.row_plantas = [];\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas = rs;\r\n // console.log(this.row_plantas)\r\n }else {\r\n this.row_plantas = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n public searchArea() {\r\n this.setLevelArea();\r\n }\r\n\r\n public setLevelArea() {\r\n if ( this.iscreated) {\r\n var qst = GET_ALL_AREA_BY_ID + this.c_obj['level'];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n // console.log(rs);\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n } else {\r\n var qst = GET_ALL_AREA_BY_ID + this.u_obj['level'];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n // console.log(rs);\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n \r\n }\r\n\r\n public changeValueFoult() {\r\n if(this.c_obj['close_fault'] == 2) {\r\n this.c_obj['samp_comment'] = null;\r\n }\r\n }\r\n\r\n public gotoPlan(UnsafeConditionId) {\r\n this.router.navigate(['plan/'],{ queryParams: {\r\n id: UnsafeConditionId,\r\n type: 2\r\n }});\r\n }\r\n\r\n public validateCreateInfo(fields:any): boolean {\r\n let internalWorker:any = {};\r\n internalWorker = new FormGroup({\r\n 'category': new FormControl(fields.category, [Validators.required]),\r\n 'date': new FormControl(fields.date, [Validators.required]),\r\n 'reportby': new FormControl(fields.reportby, [Validators.required]),\r\n 'level': new FormControl(fields.level, [Validators.required]),\r\n 'area': new FormControl(fields.area, [Validators.required]),\r\n 'fault_type': new FormControl(fields.fault_type, [Validators.required]),\r\n 'fault_associated': new FormControl(fields.fault_associated, [Validators.required]),\r\n 'type_sanction': new FormControl(fields.type_sanction, [Validators.required]),\r\n 'observation_ha': new FormControl(fields.observation_ha, [Validators.required])\r\n\r\n });\r\n return internalWorker.valid;\r\n }\r\n \r\n\r\n public async createItem(modal, object) {\r\n // console.log(object)\r\n // console.log(this.c_obj['companyID'])\r\n this.isCreating = true;\r\n let validated = this.validateCreateInfo(object);\r\n\r\n if( !validated ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error'); \r\n return;\r\n }\r\n\r\n if(this.workerId == 2) {\r\n if (this.c_obj['companyID'] == null) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error'); \r\n return;\r\n }\r\n }\r\n\r\n if (this.archivos.length == 0) {\r\n return Swal.fire(this.translations.should_upload_imgs, '','error');\r\n }\r\n\r\n if(object['close_fault'] == 1 && object['samp_comment'] == null) {\r\n return Swal.fire(this.translations.add_comment_act, '','error');\r\n }\r\n\r\n let new_obj = {\r\n CategoryTypeId: object['category'],\r\n Date: object['date'],\r\n PlantaID: object['level'],\r\n SeccionID: object['area'],\r\n FoulTypeID: object['fault_type'],\r\n ParaDetaFoulID: object['fault_associated'],\r\n SanctionID: object['type_sanction'],\r\n Photos: '',\r\n Commentary: object['samp_comment'] == null ? '' : object['samp_comment'],\r\n StatusInsp: object['close_fault'],\r\n Observation: object['observation_ha'],\r\n CreatorUser: this.userinfo['logon'],\r\n WorkerTypeId: this.workerId,\r\n }\r\n\r\n if (this.c_obj['companyID'] !== null) {\r\n new_obj['CompanyID'] = this.c_obj['companyID'];\r\n }\r\n\r\n console.log(new_obj)\r\n\r\n this.srv.postCall(API_CREATE_UNSAFECONDITION, new_obj).toPromise().then( (data)=> {\r\n this.isCreating = true;\r\n if(data.success){\r\n this.c_obj = {};\r\n this.sendPhotos(data);\r\n if (new_obj.StatusInsp == 2) {\r\n this.gotoPlan(data.val['UnsafeConditionId']);\r\n }\r\n Swal.fire(this.translations.msg_create,'', 'success');\r\n this.getList();\r\n this.sendMail(data.val);\r\n this.isCreating = false;\r\n this.closeModal(modal);\r\n this.workerId = 1;\r\n this.companyId = null;\r\n this.c_obj['fault_type'] = null;\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isCreating = false;\r\n });\r\n\r\n // this.createReportToSend();\r\n }\r\n\r\n public async sendPhotos(data?) {\r\n // console.log(data)\r\n let formData = new FormData();\r\n for(let file of this.archivos) {\r\n formData.append(file.name, file);\r\n }\r\n formData.append('user',this.userinfo['logon']);\r\n formData.append('UnsafeConditionId', data.val.UnsafeConditionId);\r\n // console.log(formData);\r\n // await this.srv.AddFiles(API_UPLOAD_FILE_UNSAFECONDITION, formData).toPromise().then(result => {\r\n // if (result==\"OK\") {\r\n // this.archivos=[];\r\n // }\r\n // else{\r\n // Swal.fire(this.translations.evidence, result, 'error');\r\n // this.archivos=[];\r\n // // this.getList();\r\n // }\r\n // });\r\n }\r\n\r\n public getList() {\r\n this.loadingList = true; \r\n Swal.fire(\r\n {\r\n title: this.translations.loading,\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.getCall(API_GET_UNSAFECONDITION_BY_USER + this.userinfo['logon']).subscribe(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n this.rows = this.rawdata;\r\n console.log(this.rows)\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n Swal.close()\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n\r\n public deleteInsp (row) {\r\n this.ActivarItem(row.UnsafeConditionId,3);\r\n }\r\n\r\n public ActivarItem(id:any, accion:any): void\r\n {\r\n var to:any;\r\n to = {};\r\n to.UnsafeConditionId = id;\r\n to.Status = accion;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n // console.log(to)\r\n this.srv.postCall(API_UPDATESTATUS_UNSAFECONDITION, to).subscribe(x => {\r\n // Swal.close();\r\n if(x.success){\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n edit (modal, object) {\r\n this.u_obj['fault_type'] = null;\r\n this.iscreated = false;\r\n this.GetPlantas();\r\n this.GetSeverityTypes();\r\n this.getTypeFouls();\r\n // this.getTypeFouls();\r\n // let new_obj = {\r\n // CategoryTypeId: object['category'],\r\n // Date: object['date'],\r\n // PlantaID: object['level'],\r\n // SeccionID: object['area'],\r\n // FoulTypeID: object['fault_type'],\r\n // ParaDetaFoulID: object['fault_associated'],\r\n // SanctionID: object['type_sanction'],\r\n // Photos: '',\r\n // Commentary: object['samp_comment'] == null ? '' : object['samp_comment'],\r\n // StatusInsp: object['close_fault'],\r\n // CreatorUser: this.userinfo['logon']\r\n // }\r\n console.log(object) ;\r\n this.u_obj['category'] = object['CategoryTypeId'];\r\n this.u_obj['level'] = object['PlantaID'];\r\n this.searchArea();\r\n this.u_obj['area'] = object['SeccionID'];\r\n this.u_obj['date'] = object['Date'].split('T')[0];\r\n this.u_obj['fault_type'] = object['FoulTypeID'];\r\n this.getFouls(this.u_obj['fault_type']);\r\n this.u_obj['fault_associated'] = object['ParaDetaFoulID'];\r\n // this.getSanction(this.u_obj['fault_associated']);\r\n this.u_obj['type_sanction'] = object['SanctionID'];\r\n this.u_obj['samp_comment'] = object['Commentary'];\r\n this.u_obj['close_fault'] = object['StatusInsp'];\r\n this.u_obj['observation_ha'] = object['Observation'];\r\n this.u_obj['reportby'] = object['CreatorUser'];\r\n this.u_obj['worker'] = object['WorkerTypeId'];\r\n this.u_obj['CompanyID'] = object['CompanyID'];\r\n this.u_obj['CodeEmployee'] = object['CodeEmployee'];\r\n this.u_obj['Name'] = object['Name'];\r\n // console.log(this.u_obj['fault_type'])\r\n // console.log(this.u_obj['fault_associated'])\r\n // console.log(this.u_obj['type_sanction'])\r\n this.modalService.open(modal, { backdrop: 'static', size: 'lg' });\r\n }\r\n\r\n public sendMail(to ) {\r\n let url = API_UNSAFECONDITION_MAIL;\r\n console.log(to)\r\n this.srv.postCall(url ,to).subscribe(x => {\r\n Swal.close();\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'category' | translate}}{{'date' | translate}}{{'level' | translate}}{{'cmp_area' | translate}}{{'status' | translate}}{{'action' | translate}}
{{row.UnsafeConditionId}}{{row.CategoryTypeName}}{{row.Date.split('T')[0]}}{{row.PlantaName}}{{row.SeccionName}}{{row.StatusInsp == 'C' ? 'Cerrada' : 'Abierta'}}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'create_item' | translate}}

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

{{'select_type_worker' | translate}}

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

{{'select_company' | translate}}

\r\n \r\n \r\n {{company.name}}\r\n \r\n
\r\n
\r\n
\r\n

{{'detail_inspection'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n {{lt.type}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{rw.Name}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{rw.NameSeccion}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{f.NameFoul}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{fd.Name}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{s.NameSan}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'info_foul' | translate}}

\r\n
0, else mensaje\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'fault_type' | translate}}{{'quantity' | translate}}
{{foul.namefouls}}{{foul.quantity}}
\r\n
\r\n \r\n

{{'user_has_no_faults' | translate}}

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

{{'evidence'| translate}}

\r\n
\r\n
\r\n \r\n \r\n {{'only_2_pic' | translate}}\r\n
\r\n
\r\n
0\">\r\n \r\n
    \r\n
  1. \r\n {{a.name}}\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

{{'finish'| translate}}

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

{{'edit_item' | translate}}

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

{{'worker'| translate}}

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

{{'company'| translate}}

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

{{'detail_inspection'| translate}}

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

{{'evidence'| translate}}

\r\n
\r\n
\r\n \r\n \r\n {{'only_2_pic' | translate}}\r\n
\r\n
\r\n
0\">\r\n \r\n
    \r\n
  1. \r\n {{a.name}}\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

{{'finish'| translate}}

\r\n
\r\n
\r\n \r\n \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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../../base-crud/base-crud.component';\r\nimport { Storage } from '@ionic/storage';\r\nimport { environment } from 'src/environments/environment';\r\nimport { GlobalService } from 'src/app/services/main/global.service';\r\nimport Swal from 'sweetalert2';\r\nimport { LoginService } from 'src/app/services/authentication/login.service';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\n\r\n\r\nconst API_CREATE_ACCIDENTEINCIDENT = environment.Global.API_CREATE_ACCIDENTEINCIDENT;\r\nconst API_UPDATE_ACCIDENTEINCIDENT = environment.Global.API_UPDATE_ACCIDENTEINCIDENT;\r\nconst API_UPDATESTATUS_ACCIDENTEINCIDENT = environment.Global.API_UPDATESTATUS_ACCIDENTEINCIDENT;\r\nconst API_GET_ACCIDENTEINCIDENT = environment.Global.API_GET_ACCIDENTEINCIDENT;\r\nconst API_GET_ACCIDENTEINCIDENTBYID = environment.Global.API_GET_ACCIDENTEINCIDENTBYID;\r\nconst API_UPLOAD_FILE_ACCIDENTEINCIDENT = environment.Global.API_UPLOAD_FILE_ACCIDENTEINCIDENT;\r\nconst GET_EMPLOYEE_BY_IDENTIFICATION = environment.Global.API_GET_EMPLOYEE_BY_IDENTIFICATION;\r\nconst API_GET_SEVERITY_TYPE_BY_ID = environment.Global.API_GET_SEVERITY_TYPE_BY_ID; \r\nconst GET_ALL_SITES_ACTIVE = environment.Global.API_GET_ALL_SITES_ACTIVE;\r\nconst GET_ALL_AREA_BY_ID = environment.Global.API_GET_ALL_AREA_BY_ID;\r\n\r\n@Component({\r\n selector: 'app-incident',\r\n templateUrl: './incident.component.html',\r\n styleUrls: ['./incident.component.css']\r\n})\r\nexport class IncidentComponent extends BaseCrudComponent implements OnInit {\r\n fechaActual = new Date();\r\n list_injury = [];\r\n list_workers = [{id: 1, type: 'Interno'},{id: 2, type:'Externo'}];\r\n list_option_fault = [{id: 1, type: 'Sí'},{id: 2, type:'No'}];\r\n archivos=[];\r\n list_incad = [{id: 1, type: 'Incidente'},{id: 2, type:'Accidente'}];\r\n workerId = 1;\r\n \r\n row_plantas = [];\r\n row_plantas_area = [];\r\n \r\n isCreating = false;\r\n isUpdating = false;\r\n loadingList = false;\r\n userinfo: any;\r\n modalCreate = false;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private globalService: GlobalService,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n \r\n // this.getTypeFouls();\r\n this.search_fields = ['AccIncId','Name'];\r\n this.c_obj['typeinac'] = 1;\r\n this.c_obj['date'] = this.globalService.formatOnlyDate(this.fechaActual);\r\n\r\n this.GetSeverityTypes();\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n console.log(this.userinfo)\r\n });\r\n \r\n }\r\n\r\n public onlyNumberKey(event: any): boolean {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n public GetEmployeeforIdentification(obj:any,val:any) {\r\n var qst = GET_EMPLOYEE_BY_IDENTIFICATION + obj;\r\n if (obj === \"\")\r\n {\r\n return;\r\n }\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.c_obj['NameEmployee'] = x.val['Name'];\r\n this.c_obj['EmployeeId'] = x.val['EmployeeId'];\r\n this.c_obj['CompanyID'] = x.val['CompanyID'];\r\n } else {\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n \r\n public handleInputChange(e){\r\n // console.log(e)\r\n this.archivos=[];\r\n var file = e.dataTransfer ? e.dataTransfer.files : e.target.files;\r\n console.log(file)\r\n let files = Object.values(file);\r\n console.log(files)\r\n files.forEach(element => {\r\n if (this.archivos.length < 2) {\r\n this.archivos.push(element);\r\n } else {\r\n return Swal.fire(this.translations.only_two_imgs,'','error');\r\n }\r\n });\r\n \r\n }\r\n\r\n public setTypeWorker() {\r\n // console.log(this.workerId)\r\n if(this.workerId == 2) {\r\n this.c_obj['worker_perm'] = null;\r\n }\r\n }\r\n\r\n\r\n public openCreateModal(content: any) {\r\n this.c_obj['reportby'] = this.userinfo['logon'];\r\n this.c_obj['level'] = null;\r\n this.c_obj['cmp_area'] = null;\r\n this.c_obj['severity_of_injury'] = null;\r\n this.modalCreate = true;\r\n this.modalService.open(content, { backdrop: 'static', size: 'lg' });\r\n }\r\n\r\n public getList() {\r\n this.loadingList = true; \r\n Swal.fire(\r\n {\r\n title: this.translations['loading'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.getCall(API_GET_ACCIDENTEINCIDENT).subscribe(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n this.rows = this.rawdata;\r\n console.log(this.rows)\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n Swal.close()\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n this.GetPlantas();\r\n }\r\n\r\n\r\n public GetPlantas() {\r\n var qst = GET_ALL_SITES_ACTIVE;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.row_plantas = [];\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas = rs;\r\n // console.log(this.row_plantas)\r\n }else {\r\n this.row_plantas = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public GetSeverityTypes() {\r\n var qst = API_GET_SEVERITY_TYPE_BY_ID + 'SEVERITY_TYPE';\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.list_injury = [];\r\n if(x.success){\r\n if(x.val != null){\r\n console.log(x.val)\r\n x.val.forEach(element => {\r\n this.list_injury.push(\r\n {\r\n id: element.ID,\r\n type: element.value\r\n }\r\n );\r\n })\r\n }else {\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public searchArea() {\r\n if (this.modalCreate) {\r\n if (this.c_obj['level'] !== null) {\r\n var qst = GET_ALL_AREA_BY_ID + this.c_obj['level'];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n } else {\r\n this.c_obj['cmp_area'] = null;\r\n }\r\n } else {\r\n if (this.u_obj['level'] !== null) {\r\n var qst = GET_ALL_AREA_BY_ID + this.u_obj['level'];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }else {\r\n this.u_obj['cmp_area'] = null;\r\n }\r\n \r\n }\r\n \r\n }\r\n \r\n public validateCreateInfo(fields:any): boolean {\r\n let inciacci:any = {};\r\n inciacci = new FormGroup({\r\n 'NumberIdentification': new FormControl(fields.NumberIdentification, [Validators.required]),\r\n 'NameEmployee': new FormControl(fields.NameEmployee, [Validators.required]),\r\n 'severity_of_injury': new FormControl(fields.severity_of_injury, [Validators.required]),\r\n 'level': new FormControl(fields.level, [Validators.required]),\r\n 'boss_inme': new FormControl(fields.boss_inme, [Validators.required]),\r\n 'mail_boss': new FormControl(fields.mail_boss, [Validators.required]),\r\n 'cmp_area': new FormControl(fields.cmp_area, [Validators.required]),\r\n 'medt_take': new FormControl(fields.medt_take, [Validators.required]),\r\n 'witness': new FormControl(fields.witness, [Validators.required])\r\n\r\n });\r\n console.log(inciacci)\r\n return inciacci.valid;\r\n }\r\n\r\n\r\n public createItem(modal, object) {\r\n this.isCreating = true;\r\n let validated = this.validateCreateInfo(object);\r\n if( !validated ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n if (this.archivos.length == 0) {\r\n this.isCreating = false;\r\n return Swal.fire(this.translations.should_upload_imgs, '','error');\r\n }\r\n\r\n let new_obj = {\r\n WorkerTypeId: this.workerId,\r\n AccIncType: object['typeinac'],\r\n Date: object['date'],\r\n SeverityType: object['severity_of_injury'],\r\n CompanyID: object['CompanyID'],\r\n EmployeeId: object['EmployeeId'],\r\n PlantaID: object['level'],\r\n SeccionID: object['cmp_area'],\r\n Reportby: object['reportby'],\r\n Photos: '',\r\n Measures: object['medt_take'],\r\n Witnesses: object['witness'],\r\n BossInmediatly: object['boss_inme'],\r\n MailBoss: object['mail_boss'],\r\n CreatorUser: this.userinfo['logon']\r\n }\r\n\r\n console.log(new_obj)\r\n\r\n this.srv.postCall(API_CREATE_ACCIDENTEINCIDENT, new_obj).toPromise().then( (data)=> {\r\n this.isCreating = true;\r\n if(data.success){\r\n this.c_obj = {};\r\n this.sendPhotos(data);\r\n Swal.fire(this.translations.msg_create,'', 'success');\r\n this.getList();\r\n this.isCreating = false;\r\n this.closeModal(modal);\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isCreating = false;\r\n });\r\n }\r\n\r\n public async sendPhotos(data?) {\r\n let formData = new FormData();\r\n for(let file of this.archivos) {\r\n formData.append(file.name, file);\r\n }\r\n formData.append('CompanyID', this.c_obj['CompanyID']);\r\n formData.append('TypeWorker', this.workerId == 1 ? 'Interno': 'Externo');\r\n formData.append('AccIncId', data.val.AccIncId);\r\n // await this.srv.AddFiles(API_UPLOAD_FILE_ACCIDENTEINCIDENT, formData).toPromise().then(result => {\r\n // if (result==\"OK\") {\r\n // this.archivos=[];\r\n // }\r\n // else{\r\n // Swal.fire(this.translations.evidence, result, 'error');\r\n // this.archivos=[];\r\n // }\r\n // });\r\n }\r\n\r\n public edit(modal, row) {\r\n console.log(row)\r\n this.modalCreate = false;\r\n this.modalService.open(modal, { backdrop: 'static', size: 'lg' });\r\n this.workerId = row['WorkerTypeId'];\r\n this.u_obj['AccIncId'] = row['AccIncId'];\r\n this.u_obj['reportby'] = this.userinfo['logon'];\r\n this.u_obj['date'] = row['Date'].split('T')[0];\r\n this.u_obj['typeinac'] = row['AccIncType'];\r\n this.u_obj['NameEmployee'] = row['Name'];\r\n this.u_obj['NumberIdentification'] = row['NumberIdentification'];\r\n this.u_obj['severity_of_injury'] = row['SeverityType'];\r\n this.u_obj['level'] = row['PlantaID'];\r\n this.searchArea();\r\n this.u_obj['boss_inme'] = row['BossInmediatly'];\r\n this.u_obj['mail_boss'] = row['MailBoss'];\r\n this.u_obj['cmp_area'] = row['SeccionID'];\r\n this.u_obj['medt_take'] = row['Measures'];\r\n this.u_obj['witness'] = row['Witnesses'];\r\n this.u_obj['CompanyID'] = row['CompanyID'];\r\n this.u_obj['EmployeeId'] = row['EmployeeId'];\r\n if (row['WorkerTypeId'] == 1) {\r\n this.u_obj['code'] = row['CodeEmployee'];\r\n }\r\n \r\n }\r\n\r\n\r\n public updateItem(modal, u_obj) {\r\n this.isUpdating = true;\r\n let values = Object.values(u_obj);\r\n if (values.includes(null)) {\r\n this.isUpdating = false;\r\n return Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n }\r\n let new_obj = {\r\n AccIncId: u_obj['AccIncId'],\r\n SeverityType: u_obj['severity_of_injury'],\r\n CodeEmployee: u_obj['CodeEmployee'] !== undefined ? u_obj['CodeEmployee'] : null,\r\n CompanyID: u_obj['CompanyID'],\r\n EmployeeId: u_obj['EmployeeId'],\r\n PlantaID: u_obj['level'],\r\n SeccionID: u_obj['cmp_area'],\r\n Measures: u_obj['medt_take'],\r\n Witnesses: u_obj['witness'],\r\n BossInmediatly: u_obj['boss_inme'],\r\n MailBoss: u_obj['mail_boss'],\r\n LastModifierUser: this.userinfo['logon'],\r\n }\r\n this.srv.postCall(API_UPDATE_ACCIDENTEINCIDENT, new_obj).toPromise().then( (data)=> {\r\n this.isUpdating = false;\r\n if(data.success){\r\n this.c_obj = {};\r\n if (this.archivos.length > 0) {\r\n this.sendPhotos(data);\r\n }\r\n Swal.fire(this.translations.msg_update,'', 'success');\r\n this.getList();\r\n this.isUpdating = false;\r\n this.closeModal(modal);\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = false;\r\n });\r\n }\r\n\r\n public deleteAccInc(row) {\r\n this.ActivarItem(row.AccIncId,3);\r\n }\r\n\r\n public ActivarItem(id:any, accion:any): void\r\n {\r\n var to:any;\r\n to = {};\r\n to.AccIncId = id;\r\n to.Status = accion;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n // console.log(to)\r\n this.srv.postCall(API_UPDATESTATUS_ACCIDENTEINCIDENT, to).subscribe(x => {\r\n Swal.close();\r\n if(x.success){\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'worker_name' | translate}}{{'company' | translate}}{{'date' | translate}}{{'requiredby' | translate}}{{'severity_of_injury' | translate}}{{'action' | translate}}
{{row.AccIncId}}{{row.Name}}{{row.Company.Name}}{{row.Date.split('T')[0]}}{{row.Reportby}}{{row.SeverityTypeName}}\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n

{{'create_item' | translate}}

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

{{'detail_incident'| translate}}

\r\n

{{'detail_accident'| translate}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{lt.type}}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{rw.Name}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{rw.NameSeccion}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n

{{'evidence'| translate}}

\r\n
\r\n
\r\n \r\n \r\n {{'only_2_pic' | translate}}\r\n
\r\n
\r\n
0\">\r\n \r\n
    \r\n
  1. \r\n {{a.name}}\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
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n

{{'edit_item' | translate}}

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

{{'detail_incident'| translate}}

\r\n

{{'detail_accident'| translate}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{lt.type}}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{rw.NameSeccion}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{rw.NameSeccion}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n

{{'evidence'| translate}}

\r\n
\r\n
\r\n \r\n \r\n {{'only_2_pic' | translate}}\r\n
\r\n
\r\n
0\">\r\n \r\n
    \r\n
  1. \r\n {{a.name}}\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
\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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../../base-crud/base-crud.component';\r\nimport { Storage } from '@ionic/storage';\r\nimport { environment } from 'src/environments/environment';\r\nimport { GlobalService } from 'src/app/services/main/global.service';\r\nimport Swal from 'sweetalert2';\r\nimport { LoginService } from 'src/app/services/authentication/login.service';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\n\r\nconst API_CONSULTATYPEFALTA = environment.Global.API_CONSULTATYPEFALTA;\r\nconst API_CONSULTAFALTADETAIL = environment.Global.API_CONSULTAFALTADETAIL;\r\nconst API_SANCION = environment.Global.API_SANCION;\r\nconst API_GET_SEVERITY_TYPE_BY_ID = environment.Global.API_GET_SEVERITY_TYPE_BY_ID;\r\nconst GET_ALL_SITES_ACTIVE = environment.Global.API_GET_ALL_SITES_ACTIVE;\r\nconst GET_ALL_AREA_BY_ID = environment.Global.API_GET_ALL_AREA_BY_ID;\r\nconst API_UPLOAD_FILE_BETTER = environment.Global.API_UPLOAD_FILE_BETTER;\r\nconst API_CREATE_BETTER = environment.Global.API_CREATE_BETTER;\r\nconst API_UPDATE_BETTER = environment.Global.API_UPDATE_BETTER;\r\nconst API_ALL_BETTER = environment.Global.API_ALL_BETTER;\r\nconst API_ID_BETTER = environment.Global.API_ID_BETTER;\r\nconst API_UPDATESTATUS_BETTER = environment.Global.API_UPDATESTATUS_BETTER;\r\nconst API_GET_BETTER_BY_USER = environment.Global.API_GET_BETTER_BY_USER;\r\n\r\n@Component({\r\n selector: 'app-oportunitymejor',\r\n templateUrl: './oportunitymejor.component.html',\r\n styleUrls: ['./oportunitymejor.component.css']\r\n})\r\nexport class OportunitymejorComponent extends BaseCrudComponent implements OnInit {\r\n fechaActual = new Date();\r\n archivos=[];\r\n list_incidence = [];\r\n userinfo;\r\n row_plantas = [];\r\n row_plantas_area = [];\r\n modalCreate = false;\r\n loadingList = false;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private globalService: GlobalService,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n \r\n // this.getTypeFouls();\r\n this.search_fields = ['GetsBetterId','IncidentTypeName'];\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n this.getList();\r\n });\r\n \r\n }\r\n\r\n public validateCreateInfo(fields:any): boolean {\r\n let oport:any = {};\r\n oport = new FormGroup({\r\n 'level': new FormControl(fields.level, [Validators.required]),\r\n 'area': new FormControl(fields.area, [Validators.required]),\r\n 'incidence': new FormControl(fields.incidence, [Validators.required]),\r\n 'observation': new FormControl(fields.observation, [Validators.required])\r\n });\r\n return oport.valid;\r\n }\r\n\r\n\r\n public handleInputChange(e){\r\n // console.log(e)\r\n this.archivos=[];\r\n var file = e.dataTransfer ? e.dataTransfer.files : e.target.files;\r\n console.log(file)\r\n let files = Object.values(file);\r\n console.log(files)\r\n files.forEach(element => {\r\n if (this.archivos.length < 2) {\r\n this.archivos.push(element);\r\n } else {\r\n return Swal.fire(this.translations.only_two_imgs,'','error');\r\n }\r\n });\r\n \r\n }\r\n\r\n\r\n public getList() {\r\n this.loadingList = true; \r\n Swal.fire(\r\n {\r\n title: this.translations['loading'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.getCall(API_GET_BETTER_BY_USER + this.userinfo['logon']).subscribe(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n this.rows = this.rawdata;\r\n console.log(this.rows)\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n Swal.close()\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n this.GetSeverityTypes()\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n \r\n this.c_obj['date'] = this.globalService.formatOnlyDate(this.fechaActual);\r\n this.c_obj['reportby'] = this.userinfo['logon'];\r\n this.c_obj['level'] = null;\r\n this.c_obj['area'] = null;\r\n this.c_obj['incidence'] = null;\r\n this.modalCreate = true;\r\n this.modalService.open(content, { backdrop: 'static', size: 'lg' });\r\n this.GetPlantas();\r\n }\r\n\r\n public GetSeverityTypes() {\r\n var qst = API_GET_SEVERITY_TYPE_BY_ID + 'INCIDENT_TYPE';\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.list_incidence = [];\r\n if(x.success){\r\n if(x.val != null){\r\n console.log(x.val)\r\n x.val.forEach(element => {\r\n this.list_incidence.push(\r\n {\r\n id: element.ID,\r\n type: element.value\r\n }\r\n );\r\n })\r\n }else {\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public GetPlantas() {\r\n var qst = GET_ALL_SITES_ACTIVE;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.row_plantas = [];\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas = rs;\r\n console.log(this.row_plantas)\r\n }else {\r\n this.row_plantas = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public searchArea() {\r\n\r\n if (this.modalCreate) {\r\n if (this.c_obj['level'] !== null) {\r\n var qst = GET_ALL_AREA_BY_ID + this.c_obj['level'];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n console.log(this.row_plantas_area)\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n\r\n } else {\r\n this.c_obj['area'] = null;\r\n }\r\n } else {\r\n if (this.u_obj['level'] !== null) {\r\n\r\n var qst = GET_ALL_AREA_BY_ID + this.u_obj['level'];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n console.log(this.row_plantas_area)\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }else {\r\n this.u_obj['area'] = null;\r\n }\r\n }\r\n \r\n }\r\n\r\n public createItem(modal, object) {\r\n this.isCreating = true;\r\n let validated = this.validateCreateInfo(object);\r\n if( !validated ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n if (this.archivos.length == 0) {\r\n this.isCreating = false;\r\n return Swal.fire(this.translations.should_upload_imgs, '','error');\r\n }\r\n\r\n let new_obj = {\r\n IncidentId: this.c_obj['incidence'],\r\n PlantaID: this.c_obj['level'],\r\n SeccionID: this.c_obj['area'],\r\n Date: this.c_obj['date'],\r\n Photos: '',\r\n Observation: this.c_obj['observation'],\r\n CreatorUser: this.userinfo['logon']\r\n }\r\n this.srv.postCall(API_CREATE_BETTER, new_obj).toPromise().then( (data)=> {\r\n \r\n if(data.success){\r\n this.c_obj = {};\r\n this.sendPhotos(data);\r\n this.gotoPlan(data.val['GetsBetterId']);\r\n Swal.fire(this.translations.msg_create,'', 'success');\r\n this.getList();\r\n this.isCreating = false;\r\n this.closeModal(modal);\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isCreating = false;\r\n });\r\n\r\n }\r\n\r\n public async sendPhotos(data?) {\r\n let formData = new FormData();\r\n for(let file of this.archivos) {\r\n formData.append(file.name, file);\r\n }\r\n formData.append('user', this.userinfo['logon']);\r\n formData.append('GetsBetterId', data.val.GetsBetterId);\r\n // await this.srv.AddFiles(API_UPLOAD_FILE_BETTER, formData).toPromise().then(result => {\r\n // if (result==\"OK\") {\r\n // this.archivos=[];\r\n // }\r\n // else{\r\n // Swal.fire(this.translations.evidence, result, 'error');\r\n // this.archivos=[];\r\n // }\r\n // });\r\n }\r\n\r\n public deleteBetter(row) {\r\n this.ActivarItem(row.GetsBetterId,3);\r\n }\r\n\r\n public ActivarItem(id:any, accion:any): void\r\n {\r\n var to:any;\r\n to = {};\r\n to.GetsBetterId = id;\r\n to.Status = accion;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n // console.log(to)\r\n this.srv.postCall(API_UPDATESTATUS_BETTER, to).subscribe(x => {\r\n Swal.close();\r\n if(x.success){\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public edit(modal, object) {\r\n this.GetPlantas();\r\n this.modalCreate = false\r\n this.modalService.open(modal, { backdrop: 'static', size: 'lg' });\r\n this.u_obj['GetsBetterId'] = object['GetsBetterId'];\r\n this.u_obj['incidence'] = object['IncidentId'];\r\n this.u_obj['date'] = object['Date'].split('T')[0];\r\n this.u_obj['level'] = object['PlantaID'];\r\n this.searchArea();\r\n this.u_obj['area'] = object['SeccionID'];\r\n this.u_obj['observation'] = object['Observation'];\r\n this.u_obj['reportby'] = this.userinfo['logon'];\r\n\r\n }\r\n\r\n public updateItem(modal, object) {\r\n this.isUpdating = true;\r\n let x = Object.values(object);\r\n if (x.includes(null)) {\r\n this.isUpdating = false;\r\n return Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n }\r\n\r\n let new_obj = {\r\n GetsBetterId: object['GetsBetterId'],\r\n IncidentId: object['incidence'],\r\n PlantaID: object['level'],\r\n SeccionID: object['area'],\r\n Observation: object['observation'],\r\n LastModifierUser: this.userinfo['logon']\r\n }\r\n \r\n this.srv.postCall(API_UPDATE_BETTER, new_obj).toPromise().then( (data)=> {\r\n\r\n if(data.success){\r\n this.u_obj = {};\r\n if (this.archivos.length > 0) {\r\n this.sendPhotos(data);\r\n }\r\n Swal.fire(this.translations.msg_update,'', 'success');\r\n this.getList();\r\n this.isUpdating = false;\r\n this.closeModal(modal);\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = false;\r\n });\r\n }\r\n \r\n public gotoPlan(GetsBetterId) {\r\n this.router.navigate(['plan/'],{ queryParams: {\r\n id: GetsBetterId,\r\n type: 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
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'menu_incident' | translate}}{{'date' | translate}}{{'level' | translate}}{{'cmp_area' | translate}}{{'observation' | translate}}{{'action' | translate}}
{{row.GetsBetterId}}{{row.IncidentTypeName}}{{row.Date.split('T')[0]}}{{row.PlantaName}}{{row.SeccionName}}{{row.Observation}}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'create_item' | translate}}

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

{{'detail_mejor'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{rp.Name}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ra.NameSeccion}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n

{{'evidence'| translate}}

\r\n
\r\n
\r\n \r\n \r\n {{'only_2_pic' | translate}}\r\n
\r\n
\r\n
0\">\r\n \r\n
    \r\n
  1. \r\n {{a.name}}\r\n
  2. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{lt.type}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n

{{'edit_item' | translate}}

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

{{'detail_mejor'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{rp.Name}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ra.NameSeccion}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n

{{'evidence'| translate}}

\r\n
\r\n
\r\n \r\n \r\n {{'only_2_pic' | translate}}\r\n
\r\n
\r\n
0\">\r\n \r\n
    \r\n
  1. \r\n {{a.name}}\r\n
  2. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{lt.type}}\r\n \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 { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { Storage } from '@ionic/storage';\r\nimport { LoginService } from 'src/app/services/authentication/login.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-sapproval',\r\n templateUrl: './sapproval.component.html',\r\n styleUrls: ['./sapproval.component.css']\r\n})\r\nexport class SapprovalComponent implements OnInit {\r\n translations:any;\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n items:any;\r\n permissions = [];\r\n userinfo = [];\r\n isSkretting = false;\r\n\r\n constructor(\r\n public _router: Router,\r\n public translate: TranslateService,\r\n public auth: LoginService,\r\n private storage: Storage,\r\n private srv: ApiService,\r\n ) { }\r\n \r\n ngOnInit() {\r\n this.items = [\r\n {title: 'menu_act_nosecure', url: '/actnosecure', icon: 'mdi mdi-format-list-bulleted'},\r\n {title: 'menu_condi_nosecure', url: '/condinosecure', icon: 'mdi mdi-adjust'},\r\n {title: 'menu_incident_accident', url: '/incAc', icon: 'mdi mdi-adjust'},\r\n {title: 'menu_oportunity_mejor', url: '/oportunitymejor', icon: 'mdi mdi-adjust'},\r\n ];\r\n \r\n this.auth.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n \r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n }\r\n \r\n hasPermission(str:string){\r\n if( this.permissions.indexOf(str) > -1 ){\r\n return true;\r\n }\r\n else{\r\n return false;\r\n }\r\n }\r\n}","
\r\n
\r\n
\r\n
\r\n
\r\n
{{ row.title | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Storage } from '@ionic/storage';\r\n//import { isNull } from 'util';\r\nimport Swal from 'sweetalert2';\r\nimport { Cell, Columns, Img, Item, Line, PageReference, PdfMakeWrapper, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\nconst GET_ALL_EMPLOYEE = environment.Global.API_ALLEMPLOYEE;\r\nconst GET_ALL_ENTER_OUT_WORK = environment.Global.API_GET_ALL_ENTER_OUT_WORK;\r\nconst GET_ALL_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst CREATE_ENTER_OUT_WORK = environment.Global.API_CREATE_ENTER_OUT_WORK;\r\nconst UPDATE_ENTER_OUT_WORK = environment.Global.API_UPDATE_ENTER_OUT_WORK;\r\nconst VALIDATE_QR_EMPLOYEE = environment.Global.API_VALIDATE_QR_EMPLOYEE;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\n\r\n@Component({\r\n selector: 'app-workers-plant',\r\n templateUrl: './workers-plant.component.html',\r\n styleUrls: ['./workers-plant.component.css']\r\n})\r\nexport class WorkersPlantComponent extends BaseCrudComponent implements OnInit {\r\n date_init = null;\r\n date_end = null;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n isFind = false;\r\n userInfo;\r\n options_company = null;\r\n options_ruc = null;\r\n companies_list = [];\r\n ruc_list = [];\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n\r\n\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['Name'];\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n // console.log(x)\r\n });\r\n this.search_fields = ['Name'];\r\n this.getList();\r\n this.getCompanies();\r\n\r\n }\r\n\r\n getList() {\r\n // console.log(this.options_ruc, '-' , this.options_company);\r\n this.isFind = true;\r\n let url = GET_ALL_ENTER_OUT_WORK;\r\n if (this.date_init!== null && this.date_end === null) {\r\n this.date_init = null;\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_end_select,'','error');\r\n }\r\n if (this.date_end!== null && this.date_init === null) {\r\n this.date_end = null;\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_init_select,'','error');\r\n }\r\n if (this.date_end < this.date_init) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_error_date, this.translations.msg_error_date_end, 'error');\r\n }\r\n // FILTRO SELECCION TODO\r\n if (((this.date_init===null) && (this.date_end===null)) && (this.options_ruc == -1 || this.options_ruc == null) && (this.options_company == -1 || this.options_company == null)) {\r\n // console.log('1')\r\n this.srv.getCall(url).subscribe(data =>{\r\n if (data.success) {\r\n if (data.val !== null) {\r\n this.rawdata = data.val;\r\n this.rows = data.val;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.isFind = false\r\n this.filterAll();\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false\r\n return;\r\n }\r\n } else {\r\n Swal.fire(data.msg, '', 'error');\r\n this.isFind = false\r\n return;\r\n }\r\n })\r\n\r\n //FILTRO SOLO POR FECHAS\r\n } else if ((!(this.date_init===null) && !(this.date_end===null)) && (this.options_ruc == -1 || this.options_ruc == null) && (this.options_company == -1 || this.options_company == null)) {\r\n // console.log('2')\r\n let list_tmp = [];\r\n this.srv.getCall(url).subscribe(data =>{\r\n if (data.success) {\r\n if (data.val !== null) {\r\n this.rawdata = data.val;\r\n let new_list = [];\r\n list_tmp = data.val;\r\n list_tmp.forEach(tmp => {\r\n tmp.DateRegister = this.formatOnlyDate (new Date(tmp.DateRegister));\r\n if (tmp.DateRegister >= this.date_init && tmp.DateRegister <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n this.page = 1;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.isFind = false\r\n this.filterAll();\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false\r\n return;\r\n }\r\n\r\n } else {\r\n Swal.fire(data.msg, '', 'error');\r\n this.isFind = false\r\n return;\r\n }\r\n })\r\n // FILTRO POR EMPRESA\r\n } else if (((this.date_init===null) && (this.date_end===null)) && (this.options_ruc !== -1 || this.options_company !== -1)) {\r\n // console.log('3')\r\n // console.log(this.options_ruc, ' ---------------------- ', this.options_company)\r\n let list_tmp = [];\r\n this.srv.getCall(url).subscribe(data =>{\r\n if (data.success) {\r\n if (data.val !== null) {\r\n this.rawdata = data.val;\r\n let new_list = [];\r\n list_tmp = data.val;\r\n list_tmp.forEach(tmp => {\r\n tmp.DateRegister = this.formatOnlyDate (new Date(tmp.DateRegister));\r\n // console.log(tmp.CompanyID)\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n // console.log(tmp)\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n this.page = 1;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.isFind = false\r\n this.filterAll();\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false\r\n return;\r\n }\r\n\r\n } else {\r\n Swal.fire(data.msg, '', 'error');\r\n this.isFind = false\r\n return;\r\n }\r\n })\r\n // FILTRO POR TODO\r\n } else if ((!(this.date_init===null) && !(this.date_end===null)) && (this.options_ruc !== -1 || this.options_company !== -1)) {\r\n // console.log('4')\r\n let list_tmp = [];\r\n this.srv.getCall(url).subscribe(data =>{\r\n if (data.success) {\r\n if (data.val !== null) {\r\n this.rawdata = data.val;\r\n let new_list = [];\r\n list_tmp = data.val;\r\n list_tmp.forEach(tmp => {\r\n tmp.DateRegister = this.formatOnlyDate (new Date(tmp.DateRegister));\r\n if (tmp.DateRegister >= this.date_init && tmp.DateRegister <= this.date_end) {\r\n // console.log('esta en la fecha buscada')\r\n // console.log(tmp.CompanyID);\r\n // console.log(this.options_ruc);\r\n // console.log(this.options_company);\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n this.page = 1;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.isFind = false\r\n this.filterAll();\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false\r\n return;\r\n }\r\n\r\n } else {\r\n Swal.fire(data.msg, '', 'error');\r\n this.isFind = false\r\n return;\r\n }\r\n })\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}`: (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}`: date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}`: (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}`: date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}`: date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}`: date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}`: date.getSeconds().toString());\r\n }\r\n\r\n // filterAllWorkers(){\r\n // var fields = this.search_fields;\r\n // var resp:boolean;\r\n // var dummy:any;\r\n\r\n\r\n // if( !Array.isArray(fields) ){\r\n // return;\r\n // }\r\n\r\n // if( this.search == '' ){\r\n // this.rows = this.rawdata;\r\n // }\r\n // else{\r\n // if (this.rows.length == 0) {\r\n // this.rows = this.rawdata;\r\n // }\r\n // let test = this.rows.filter(s => {\r\n // resp = false;\r\n // fields.forEach(f => {\r\n // if( f.indexOf('array.') > -1 ){\r\n // let parts = f.split('.');\r\n // let f1 = parts[0];\r\n // let f2 = parts[1];\r\n // if( (s[f2] !== null) && (s[f2] !== undefined) ){\r\n // resp = resp || this.inArray(this.search, s[f2]);\r\n // }\r\n // }\r\n // else if( (s[f] !== null) && (s[f] !== undefined) ){\r\n // resp = resp || String(s[f]).toLowerCase().includes(this.search.toLowerCase());\r\n // }\r\n\r\n // });\r\n\r\n // return resp;\r\n // });\r\n\r\n // this.rows = test;\r\n // }\r\n\r\n // if( this.f1_val != '' ){\r\n // dummy = this.rows.filter(s => {\r\n // return s[this.f1_key] == this.f1_val;\r\n // });\r\n\r\n // this.rows = dummy;\r\n // }\r\n\r\n // if( this.f2_val != '' ){\r\n // dummy = this.rows.filter(s => {\r\n // return s[this.f2_key] == this.f2_val;\r\n // });\r\n\r\n // this.rows = dummy;\r\n // }\r\n\r\n // if( this.f3_val != '' ){\r\n // dummy = this.rows.filter(s => {\r\n // return s[this.f3_key] == this.f3_val;\r\n // });\r\n\r\n // this.rows = dummy;\r\n // }\r\n\r\n // this.pageTotal = this.rows.length;\r\n // }\r\n\r\n // inArray(str:any, arr:any){\r\n // let resp = false;\r\n\r\n // arr.forEach(x => {\r\n // x = x + '';\r\n\r\n // if( x.indexOf(str) > -1 ){\r\n // resp = true;\r\n // }\r\n // });\r\n\r\n // return resp;\r\n // }\r\n\r\n\r\n async downloadReport() {\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n const pdf = new PdfMakeWrapper();\r\n // INFORMATION IN TITLE NAV\r\n pdf.info({\r\n title: `${this.translations.worker_ext_report}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: 10,\r\n alignment:'justify'\r\n });\r\n pdf.pageMargins([ 40, 110, 40, 110]);\r\n // pdf.header(await\r\n // new Img('../../../../assets/images/logo-icon1.png')\r\n // .width('75')\r\n // //.alignment(\"right\")\r\n // .margin(20)\r\n // .build()\r\n // )\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0,30,30,0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n\r\n // pdf.background(\r\n // await new Img('../../../../assets/images/Skretting-footer.png').absolutePosition(0, 770).width(600).build()\r\n // )\r\n pdf.add(\r\n // TITLE\r\n [\r\n new Txt('Listado de trabajadores externos en planta').fontSize(14).bold().margin([0,0,0,20]).alignment('center').end,\r\n new Txt([new Txt('Fecha: ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n // new Txt([new Txt('Planta: ').bold().end, isNull(this.date_init) ? this.fecha_sin_formato: this.date_init ]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt('Solicitado por: ').bold().end,this.userInfo.name]).fontSize(10).alignment('left').margin([0,0,0,20]).end,\r\n new Table(\r\n [\r\n [\r\n new Cell( new Txt('Id').margin([0,5,0,5]).color('white').bold().end).end,\r\n new Cell( new Txt('Trabajador').margin([0,5,0,5]).color('white').bold().end).end,\r\n new Cell( new Txt('Contratista').margin([0,5,0,5]).color('white').bold().end).end,\r\n new Cell( new Txt('Planta').margin([0,5,0,5]).end,).color('white').bold().end,\r\n new Cell( new Txt('Fecha de ingreso').margin([0,5,0,5]).color('white').bold().end).end,\r\n new Cell( new Txt('# Ingresos').margin([0,5,0,5]).color('white').bold().end).end,\r\n new Cell( new Txt('# Salidas').margin([0,5,0,5]).color('white').bold().end).end\r\n ],\r\n ...this.convertDataToRow(this.rows)\r\n ]\r\n )\r\n .layout({\r\n fillColor: (rowIndex: number, node:any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .fontSize(8)\r\n .widths(['auto','*','*','*','auto','auto','auto'])\r\n .alignment('center')\r\n .end\r\n ]\r\n );\r\n\r\n pdf.footer( function(currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0,10,0,0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40,20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n let title = 'Reporte de Trabajadores externos en planta';\r\n pdf.create().download(title);\r\n Swal.close()\r\n }\r\n\r\n\r\n convertDataToRow (data) {\r\n // console.log(data)\r\n return data.map((row) =>\r\n [\r\n row.EnterOutWorkerId,\r\n row.Name,\r\n row.CompanyName,\r\n row.Planta[0],\r\n row.DateRegister.split('T')[0],\r\n row.DateEnter !== null ? row.DateEnter.split(',').length : 0,\r\n row.DateOut !== null ? row.DateOut.split(',').length : 0\r\n ]\r\n );\r\n }\r\n\r\n\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if(data.success) {\r\n if(data.val !== null){\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({id:element.CompanyID ,name: element.Name});\r\n this.ruc_list.push({id: element.CompanyID, ruc: element.Ruc});\r\n })\r\n }\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n if (this.options_company == -1 ) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc= 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
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'worker_name' | translate}} {{'company' | translate}} {{'level' | translate}} {{'date_ing' | translate}} {{'status' | translate}}
{{row.EnterOutWorkerId}}{{row.Name}}{{row.CompanyName}}{{row.Planta[0]}}{{row.DateRegister.split('T')[0]}}{{row.Status}}
\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoginService } from '../../../services/authentication/login.service';\r\nimport { PermissionService } from 'src/app/services/authentication/permission.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport {isNumeric} from \"rxjs/util/isNumeric\";\r\nimport {Storage} from \"@ionic/storage\";\r\n\r\n@Component({\r\n selector: 'app-formshome',\r\n templateUrl: './formshome.component.html',\r\n styleUrls: ['./formshome.component.css']\r\n})\r\nexport class FormshomeComponent implements OnInit {\r\n\r\n \ttranslations:any;\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n items = [];\r\n permissions = [];\r\n userinfo: any;\r\n \tconstructor(\r\n \t\tpublic _router: Router,\r\n public translate: TranslateService,\r\n public auth: LoginService,\r\n public permission: PermissionService,\r\n private storage: Storage,\r\n \t) { }\r\n\r\n \tngOnInit() {\r\n let id = environment.Global.Menus.Formularios // menu formularios\r\n this.permission.getModulesByMenuId(id).then(x => {\r\n x.forEach(element => {\r\n if (element.principal == 1) {\r\n this.items.push(element)\r\n }\r\n });\r\n })\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n // console.log(this.userinfo)\r\n });\r\n this.auth.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n \t}\r\n\r\n hasPermission(str:string){\r\n let flag = false;\r\n this.permissions.forEach(permission => {\r\n if(permission.Permission == str) {\r\n flag = true;\r\n }\r\n })\r\n return flag;\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n// this.items = [\r\n // {title: 'menu_register_company_admin', url: '/regcompanie', icon: 'fas fa-industry', perm: 'SI_REGCOMPANIES'},\r\n // {title: 'menu_regisEmpresa', url: '/regcompanieemp', icon: 'fas fa-industry', perm: 'SI_REGCOMPANIESEMP'},\r\n // {title: 'menu_subcontratista', url: '/regsubcontract', icon: 'fas fa-building', perm: 'SI_REGSUBCONTRATISTA'},\r\n // {title: 'menu_trabajadores', url: '/regemployee', icon: 'fa fa-users', perm: 'SI_REGEMPLOYE'},\r\n // {title: 'menu_reporte', url: '/reportforms', icon: 'fas fa-chart-bar', perm: 'SI_REPORT_RESULT'},\r\n // {title: 'menu_title_form_documenthistory', url: '/consdochistory', icon: 'fas fa-history', perm: 'SI_DOCUMENTS'},\r\n\r\n // ];\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
{{ row.title | 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 Swal from 'sweetalert2';\r\n\r\nimport { Storage } from '@ionic/storage';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { environment } from 'src/environments/environment';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Columns, Img, Item, PdfMakeWrapper, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport { ITable } from 'pdfmake-wrapper/lib/interfaces';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\n// If any issue using previous fonts import. you can try this:\r\n// import pdfFonts from \"pdfmake/build/vfs_fonts\";\r\n\r\n// Set the fonts to use\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\n\r\nconst API_UPDATE_STATUS_TOOLS = environment.Global.API_UPDATE_STATUS_TOOLS;\r\nconst API_GET_TOOLS = environment.Global.API_GET_ALL_TOOLS;\r\nconst API_CREATE_TOOLS = environment.Global.API_CREATE_TOOLS;\r\nconst API_UPDATE_TOOLS = environment.Global.API_UPDATE_TOOLS;\r\nconst GET_ALL_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_REQUEST_BY_ID = environment.Global.API_GET_REQUEST_BY_ID;\r\nconst GET_ALL_TOOLS_FOR_SKRETTING = environment.Global.API_GET_ALL_TOOLS_FOR_SKRETTING;\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-regtoolsequipment',\r\n templateUrl: './regtoolsequipment.component.html',\r\n styleUrls: ['./regtoolsequipment.component.css']\r\n})\r\n\r\nexport class RegtoolsequipmentComponent extends BaseCrudComponent {\r\n userinfo:any;\r\n loadingRequired = false;\r\n edit_obj;\r\n habilitar = false;\r\n id;\r\n date_doc:any;\r\n date;\r\n company:any;\r\n mostarselectemp;\r\n isSkretting = false;\r\n update_status_url = API_UPDATE_STATUS_TOOLS;\r\n entryRequestId = null;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.create_url = API_CREATE_TOOLS;\r\n this.read_url = API_GET_TOOLS;\r\n this.update_url = API_UPDATE_TOOLS;\r\n this.date_doc =new Date();\r\n this.search_fields = ['ListsToolsId','Lt_Supervisor'];\r\n\r\n this.c_obj['Company'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n // this.crearFormEmp();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.route.queryParams.subscribe(params => {\r\n this.entryRequestId = params['id'];\r\n });\r\n\r\n this.date = new Date();\r\n //console.log(this.date)\r\n this.company =[];\r\n //this.u_obj=[];\r\n\r\n //debugger;\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n // this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n // console.log(x)\r\n if( isNumeric( this.userinfo.logon) ) {\r\n this.mostarselectemp = false;\r\n this.isSkretting = false;\r\n this.getList();\r\n } else {\r\n this.isSkretting = true;\r\n this.getList();\r\n }\r\n });\r\n \r\n }\r\n\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns no return.\r\n * @desc function to open modal to create tools.
Creation Date: 07/13/2021\r\n * @param {content} NgbModal modal\r\n * @type {void} void type.\r\n */\r\n public openCreateModal(content: NgbModal) {\r\n let qst = GET_REQUEST_BY_ID + this.entryRequestId;\r\n this.srv.getCall(qst).subscribe(x => { \r\n if(x.success){\r\n if(x.val != null){\r\n this.c_obj['date_register'] = x.val['StartDate'].split('T')[0];\r\n this.c_obj['date_out'] = x.val['EndDte'].split('T')[0];\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n } \r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n // let isFind = this.rows.find( row =>{\r\n // return row.EntryRequestId == this.entryRequestId\r\n // });\r\n // if (isFind !== undefined) {\r\n // return Swal.fire(this.translations.error, this.translations.tool_list_exist, 'error');\r\n // } else {\r\n\r\n // }\r\n this.c_obj = {};\r\n this.c_obj['ToolsDetails'] = [];\r\n this.c_obj['entryRequestId'] = this.entryRequestId;\r\n this.modalService.open(content, { backdrop: 'static', size: 'lg' });\r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns return boolean data.\r\n * @desc function to validate tools form in modal.
Creation Date: 07/13/2021\r\n * @param {fields} any form\r\n * @type {boolean} boolean type.\r\n */\r\n public validateCreateInfo(fields:any): boolean {\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'Supervisor': new FormControl(fields.Supervisor, [Validators.required]),\r\n 'date_register': new FormControl(fields.date_register, [Validators.required]),\r\n 'date_out': new FormControl(fields.date_out, [Validators.required]),\r\n 'detailTool': new FormControl(fields.detailTool),\r\n 'quantity': new FormControl(fields.quantity),\r\n 'mModel': new FormControl(fields.mModel),\r\n 'noticeI': new FormControl(fields.noticeI), //, [Validators.required]\r\n 'noticeO': new FormControl(fields.noticeO), //, [Validators.required]\r\n });\r\n return mygroup.valid;\r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns no return.\r\n * @desc function to get alls tools from database
Creation Date: 07/13/2021\r\n * @param {fields} any form\r\n * @type {void} void type.\r\n */\r\n public getList() {\r\n let qst = '';\r\n if(this.isSkretting)\r\n {\r\n qst = GET_ALL_TOOLS_FOR_SKRETTING;\r\n } else {\r\n qst = this.read_url + `/${this.userinfo.selectedCompanyId}`; // URL TO GET TOOL LIST\r\n }\r\n this.messageShowLoading();\r\n this.loadingList = true;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n this.rows = x.val;\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n } else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers,'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n } \r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n this.closeLoadingMessage();\r\n return;\r\n }\r\n });\r\n //console.log(this.rows);\r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns no return.\r\n * @desc function to activo/inactive tools list from supervisor
Creation Date: 07/13/2021\r\n * @param {event} any input checkbox\r\n * @param {id} Number id from supervisor\r\n * @type {void} void type.\r\n */\r\n public toggleEditable(event: any, id: Number): void {\r\n \r\n if ( event.target.checked ) {\r\n this.ActivarItem(id,1);\r\n }else {\r\n this.ActivarItem(id,2);\r\n \r\n }\r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns no return.\r\n * @desc function to activo/inactive tools list from supervisor
Creation Date: 07/13/2021\r\n * @param {Accion} any status from tools list\r\n * @param {id} Number id from supervisor\r\n * @type {void} void type.\r\n */\r\n public ActivarItem(id:any, accion:any): void\r\n {\r\n var to:any;\r\n to = {};\r\n to.ListsToolsId = id;\r\n to.Status = accion;\r\n to.LastModifierUser = this.userinfo['userId'];\r\n this.srv.postCall(this.update_status_url, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns no return.\r\n * @desc function to create tools list in database
Creation Date: 07/13/2021\r\n * @param {content} NgbModal modal to close\r\n * @param {form} Form data set in form\r\n * @type {any} any type.\r\n */\r\n public createItem(content:any, form:any): any{\r\n var validated = true;\r\n this.isCreating = true;\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n \r\n let array_Tools = [];\r\n if (this.c_obj['ToolsDetails'].length <= 0) {\r\n this.isCreating = false;\r\n return Swal.fire(this.translations.error, this.translations.msg_register_tool,'error');\r\n }\r\n for (let obj of this.c_obj['ToolsDetails']) {\r\n let tool = {\r\n ListsToolsId: this.userinfo.selectedCompanyId,\r\n Description: obj['tool_detail'],\r\n quantity: obj['quantity'],\r\n ModelBrand: obj['brand_model'].toUpperCase(),\r\n EntryNews: obj['notice_in'],\r\n DeparturesNews: obj['notice_out']\r\n }\r\n array_Tools.push(tool);\r\n };\r\n\r\n var to = {\r\n CompanyID : this.userinfo.selectedCompanyId,\r\n Lt_DateBegin : form.date_register,\r\n Lt_DaTeend : form.date_out,\r\n Lt_Supervisor : form.Supervisor,\r\n CreatorUser : this.userinfo['logon'],\r\n LastModifierUser : this.userinfo['logon'],\r\n EntryRequestId: this.entryRequestId,\r\n ListsToolsDetails : array_Tools,\r\n };\r\n \r\n this.srv.postCall(this.create_url, to).toPromise().then( data =>{\r\n if(data.success){\r\n this.c_obj = {};\r\n this.closeModal(content);\r\n Swal.fire(this.translations.msg_create, '', 'success');\r\n this.isCreating = false;\r\n this.getList();\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n }\r\n \r\n },catchError =>{\r\n // catchError.message;\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isCreating = false;\r\n });\r\n\r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns return if quantity input is digit or not.\r\n * @desc function validate the user digit numbers in quantity input
Creation Date: 07/13/2021\r\n * @param {event} Any action from input\r\n * @type {boolean} boolean type.\r\n */\r\n public onlyNumberKey(event: any): boolean {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns no return.\r\n * @desc function add parameters in table
Creation Date: 07/13/2021\r\n * @param {obj} Object object with data\r\n * @type {Any} any type.\r\n */\r\n public addParameter(obj:any): any\r\n {\r\n if (obj.noticeI === undefined) obj.noticeI = '';\r\n if (obj.noticeO === undefined) obj.noticeO = '';\r\n \r\n // console.log(obj)\r\n if (obj['detailTool']==undefined || obj['mModel']==undefined || obj['quantity']==undefined){\r\n return Swal.fire(this.translations.error, this.translations.msg_add_parameter_tool_empty,'error');\r\n }\r\n\r\n if ((obj['detailTool']== '' || obj['detailTool']== null) || (obj['mModel']== '' || obj['mModel']== null) || (obj['quantity']== '' || obj['quantity']== null)){\r\n return Swal.fire(this.translations.error, this.translations.msg_add_parameter_tool_empty,'error');\r\n }\r\n \r\n let exists = obj['ToolsDetails'].filter(f => {\r\n return ((f.tool_detail.toLowerCase() == obj['detailTool'].toLowerCase()) && (f.brand_model.toLowerCase() == obj['mModel'].toLowerCase()));\r\n });\r\n if(exists.length > 0)\r\n {\r\n return Swal.fire('Error', 'Ya existe la herramienta','error');\r\n }\r\n\r\n obj['ToolsDetails'].push({\r\n tool_detail: obj['detailTool'],\r\n brand_model:obj['mModel'],\r\n quantity:obj['quantity'],\r\n notice_in:obj['noticeI'],\r\n notice_out:obj['noticeO'],\r\n }\r\n );\r\n this.c_obj['detailTool']=\"\";\r\n this.c_obj['mModel']=\"\";\r\n this.c_obj['quantity']=\"\";\r\n this.c_obj['noticeI']=\"\";\r\n this.c_obj['noticeO']=\"\";\r\n \r\n\r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns no return.\r\n * @desc function to delete element from table in modal
Creation Date: 07/13/2021\r\n * @param {obj} Object object with data\r\n * @param {position} Number position to eliminate data\r\n * @type {Any} any type.\r\n */\r\n public delParameter(obj:any, position:number): void{\r\n obj['ToolsDetails'].splice(position, 1);\r\n\r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns no return.\r\n * @desc function to delete item from table in component
Creation Date: 07/13/2021\r\n * @param {obj} Object object with data\r\n * @type {Any} any type.\r\n */\r\n public deleteItem(obj:any): void {\r\n this.ActivarItem(obj.ListsToolsId,3);\r\n }\r\n\r\n /**\r\n * @method\r\n * @public\r\n * @version 1.0.0\r\n * @author Danny Rios \r\n * @returns no return.\r\n * @desc function to open update modal
Creation Date: 07/13/2021\r\n * @param {obj} Object object with data\r\n * @param {content} NgbModal update modal\r\n * @type {void} void type.\r\n */\r\n public openUpdateModal(content:any, obj: any, size?: any): void{\r\n this.edit_obj = obj\r\n this.c_obj['Supervisor'] = obj.Lt_Supervisor;\r\n this.c_obj['date_register'] = obj.StartDate.split('T')[0];\r\n this.c_obj['date_out'] = obj.EndDte.split('T')[0];\r\n this.c_obj['ToolsDetails'] = [];\r\n this.c_obj['EntryRequestId'] = obj.EntryRequestId;\r\n for (let item of obj.ListsToolsDetails) {\r\n let itemFromDataBase = {\r\n tool_detail: item.Description,\r\n brand_model: item.ModelBrand,\r\n quantity: item.quantity,\r\n notice_in: item.EntryNews,\r\n notice_out: item.DeparturesNews\r\n }\r\n this.c_obj['ToolsDetails'].push(\r\n itemFromDataBase\r\n )\r\n }\r\n this.modalService.open(content, { backdrop: 'static', size: size });\r\n }\r\n\r\n public verifyDateEnd() {\r\n if (this.c_obj['date_register'] === undefined ) {\r\n this.c_obj['date_out'] = null;\r\n return Swal.fire(this.translations.error,this.translations.msg_not_found_date_init, 'error');\r\n }\r\n const date_init = new Date(this.c_obj['date_register']);\r\n const date_end = new Date(this.c_obj['date_out']);\r\n\r\n if (date_init > date_end ){\r\n ( document.getElementById(\"fechaFinal\")).value = \"\";\r\n return Swal.fire(this.translations.error,this.translations.msg_date_end_max, 'error');\r\n }\r\n \r\n \r\n }\r\n\r\n async printListTool(row) {\r\n const pdf = new PdfMakeWrapper();\r\n // INFORMATION IN TITLE NAV\r\n pdf.info({\r\n title: 'Ficha de Herramientas Equipos',\r\n author: `${row.Lt_Supervisor}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: 10,\r\n alignment:'justify'\r\n });\r\n pdf.pageMargins([ 40, 90, 40, 60]);\r\n //PERMISIONS\r\n pdf.permissions('Nutreco2021', {\r\n printing: 'highResolution',\r\n copying: false,\r\n modifying: false,\r\n annotating: true,\r\n fillingForms: true,\r\n documentAssembly: true,\r\n contentAccessibility: true\r\n })\r\n pdf.header(await \r\n new Img('../../../../assets/images/DG_logo.svg')\r\n .width('150')\r\n //.alignment(\"right\")\r\n .margin(20)\r\n .build())\r\n\r\n pdf.add(new Txt('LISTADO DE HERRAMIENTAS Y EQUIPOS').fontSize(12).bold().alignment('center')['end']);\r\n // pdf.add(new Txt('GISIS S.A.').fontSize(12).bold().alignment('center')['end']);\r\n\r\n\r\n\r\n pdf.add(new Ul([\r\n new Txt(`Empresa Contratista: ${row.CompanyName}`).fontSize(12)['end'],\r\n new Txt(`Supervisor Contratista: ${row.Lt_Supervisor}`).fontSize(12)['end'],\r\n new Txt(`Fecha de Ingreso: ${row.Lt_DateBegin.split('T')[0]}`).fontSize(12)['end'],\r\n new Txt(`Fecha de Salida: ${row.Lt_DaTeend.split('T')[0]}`).fontSize(12)['end'],\r\n ])\r\n .lineHeight(2)\r\n .margin([0,30,0,30])\r\n ['end']);\r\n\r\n pdf.header(await new Img('../../../../assets/images/DG_logo.svg').width('100').margin(20).build())\r\n pdf.add(\r\n new Table([\r\n [ 'ID', 'DETALLE DE HERRAMIENTAS Y EQUIPOS', 'MARCA/MODELO', 'CANTIDAD', 'NOVEDADES INGRESO', 'NOVEDADES SALIDA'],\r\n ...this.convertDataToRow(row)\r\n \r\n ])\r\n .fontSize(8)\r\n .heights( rowIndex => {\r\n return rowIndex === 0 ? 20: 0;\r\n })\r\n .headerRows(2)\r\n .alignment(\"center\")\r\n .layout({\r\n fillColor: (rowIndex: number, node:any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#cccccc' : '';\r\n },\r\n })\r\n .widths([ 10, 'auto', 70, 40, 'auto','auto'])\r\n // .margin([20,0,20, 50])\r\n ['end']); \r\n \r\n\r\n pdf.create().open();\r\n }\r\n\r\n convertDataToRow (data) {\r\n return data.ListsToolsDetails.map((row, index) => [index + 1, row.Description,row.ModelBrand,row.quantity,row.EntryNews,row.DeparturesNews]);\r\n }\r\n\r\n\r\n\r\n public updateItem(content:any, form:any) {\r\n var validated = true;\r\n this.isUpdating = true;\r\n if(form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n \r\n \r\n let array_Tools = [];\r\n if (this.c_obj['ToolsDetails'].length <= 0) {\r\n this.isUpdating = false;\r\n return Swal.fire('Error', 'Debe registrar al menos 1 herramienta','error');\r\n }\r\n for (let obj of this.c_obj['ToolsDetails']) {\r\n let tool = {\r\n ListsToolsId: this.edit_obj.ListsToolsId,\r\n Description: obj['tool_detail'],\r\n quantity: obj['quantity'],\r\n ModelBrand: obj['brand_model'].toUpperCase(),\r\n EntryNews: obj['notice_in'],\r\n DeparturesNews: obj['notice_out']\r\n }\r\n array_Tools.push(tool);\r\n };\r\n \r\n var to = {\r\n CompanyID : this.userinfo.selectedCompanyId,\r\n Lt_DateBegin : form.date_register,\r\n Lt_DaTeend : form.date_out,\r\n Lt_Supervisor : form.Supervisor,\r\n CreatorUser : this.userinfo['logon'],\r\n LastModifierUser : this.userinfo['logon'],\r\n EntryRequestId: this.c_obj['EntryRequestId'],\r\n ListsToolsDetails : array_Tools,\r\n ListsToolsId: this.edit_obj.ListsToolsId\r\n };\r\n // console.log(to);\r\n this.srv.postCall(this.update_url, to).toPromise().then( data =>{\r\n if(data.success){\r\n this.c_obj = {};\r\n this.closeModal(content);\r\n Swal.fire(this.translations.msg_create, '', 'success');\r\n this.isUpdating = false;\r\n this.getList();\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = 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 \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'supervisor'| translate}}\r\n {{'job_to_do' | translate}}{{'date_init' | translate}}{{'date_end' | translate}}\r\n {{'habidesa' | translate}}\r\n \r\n {{'status_assign_evaluation' | translate}}\r\n {{'action' | translate}}
{{row.ListsToolsId}}{{row.Lt_Supervisor}}{{row.WorkDescription}}{{row.StartDate.split('T')[0]}}{{row.EndDte.split('T')[0]}} \r\n
\r\n \r\n
\r\n
{{row.Status === 'A'? 'ACTIVO':'INACTIVO'}}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'data'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\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_list_tools'| translate}}

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

{{'tool' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'tool_detail' | translate}}{{'brand_model' | translate}}{{'quantity' | translate}}{{'notice_in'| translate}}{{'notice_out' | translate}}
{{parameter.tool_detail}}{{parameter.brand_model}}{{parameter.quantity}}{{parameter.notice_in}}{{parameter.notice_out}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n

{{'edit_item' | translate}}: {{edit_obj['ListsToolsId']}}

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

{{'data'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\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_list_tools'| translate}}

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

{{'tool' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'tool_detail' | translate}}{{'brand_model' | translate}}{{'quantity' | translate}}{{'notice_in'| translate}}{{'notice_out' | translate}}
{{parameter.tool_detail}}{{parameter.brand_model}}{{parameter.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
\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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\n\r\nimport { Storage } from '@ionic/storage';\r\nimport Swal from 'sweetalert2';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\n//import { isNull } from 'util';\r\n\r\nimport { Cell, Columns, Img, Item, Line, PageReference, PdfMakeWrapper, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_ALL_ENTRY_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_INDUCTION = environment.Global.API_GET_ALL_REQUEST_INDUCTION;\r\nconst GET_ALL_REQUEST_INDUCTION_BY_ID = environment.Global.API_GET_ALL_REQUEST_INDUCTION_BY_ID;\r\nconst GET_WORK_AUTH_BY_ID = environment.Global.API_GET_WORK_AUTH_BY_ID;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\nconst GET_DOCUMENTS_BY_ID = environment.Global.API_GET_DOCUMENTS_BY_ID;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_DOCUMENTS_ALL_PARAM = environment.Global.API_GET_DOCUMENTS_ALL;\r\nconst GET_DOCUMENTS_ALL_BY_COMPANYID = environment.Global.API_GET_DOCUMENTS_ALL_BY_COMPANYID;\r\nconst API_GET_REPORTS_EMPLOYEES_BY_COMPANY = environment.Global.API_GET_REPORTS_EMPLOYEES_BY_COMPANY;\r\nconst API_GET_REPORTS_VEHICLES_BY_COMPANY = environment.Global.API_REPORTS_VEHICLE_COMPANY;\r\n\r\n@Component({\r\n selector: 'app-reportforms',\r\n templateUrl: './reportforms.component.html',\r\n styleUrls: ['./reportforms.component.css']\r\n})\r\n\r\nexport class ReportformsComponent extends BaseCrudComponent implements OnInit {\r\n option_processes = null;\r\n date_init = null;\r\n date_end = null;\r\n list_processes = [{ title: 'docs_workers_Ext', id: 1 }, { title: 'workers_regis_Contract', id: 2 }, { title: 'registeredVehiclesByCompany', id: 3 }]\r\n translations;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n request_selected = true;\r\n isSkretting = false;\r\n isClean = false;\r\n pageSize = 10;\r\n userInfo;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n private workbook: Workbook;\r\n private lista_titulos;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['Name', 'NumberIdentification', 'EmployeeName'];\r\n }\r\n\r\n async ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n await this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n // console.log(this.userInfo)\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n });\r\n this.getCompanies();\r\n }\r\n\r\n\r\n dataToFind() {\r\n this.isFind = true;\r\n\r\n if (this.option_processes === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n }\r\n\r\n if (this.date_end < this.date_init) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_error_date, this.translations.msg_error_date_end, 'error');\r\n }\r\n if (this.date_init !== null && this.date_end === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_end_select, '', 'error');\r\n }\r\n if (this.date_end !== null && this.date_init === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_init_select, '', 'error');\r\n }\r\n this.setUrlToFindData();\r\n }\r\n\r\n setUrlToFindData() {\r\n let url = '';\r\n switch (Number(this.option_processes)) {\r\n case 1:\r\n // console.log('entro aqui 1')\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n url = GET_DOCUMENTS_ALL_BY_COMPANYID + this.userInfo.selectedCompanyId;\r\n } else {\r\n this.isSkretting = true;\r\n url = GET_DOCUMENTS_ALL_PARAM;\r\n }\r\n break;\r\n case 2:\r\n // console.log('entro aqui 1')\r\n this.date_init = null;\r\n this.date_end = null;\r\n\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n url = API_GET_REPORTS_EMPLOYEES_BY_COMPANY + this.userInfo.selectedCompanyId;\r\n } else {\r\n this.isSkretting = true;\r\n url = API_GET_REPORTS_EMPLOYEES_BY_COMPANY + this.options_company;\r\n }\r\n break;\r\n case 3:\r\n // console.log('entro aqui 1')\r\n this.date_init = null;\r\n this.date_end = null;\r\n\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n url = API_GET_REPORTS_VEHICLES_BY_COMPANY + this.userInfo.selectedCompanyId;\r\n } else {\r\n this.isSkretting = true;\r\n url = API_GET_REPORTS_VEHICLES_BY_COMPANY + this.options_company;\r\n }\r\n\r\n break;\r\n\r\n }\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n getListFromApi(url) {\r\n this.isFind = true;\r\n let list_tmp = [];\r\n // console.log(url);\r\n this.srv.getCall(url).subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((!(this.date_init===null) && !(this.date_end===null)) && (this.options_ruc == -1 || this.options_ruc == null) && (this.options_company == -1 || this.options_company == null) && this.option_processes !== null) {\r\n // console.log('Primer filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.DateDocument = this.formatOnlyDate(new Date(tmp.DateDocument));\r\n if (tmp.DateDocument >= this.date_init && tmp.DateDocument <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc !== -1 || this.options_company !== -1) && (!(this.date_init===null) && !(this.date_end===null))) {\r\n // console.log('Segundo filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.DateDocument = this.formatOnlyDate(new Date(tmp.DateDocument));\r\n if (tmp.DateDocument >= this.date_init && tmp.DateDocument <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc !== -1 || this.options_company !== -1) && ((this.date_init===null) && (this.date_end===null))) {\r\n // console.log('Tercer filtro')\r\n if (this.isSkretting) {\r\n if (this.option_processes == 1 && (this.options_ruc !== null || this.options_company !== null)) {\r\n // console.log('entro aqui if')\r\n list_tmp.forEach(tmp => {\r\n // console.log(tmp.CompanyID)\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n // console.log(list_tmp)\r\n if (new_list.length === 0) {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n } else {\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n }\r\n } else {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n }\r\n // console.log(this.rows)\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.isFind = false;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n let listInReport = this.rows;\r\n let mapaTitles = new Map();\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n // console.log(...this.rows);\r\n // console.log(listInReport)\r\n // debugger\r\n listInReport.forEach(element => {\r\n // console.log(element)\r\n let obj = [];\r\n switch (Number(this.option_processes)) {\r\n case 1:\r\n if (this.isSkretting) {\r\n obj = [\r\n element.EmployeeName,\r\n element.NumberIdentification,\r\n element.Name,\r\n element.Ruc,\r\n element.NameDoc,\r\n element.ExpirationTime != null ? element.ExpirationTime.split('T')[0] : \"\",\r\n element.status_name,\r\n ]\r\n // console.log(obj)\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', '*', 'auto', 'auto'\r\n ]\r\n } else {\r\n obj = [\r\n element.EmployeeName,\r\n element.NumberIdentification,\r\n element.NameDoc,\r\n element.ExpirationTime != null ? element.ExpirationTime.split('T')[0] : \"\",\r\n element.status_name,\r\n element.status_name,\r\n ]\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', 'auto'\r\n ]\r\n }\r\n if (this.isSkretting) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.doc_worker).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.doc_vige).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n } else {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.doc_worker).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.doc_vige).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n }\r\n break\r\n case 2:\r\n if (this.isSkretting) {\r\n obj = [\r\n element.EmployeeId,\r\n element.NumberIdentification,\r\n element.Name,\r\n // element.Birth_date != null ? element.Birth_date.split('T')[0] : \"\",\r\n element.RucCompany,\r\n element.NameCompany,\r\n element.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n element.Email,\r\n element.address,\r\n element.position,\r\n element.telephone,\r\n // element.telephone2,\r\n // element.nationality,\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\"\r\n ]\r\n // console.log(obj)\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n } else {\r\n obj = [\r\n element.EmployeeId,\r\n element.NumberIdentification,\r\n element.Name,\r\n // element.Birth_date != null ? element.Birth_date.split('T')[0] : \"\",\r\n element.Email,\r\n element.address,\r\n element.position,\r\n element.telephone,\r\n // element.telephone2,\r\n // element.nationality,\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\"\r\n ]\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n\r\n }\r\n\r\n if (this.isSkretting) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.identification).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.birth_date).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.email).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.address).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.position).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.phone).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.phone2).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.nationality).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n } else {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.identification).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.birth_date).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.email).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.address).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.position).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.phone).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.phone2).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.nationality).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n }\r\n break\r\n case 3:\r\n if (this.isSkretting) {\r\n obj = [\r\n element.VehicleID,\r\n element.RegistrationNumber,\r\n element.Brand,\r\n element.ModelName[0].value,\r\n element.VehicleType,\r\n element.RucCompany,\r\n element.NameCompany,\r\n element.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n ]\r\n // console.log(obj)\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_registration).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_brand).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_model).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n\r\n ]\r\n } else {\r\n obj = [\r\n element.VehicleID,\r\n element.RegistrationNumber,\r\n element.Brand,\r\n element.ModelName[0].value,\r\n element.VehicleType,\r\n // element.RucCompany,\r\n // element.NameCompany,\r\n // element.TypeCompany == 1 ? \"Contratista\":\"Transportista\",\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n ]\r\n // console.log(obj)\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', '*', 'auto'\r\n ]\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_registration).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_brand).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_model).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n\r\n ]\r\n }\r\n break\r\n }\r\n\r\n nueva_lista_reportes.push(obj);\r\n\r\n if (!mapaTitles.has(element.NameDoc)) {\r\n mapaTitles.set(element.NameDoc, element.NameDoc);\r\n }\r\n\r\n });\r\n\r\n\r\n\r\n\r\n const pdf = new PdfMakeWrapper();\r\n // INFORMATION IN TITLE NAV\r\n let title = '';\r\n if (this.option_processes == 1) {\r\n title = 'Reporte de Documentos de trabajadores externos'\r\n }\r\n if (this.option_processes == 2) {\r\n title = 'Reporte de trabajadores de los contratistas registrados'\r\n }\r\n if (this.option_processes == 3) {\r\n title = 'Reporte de vehículos registrados por compañia'\r\n }\r\n pdf.info({\r\n // title: `${this.translations.msg_doc_Ext}`,\r\n // title: `${title}`,\r\n title: `${title}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n\r\n var fontSize: 0;\r\n switch (Number(this.option_processes)) {\r\n case 1:\r\n fontSize: 10\r\n break\r\n case 1:\r\n fontSize: 8\r\n break\r\n }\r\n\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: fontSize,\r\n alignment: 'justify'\r\n });\r\n pdf.pageMargins([40, 110, 40, 110]);\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.pageOrientation('landscape');\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userInfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userInfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...nueva_lista_reportes\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n .alignment('center')\r\n .end\r\n ]\r\n );\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n\r\n\r\n pdf.create().download(title);\r\n Swal.close();\r\n }\r\n\r\n\r\n clearFilters() {\r\n this.option_processes = null;\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.pageTotal = 0;\r\n }\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n if (this.options_company == -1) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n selectRequest() {\r\n this.request_selected = true;\r\n this.rows = [];\r\n this.page = 0;\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n downloadExcel() {\r\n\r\n this.workbook = new Workbook();\r\n let nombreXLSX = \"Reporte de Ordenes de compra.xlsx\";\r\n if (this.option_processes == 1) {\r\n nombreXLSX = \"Documentos de trabajadores externos.xlsx\";\r\n\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.ci,\r\n this.translations.worker,\r\n this.translations.menu_mycompanies,\r\n this.translations.name_archive,\r\n this.translations.status,\r\n this.translations.date_emision,\r\n this.translations.expiration_date\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.Code,\r\n this.translations.ci,\r\n this.translations.menu_mycompanies,\r\n this.translations.name_archive,\r\n this.translations.status,\r\n this.translations.date_emision,\r\n this.translations.expiration_date\r\n\r\n ];\r\n\r\n }\r\n } else if (this.option_processes == 2) {\r\n nombreXLSX = \"Trabajadores de los contratistas registrados.xlsx\";\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.identification,\r\n this.translations.worker_name,\r\n this.translations.birth_date,\r\n this.translations.ruc,\r\n this.translations.company,\r\n this.translations.company_type,\r\n this.translations.email,\r\n this.translations.address,\r\n this.translations.position,\r\n this.translations.phone,\r\n this.translations.phone2,\r\n this.translations.nationality,\r\n this.translations.status\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.identification,\r\n this.translations.worker_name,\r\n this.translations.birth_date,\r\n this.translations.Email,\r\n this.translations.address,\r\n this.translations.position,\r\n this.translations.phone,\r\n this.translations.phone2,\r\n this.translations.nationality,\r\n this.translations.status\r\n\r\n ];\r\n\r\n }\r\n\r\n } else if (this.option_processes == 3) {\r\n nombreXLSX = \"Registro de los Vehículos de la companía.xlsx\";\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.v_registration,\r\n this.translations.v_brand,\r\n this.translations.v_model,\r\n this.translations.v_type,\r\n this.translations.ruc,\r\n this.translations.company,\r\n this.translations.company_type,\r\n this.translations.status\r\n\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.v_registration,\r\n this.translations.v_brand,\r\n this.translations.v_model,\r\n this.translations.v_type,\r\n // this.translations.ruc,\r\n // this.translations.company,\r\n // this.translations.company_type,\r\n this.translations.status\r\n\r\n\r\n ];\r\n\r\n }\r\n\r\n }\r\n console.log(this.lista_titulos);\r\n\r\n\r\n this.ContainsExcel();\r\n this.workbook.creator = \"Comex\";\r\n this.workbook.xlsx.writeBuffer().then((data) => {\r\n const blob = new Blob([data]);\r\n fs.saveAs(blob, nombreXLSX);\r\n })\r\n }\r\n private ContainsExcel() {\r\n const sheet = this.workbook.addWorksheet('Sheet');\r\n\r\n sheet.getColumn(\"A\").width = 8;\r\n sheet.getColumn(\"B\").width = 20;\r\n sheet.getColumn(\"C\").width = 20;\r\n sheet.getColumn(\"D\").width = 20;\r\n sheet.getColumn(\"E\").width = 20;\r\n sheet.getColumn(\"F\").width = 20;\r\n sheet.getColumn(\"G\").width = 20;\r\n sheet.getColumn(\"H\").width = 20;\r\n sheet.getColumn(\"I\").width = 20;\r\n sheet.getColumn(\"J\").width = 20;\r\n sheet.getColumn(\"K\").width = 20;\r\n sheet.getColumn(\"L\").width = 20;\r\n sheet.getColumn(\"M\").width = 20;\r\n sheet.getColumn(\"N\").width = 20;\r\n sheet.getColumn(\"O\").width = 20;\r\n sheet.getColumn(\"P\").width = 20;\r\n sheet.getColumn(\"Q\").width = 20;\r\n sheet.getColumn(\"R\").width = 20;\r\n sheet.getColumn(\"S\").width = 20;\r\n sheet.getColumn(\"T\").width = 20;\r\n sheet.getColumn(\"U\").width = 20;\r\n sheet.getColumn(\"V\").width = 20;\r\n sheet.getColumn(\"W\").width = 20;\r\n sheet.getColumn(\"X\").width = 20;\r\n sheet.getColumn(\"Y\").width = 20;\r\n sheet.getColumn(\"Z\").width = 20;\r\n // ALINEAR COLUMNAS\r\n sheet.columns.forEach((column) => {\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n });\r\n\r\n\r\n\r\n // establecer los valores de las columnas y del header\r\n\r\n //establecer los header\r\n const headerRow = sheet.getRow(1);\r\n // console.log(\"Lista de titulos:\", this.lista_titulos);\r\n headerRow.values = this.lista_titulos;\r\n // headerRow.values = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];\r\n headerRow.font = { bold: true, size: 12 };\r\n\r\n // agregar los datos a las filas\r\n const rowsToInsert = sheet.getRows(2, this.rows.length);\r\n\r\n for (let index = 0; index < rowsToInsert.length; index++) {\r\n const itemData = this.rows[index]; //obtenemos el item segun el index de la iteraciòn(recorrido)\r\n const row = rowsToInsert[index]; //obtenemos la primera fila segun el index de la iteraciòn(recorrido)\r\n // los valores de itemData seran asignados a row (fila actual en la iteraciòn)\r\n\r\n if (this.option_processes == 1) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.EmployeeName,\r\n itemData.Name,\r\n itemData.NameDoc,\r\n itemData.status_name,\r\n itemData.DateDocument == null ? \"\" : itemData.DateDocument.split('T')[0],\r\n itemData.ExpirationTime == null ? \"\" : itemData.ExpirationTime.split('T')[0]\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.Name,\r\n itemData.NameDoc,\r\n itemData.status_name,\r\n itemData.DateDocument == null ? \"\" : itemData.DateDocument.split('T')[0],\r\n itemData.ExpirationTime == null ? \"\" : itemData.ExpirationTime.split('T')[0]\r\n ];\r\n\r\n }\r\n } else if (this.option_processes == 2) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.Name,\r\n itemData.Birth_date == null ? \"\" : itemData.Birth_date.split('T')[0],\r\n itemData.RucCompany,\r\n itemData.NameCompany,\r\n itemData.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n itemData.Email,\r\n itemData.address,\r\n itemData.position,\r\n itemData.telephone,\r\n itemData.telephone2,\r\n itemData.nationality,\r\n itemData.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.Name,\r\n itemData.Birth_date == null ? \"\" : itemData.Birth_date.split('T')[0],\r\n itemData.Email,\r\n itemData.address,\r\n itemData.position,\r\n itemData.telephone,\r\n itemData.telephone2,\r\n itemData.nationality,\r\n itemData.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n ];\r\n\r\n }\r\n\r\n } else if (this.option_processes == 3) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n\r\n itemData.VehicleID,\r\n itemData.RegistrationNumber,\r\n itemData.Brand,\r\n itemData.ModelName[0].value,\r\n itemData.VehicleType,\r\n itemData.RucCompany,\r\n itemData.NameCompany,\r\n itemData.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n itemData.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.VehicleID,\r\n itemData.RegistrationNumber,\r\n itemData.Brand,\r\n itemData.ModelName[0].value,\r\n itemData.VehicleType,\r\n // itemData.RucCompany,\r\n // itemData.NameCompany,\r\n // itemData.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n itemData.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n ];\r\n\r\n }\r\n\r\n }\r\n }\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'ci' | translate}} {{'worker' | translate}}{{'menu_mycompanies' | translate}}{{'name_archive' | translate}}{{'status' | translate}}{{'date_emision' | translate}}{{'expiration_date' | translate}}
{{row.EmployeeId}}{{row.NumberIdentification}}{{row.EmployeeName}}{{row.Name}}{{row.NameDoc}}{{row.status_name}}{{row.DateDocument.split('T')[0]}}{{row.ExpirationTime.split('T')[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
{{'code' | translate}} {{'identification' | translate}} {{'worker_name' | translate}} {{'birth_date' | translate}}{{'ruc' | translate}}{{'company' | translate}}{{'company_type' | translate}}{{'Email' | translate}}{{'address' | translate}}{{'position' | translate}}{{'phone' | translate}}{{'phone2' | translate}}{{'nationality' | translate}}{{'status' | translate}}
{{row.EmployeeId}}{{row.NumberIdentification}}{{row.Name}}{{row.Birth_date.split('T')[0]}}{{row.RucCompany}}{{row.NameCompany}}{{row.TypeCompany == 1 ? \"Contratista\":\"Transportista\" }}{{row.Email}}{{row.address}}{{row.position}}{{row.telephone}}{{row.telephone2}}{{row.nationality}}{{row.Status=='A' ? \"Activo\":\"Inactivo\"}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'v_registration' | translate}} {{'v_brand' | translate}} {{'v_model' | translate}}{{'v_type' | translate}}{{'ruc' | translate}}{{'company' | translate}}{{'company_type' | translate}}{{'status' | translate}}
{{row.VehicleID}}{{row.RegistrationNumber}}{{row.Brand}}{{row.ModelName[0].value}}{{row.VehicleType}}{{row.RucCompany}}{{row.NameCompany}}{{row.TypeCompany == 1 ? \"Contratista\":\"Transportista\" }}{{row.Status=='A' ? \"Activo\":\"Inactivo\"}}
\r\n \r\n
\r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { FullComponent } from './layouts/full/full.component';\r\nimport { SettingsComponent } from './settings/settings.component';\r\nimport { ParameterComponent } from './maint/parameter/parameter.component';\r\nimport { CrudComponent } from './maint/crudhome/crud.component';\r\nimport { CompanyComponent } from './maint/company/company.component';\r\nimport { CountryComponent } from './maint/country/country.component';\r\nimport { ProductionGroupComponent } from './maint/production-group/production-group.component';\r\nimport { UserComponent } from './maint/user/user.component';\r\nimport { DashboardComponent } from './dashboard/dashboard.component';\r\nimport { FormshomeComponent } from './forms/formshome/formshome.component';\r\nimport { ProchomeComponent } from './processes/prochome/prochome.component';\r\nimport { LoginService } from '../services/authentication/login.service';\r\nimport { ParamjobtypeComponent } from './maint/paramjobtype/paramjobtype.component';\r\nimport { ParamplantaComponent } from './maint/paramplanta/paramplanta.component';\r\nimport { ParamareaComponent } from './maint/paramarea/paramarea.component';\r\nimport { ParamgeneralesComponent } from './maint/paramgenerales/paramgenerales.component';\r\nimport { ParamgenedetailComponent } from './maint/paramgenedetail/paramgenedetail.component';\r\nimport { ParamdocujobtypeComponent } from './maint/paramdocujobtype/paramdocujobtype.component';\r\nimport { ParamdocuComponent } from './maint/paramdocu/paramdocu.component';\r\nimport { ParamtypefoulComponent } from './maint/paramtypefoul/paramtypefoul.component';\r\nimport { ParamfoulsComponent } from './maint/paramfouls/paramfouls.component';\r\nimport { ParamsancionComponent } from './maint/paramsancion/paramsancion.component';\r\nimport { RegcompaniesComponent } from './docs/regcompanies/regcompanies.component';\r\nimport { RegcompaniesdocuComponent } from './docs/regcompaniesdocu/regcompaniesdocu.component';\r\nimport { ExcelenciahomeComponent } from './excelencia/excelenciahome/excelenciahome.component';\r\nimport { ParamcomunicadoComponent } from './maint/paramcomunicado/paramcomunicado.component';\r\nimport { ComunicadosComponent } from './maint/comunicados/comunicados.component';\r\nimport { ParamtipopreguntaComponent } from './maint/paramtipopregunta/paramtipopregunta.component';\r\nimport { ParampreguntaComponent } from './maint/parampregunta/parampregunta.component';\r\nimport { ParampreguntadetalleComponent } from './maint/parampreguntadetalle/parampreguntadetalle.component';\r\nimport { ParamevaluacionComponent } from './maint/paramevaluacion/paramevaluacion.component';\r\nimport { RegcompaniesempComponent } from './docs/regcompaniesemp/regcompaniesemp.component';\r\nimport { QuestionsComponent } from './maint/questions/questions.component';\r\nimport { QuestiondetailComponent } from './maint/questiondetail/questiondetail.component';\r\nimport { RegemployeeComponent } from './docs/regemployee/regemployee.component';\r\nimport { RegemployeedocComponent} from './docs/regemployeedoc/regemployeedoc.component';\r\nimport { ConsdochistoryComponent } from './docs/consdochistory/consdochistory.component';\r\nimport { ConsdochistorycompaniesComponent } from './docs/consdochistorycompanies/consdochistorycompanies.component';\r\nimport { ConsdochistoryemployeesComponent } from './docs/consdochistoryemployees/consdochistoryemployees.component';\r\nimport { ProapprovedocumentsComponent } from './docs/proapprovedocuments/proapprovedocuments.component';\r\nimport { ProapprovedocumentscompanyComponent } from './docs/proapprovedocumentscompany/proapprovedocumentscompany.component';\r\nimport { ProapprovedocumentsemployeesComponent } from './docs/proapprovedocumentsemployees/proapprovedocumentsemployees.component';\r\nimport { ProrequestComponent } from './processes/prorequest/prorequest.component';\r\nimport { MyevaluationComponent } from './excelencia/myevaluation/myevaluation.component';\r\nimport { MyevaluationepecificComponent } from './excelencia/myevaluationepecific/myevaluationepecific.component';\r\nimport { OpportunitiesComponent } from './maint/opportunities/opportunities.component';\r\n\r\nimport { EvaluationinternalComponent } from './processes/evaluationinternal/evaluationinternal.component';\r\nimport { RegtoolsequipmentComponent } from './forms/regtoolsequipment/regtoolsequipment.component';\r\nimport { ProadmissionappComponent } from './processes/proadmissionapp/proadmissionapp.component';\r\nimport { RepocreatorComponent } from './processes/repocreator/repocreator.component';\r\nimport { ReportingComponent } from './processes/reporting/reporting.component';\r\nimport { ProadmissemergappComponent } from './processes/proadmissemergapp/proadmissemergapp.component';\r\nimport { WorkersPlantComponent } from './excelencia/workers-plant/workers-plant.component';\r\nimport { ReportformsComponent } from './forms/reportforms/reportforms.component';\r\nimport { SapprovalComponent } from './excelencia/sapproval/sapproval.component';\r\nimport { ActnosecureComponent } from './excelencia/sapproval/actnosecure/actnosecure.component';\r\nimport { CondinosecureComponent } from './excelencia/sapproval/condinosecure/condinosecure.component';\r\nimport { IncidentComponent } from './excelencia/sapproval/incident/incident.component';\r\nimport { OportunitymejorComponent } from './excelencia/sapproval/oportunitymejor/oportunitymejor.component';\r\nimport { ActionplanComponent } from './excelencia/actionplan/actionplan.component';\r\nimport { PlanComponent } from './excelencia/actionplan/plan/plan.component';\r\nimport { HseComponent } from './excelencia/actionplan/hse/hse.component';\r\nimport { InternalUserComponent } from './maint/internal-user/internal-user.component';\r\nimport { UserProfileComponent } from './maint/user-profile/user-profile.component';\r\nimport { RegVehicleContraComponent } from './docs/reg-vehicle-contra/reg-vehicle-contra.component';\r\nimport { RegvehicluedocuComponent } from './docs/regvehicluedocu/regvehicluedocu.component';\r\nimport { ProapprovedocumentsvehicleComponent } from './docs/proapprovedocumentsvehicle/proapprovedocumentsvehicle.component';\r\nimport { QremployeeComponent } from './excelencia/qremployee/qremployee.component';\r\nimport { EntryemployeeComponent } from './excelencia/entryemployee/entryemployee.component';\r\nimport { RegdriverComponent } from './docs/regdriver/regdriver.component';\r\nimport { CondochistoryvehiclesComponent } from './docs/condochistoryvehicles/condochistoryvehicles.component';\r\nimport { EvalassignbyuserComponent } from './processes/evalassignbyuser/evalassignbyuser.component';\r\nimport { DocshomeComponent } from './docs/docshome/docshome.component';\r\n//import { title } from 'process';\r\nimport { ApprovedocumentsbaseComponent } from './docs/approvedocumentsbase/approvedocumentsbase.component';\r\nimport { ApprovedocumentscompaniesComponent } from './docs/approvedocumentscompanies/approvedocumentscompanies.component';\r\nimport { ApprovedocumentsemployeesComponent } from './docs/approvedocumentsemployees/approvedocumentsemployees.component';\r\nimport { ApprovedocumentsvehiclesComponent } from './docs/approvedocumentsvehicles/approvedocumentsvehicles.component';\r\nimport { ReportshomeComponent } from './reports/reportshome/reportshome.component';\r\nimport { RptdocumentexternalworkerComponent } from './reports/rptdocumentexternalworker/rptdocumentexternalworker.component';\r\nimport { RptworkersbycompanyComponent } from './reports/rptworkersbycompany/rptworkersbycompany.component';\r\nimport { RptvehiclesbycompanyComponent } from './reports/rptvehiclesbycompany/rptvehiclesbycompany.component';\r\nimport { RptevaluationrequestComponent } from './reports/rptevaluationrequest/rptevaluationrequest.component';\r\nimport { RptentryrequestComponent } from './reports/rptentryrequest/rptentryrequest.component';\r\nimport { RptworkpermissionComponent } from './reports/rptworkpermission/rptworkpermission.component';\r\nimport {RptcompanyComponent} from \"./reports/rptcompy/rptcompany.component\";\r\n\r\n\r\n\r\nexport const Ic2routes: Routes = [\r\n {\r\n path: '',\r\n component: FullComponent,\r\n //canActivate: [LoginService],\r\n children: [\r\n { path: '', redirectTo: 'dashboard', pathMatch: 'full' },\r\n {\r\n path: 'documentshome',\r\n component: DocshomeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_docs',\r\n urls: []\r\n }\r\n },\r\n {\r\n path: 'reportshome',\r\n component: ReportshomeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_reports',\r\n urls: []\r\n }\r\n },\r\n {\r\n path: 'dashboard',\r\n component: DashboardComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_home',\r\n urls: []\r\n }\r\n },\r\n {\r\n path: 'formshome',\r\n component: FormshomeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_forms',\r\n urls: []\r\n }\r\n },\r\n {\r\n path: 'prochome',\r\n component: ProchomeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_processes',\r\n urls: []\r\n }\r\n },\r\n\r\n {\r\n path: 'excelenciahome',\r\n component: ExcelenciahomeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_operacional',\r\n urls: []\r\n }\r\n },\r\n {\r\n path: 'settings',\r\n component: SettingsComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_general',\r\n urls: []\r\n }\r\n },\r\n // ================================================================\r\n // ================================================================\r\n // MENU DOCUMENTOS\r\n // {\r\n // path: 'proapprovedocuments',\r\n // component: ProapprovedocumentsComponent,\r\n // canActivate: [LoginService],\r\n // data: {\r\n // title: 'menu_docapproval',\r\n // urls: [\r\n // { title: 'menu_docs', url: '/documentshome' },\r\n // { title: 'menu_docapproval'}\r\n // ]\r\n // }\r\n // },\r\n // {\r\n // path: 'proapprovedocumentsemployees/:id',\r\n // component: ProapprovedocumentsemployeesComponent,\r\n // canActivate: [LoginService],\r\n // data: {\r\n // title: 'menu_docapproval_employees',\r\n // urls: [\r\n // { title: 'menu_docs', url: '/documentshome' },\r\n // { title: 'menu_docapproval', url: '/approvedocuments/emp' },\r\n // { title: 'menu_docapproval_employees'}\r\n // ]\r\n // }\r\n // },\r\n // {\r\n // path: 'proapprovedocumentscompany/:id',\r\n // component: ProapprovedocumentscompanyComponent,\r\n // canActivate: [LoginService],\r\n // data: {\r\n // title: 'menu_docapproval_company',\r\n // urls: [\r\n // { title: 'menu_docs', url: '/documentshome' },\r\n // { title: 'menu_docapproval', url: '/approvedocuments/comp' },\r\n // { title: 'menu_docapproval_company'}\r\n // ]\r\n // }\r\n // },\r\n // {\r\n // path: 'proapprovedocumentsvehicles/:id',\r\n // component: ProapprovedocumentsvehicleComponent,\r\n // canActivate: [LoginService],\r\n // data: {\r\n // title: 'menu_docapproval_vehicles',\r\n // urls: [\r\n // { title: 'menu_docs', url: '/documentshome' },\r\n // { title: 'menu_docapproval', url: '/approvedocuments/vhc' },\r\n // { title: 'menu_docapproval_vehicles'}\r\n // ]\r\n // }\r\n // },\r\n {\r\n path: 'regcompanie',\r\n component: RegcompaniesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_register_company_admin',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_register_company_admin'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'regcompanieemp',\r\n component: RegcompaniesempComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_contract',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_contract'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'regcontracdocu/:id',\r\n component: RegcompaniesdocuComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_contractdocu',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_contract', url: '/regcompanie' },\r\n { title: 'menu_contractdocu' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'regemployee',\r\n component: RegemployeeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_trabajadores',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_trabajadores'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'regdriver',\r\n component: RegdriverComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_conductores',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_conductores'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'regemployeedoc/:id',\r\n component: RegemployeedocComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_trabajadoresdoc',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_trabajadores', url: '/regemployee'},\r\n { title: 'menu_trabajadoresdoc' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'reportforms',\r\n component: ReportformsComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_reporte',\r\n urls: [\r\n { title: 'menu_forms', url: '/formshome'},\r\n { title: 'menu_reporte'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'consdochistory',\r\n component: ConsdochistoryComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_form_documenthistory',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_title_form_documenthistory'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'consdochistorycompanies/:id',\r\n component: ConsdochistorycompaniesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_historydocument_company',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_title_form_documenthistory', url: '/consdochistory' },\r\n { title: 'menu_historydocument_company'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'consdochistoryemployees/:id',\r\n component: ConsdochistoryemployeesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_historydocument_employees',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_title_form_documenthistory', url: '/consdochistory' },\r\n { title: 'menu_historydocument_employees'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'consdochistoryvehicles/:id',\r\n component: CondochistoryvehiclesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_historydocument_vehicles',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_title_form_documenthistory', url: '/consdochistory' },\r\n { title: 'menu_historydocument_vehicles'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'regVContra',\r\n component: RegVehicleContraComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_vehiculos',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_vehiculos'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'regVDocu/:id',\r\n component: RegvehicluedocuComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_vehiculos_document',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_vehiculos', url: '/regVContra'},\r\n { title: 'menu_vehiculos_document' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'approvedocumentscompanies',\r\n component: ApprovedocumentscompaniesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_docapproval_company',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_docapproval_company'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'approvedocumentsemployees',\r\n component: ApprovedocumentsemployeesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_docapproval_employees',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_docapproval_employees'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'approvedocumentsvehicles',\r\n component: ApprovedocumentsvehiclesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_docapproval_vehicles',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_docapproval_vehicles'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'approvedocumentscompanies/:id',\r\n component: ProapprovedocumentscompanyComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_docapproval_company',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_docapproval_company', url: '/approvedocumentscompanies' },\r\n { title: 'menu_docapproval_company'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'approvedocumentsemployees/:id',\r\n component: ProapprovedocumentsemployeesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_docapproval_employees',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_docapproval_employees', url: '/approvedocumentsemployees' },\r\n { title: 'menu_docapproval_employees'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'approvedocumentsvehicles/:id',\r\n component: ProapprovedocumentsvehicleComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_docapproval_vehicles',\r\n urls: [\r\n { title: 'menu_docs', url: '/documentshome' },\r\n { title: 'menu_docapproval_vehicles', url: '/approvedocumentsvehicles' },\r\n { title: 'menu_docapproval_vehicles'}\r\n ]\r\n }\r\n },\r\n // FIN DE MENU\r\n // ================================================================\r\n // MENU REPORTES\r\n {\r\n path: 'reporting',\r\n component: ReportingComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_reporting',\r\n urls: [\r\n { title: 'menu_processes', url: '/prochome' },\r\n { title: 'menu_reporting'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'documenteexternalworker',\r\n component: RptdocumentexternalworkerComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'docs_workers_Ext',\r\n urls: [\r\n { title: 'menu_reports', url: '/reportshome' },\r\n { title: 'docs_workers_Ext'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'workersbycompany',\r\n component: RptworkersbycompanyComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'workers_regis_Contract',\r\n urls: [\r\n { title: 'menu_reports', url: '/reportshome' },\r\n { title: 'workers_regis_Contract'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'vehiclesbycompany',\r\n component: RptvehiclesbycompanyComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'registeredVehiclesByCompany',\r\n urls: [\r\n { title: 'menu_reports', url: '/reportshome' },\r\n { title: 'registeredVehiclesByCompany'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'evaluationrequest',\r\n component: RptevaluationrequestComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'induction_soli',\r\n urls: [\r\n { title: 'menu_reports', url: '/reportshome' },\r\n { title: 'induction_soli'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'entryrequest',\r\n component: RptentryrequestComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'request_soli',\r\n urls: [\r\n { title: 'menu_reports', url: '/reportshome' },\r\n { title: 'request_soli'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'workpermission',\r\n component: RptworkpermissionComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'work_sol',\r\n urls: [\r\n { title: 'menu_reports', url: '/reportshome' },\r\n { title: 'work_sol'}\r\n ]\r\n }\r\n },\r\n\r\n {\r\n path: 'rptcompanies',\r\n component: RptcompanyComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'compny_sol',\r\n urls: [\r\n { title: 'menu_reports', url: '/reportshome' },\r\n { title: 'compny_sol'}\r\n ]\r\n }\r\n },\r\n // ================================================================\r\n // MENU PROCESOS\r\n\r\n {\r\n path: 'prorequest',\r\n component: ProrequestComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_soinduccion',\r\n urls: [\r\n { title: 'menu_processes', url: '/prochome' },\r\n { title: 'menu_soinduccion'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'evaluationinternal',\r\n component: EvaluationinternalComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_assignment_evaluation_internal',\r\n urls: [\r\n { title: 'menu_processes', url: '/prochome' },\r\n { title: 'menu_assignment_evaluation_internal'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'repocreator',\r\n component: RepocreatorComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_permiso',\r\n urls: [\r\n { title: 'menu_processes', url: '/prochome' },\r\n { title: 'menu_permiso'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'regtoolsequipment',\r\n component: RegtoolsequipmentComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_list_of_tools_and_equipment',\r\n urls: [\r\n { title: 'menu_processes', url: '/prochome' },\r\n { title: 'menu_list_of_tools_and_equipment'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'proadmissionapp',\r\n component: ProadmissionappComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_soingreso',\r\n urls: [\r\n { title: 'menu_processes', url: '/prochome' },\r\n { title: 'menu_soingreso'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'proadmissemergapp',\r\n component: ProadmissemergappComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_soingreso_emergencia',\r\n urls: [\r\n { title: 'menu_processes', url: '/prochome' },\r\n { title: 'menu_soingreso_emergencia'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'opportunities',\r\n component: OpportunitiesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_opportunities',\r\n urls: [\r\n { title: 'menu_processes', url: '/prochome' },\r\n { title: 'menu_opportunities'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'evaluation-assign',\r\n component: EvalassignbyuserComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_evalAssignUser',\r\n urls: [\r\n { title: 'menu_processes', url: '/prochome' },\r\n { title: 'menu_evalAssignUser'}\r\n ]\r\n }\r\n },\r\n // FIN DE MENU\r\n\r\n // ================================================================\r\n // ================================================================\r\n // MENU EXCELENCIA OPERACIONAL\r\n {\r\n path: 'workersPlant',\r\n component: WorkersPlantComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_workers_plant',\r\n urls: [\r\n { title: 'menu_operacional', url: '/excelenciahome' },\r\n { title: 'menu_workers_plant'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'actionplan',\r\n component: ActionplanComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_planaccion',\r\n urls: [\r\n { title: 'menu_operacional', url: '/excelenciahome' },\r\n { title: 'menu_planaccion'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'sapproval',\r\n component: SapprovalComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_inspeccion',\r\n urls: [\r\n { title: 'menu_operacional', url: '/excelenciahome' },\r\n { title: 'menu_inspeccion'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'myevaluation',\r\n component: MyevaluationComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_myevaluation',\r\n urls: [\r\n { title: 'menu_operacional', url: '/excelenciahome' },\r\n { title: 'menu_myevaluation'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'myevaluationepecific/:id',\r\n component: MyevaluationepecificComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_myevaluationespecific',\r\n urls: [\r\n { title: 'menu_operacional', url: '/excelenciahome' },\r\n { title: 'menu_myevaluation', url: '/myevaluation' },\r\n { title: 'menu_myevaluationespecific'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'qrRequest',\r\n component: QremployeeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'my_qrcode',\r\n urls: [\r\n { title: 'menu_operacional', url: '/excelenciahome' },\r\n { title: 'menu_inspeccion'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'entryEmployeeExt',\r\n component: EntryemployeeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_entry_employee',\r\n urls: [\r\n { title: 'menu_operacional', url: '/excelenciahome' },\r\n { title: 'menu_inspeccion'}\r\n ]\r\n }\r\n },\r\n // FIN DE MENU\r\n\r\n\r\n {\r\n path: 'plan',\r\n component: PlanComponent,\r\n // canActivate: [LoginService],\r\n data: {\r\n title: 'menu_plan',\r\n urls: [\r\n { title: 'menu_planaccion', url: '/actionplan' },\r\n { title: 'menu_plan'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'hse',\r\n component: HseComponent,\r\n // canActivate: [LoginService],\r\n data: {\r\n title: 'menu_hse',\r\n urls: [\r\n { title: 'menu_planaccion', url: '/actionplan' },\r\n { title: 'menu_hse'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'actnosecure',\r\n component: ActnosecureComponent,\r\n // canActivate: [LoginService],\r\n data: {\r\n title: 'menu_act_nosecure',\r\n urls: [\r\n { title: 'menu_inspeccion', url: '/sapproval' },\r\n { title: 'menu_act_nosecure'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'condinosecure',\r\n component: CondinosecureComponent,\r\n // canActivate: [LoginService],\r\n data: {\r\n title: 'menu_condi_nosecure',\r\n urls: [\r\n { title: 'menu_inspeccion', url: '/sapproval' },\r\n { title: 'menu_condi_nosecure'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'incAc',\r\n component: IncidentComponent,\r\n // canActivate: [LoginService],\r\n data: {\r\n title: 'menu_incident_accident',\r\n urls: [\r\n { title: 'menu_inspeccion', url: '/sapproval' },\r\n { title: 'menu_incident_accident'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'oportunitymejor',\r\n component: OportunitymejorComponent,\r\n // canActivate: [LoginService],\r\n data: {\r\n title: 'menu_oportunity_mejor',\r\n urls: [\r\n { title: 'menu_inspeccion', url: '/sapproval' },\r\n { title: 'menu_oportunity_mejor'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'companies',\r\n component: CompanyComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_company',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_company'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'countries',\r\n component: CountryComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_countries',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_countries'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'prodgroups',\r\n component: ProductionGroupComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_prodgroups',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_prodgroups'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'params/:id',\r\n component: ParameterComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_mant_params',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_mant_analysis', url: '/analysis' },\r\n { title: 'menu_title_mant_params' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramjobtype',\r\n component: ParamjobtypeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_tipotrabajo',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_tipotrabajo'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramdocujobtype/:id',\r\n component: ParamdocujobtypeComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_docujobtype',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_tipotrabajo', url: '/paramjobtype' },\r\n { title: 'menu_title_man_docujobtype'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramplanta',\r\n component: ParamplantaComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_planta',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_planta'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramarea/:id',\r\n component: ParamareaComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'areas',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_planta', url: '/paramplanta' },\r\n { title: 'areas' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramgenerales',\r\n component: ParamgeneralesComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_generales',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_generales'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramgenedetail/:id',\r\n component: ParamgenedetailComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_generadetail',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_generales', url: '/paramgenerales' },\r\n { title: 'menu_title_man_generadetail' }\r\n ]\r\n }\r\n },\r\n {\r\n //path: 'paramdocudetail/:id',\r\n path: 'paramdocu',\r\n component: ParamdocuComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_docu',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n //{ title: 'menu_title_man_docujobtype', url: '/paramdocujobtype' },\r\n { title: 'menu_title_man_docu' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramtypefouls',\r\n component: ParamtypefoulComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_foultype',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_foultype'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramfouls/:id',\r\n component: ParamfoulsComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_foul',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_foultype', url: '/paramtypefouls' },\r\n { title: 'menu_title_man_foul' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramsancion/:id',\r\n component: ParamsancionComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_sancion',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_foultype', url: '/paramtypefouls' },\r\n { title: 'menu_title_man_sancion' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramcomunicados',\r\n component: ParamcomunicadoComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_comunicados',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_comunicados'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'comunicados/:id',\r\n component: ComunicadosComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_comunicadosg',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_comunicados', url: '/paramcomunicados' },\r\n { title: 'menu_title_man_comunicadosg' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramtipopregunta',\r\n component: ParamtipopreguntaComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_tipo_preguntas',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_tipo_preguntas'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'questions',\r\n component: QuestionsComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_pregunta',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_pregunta' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'questiondetail/:id',\r\n component: QuestiondetailComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_preguntasdetalle',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_pregunta', url: '/questions' },\r\n { title: 'menu_title_man_preguntasdetalle' }\r\n ]\r\n }\r\n },\r\n {\r\n path: 'paramevaluacion',\r\n component: ParamevaluacionComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_man_evaluacion',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_man_evaluacion'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'internaluser',\r\n component: InternalUserComponent,\r\n // canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_internal_user',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_internal_user'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'userprofile',\r\n component: UserProfileComponent,\r\n // canActivate: [LoginService],\r\n data: {\r\n title: 'menu_title_user_profile',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_title_user_profile'}\r\n ]\r\n }\r\n },\r\n {\r\n path: 'cruds',\r\n component: CrudComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_crud',\r\n urls: [\r\n /*{ title: 'Mapas', url: '' },\r\n { title: 'Mapas' }*/\r\n ]\r\n }\r\n },\r\n {\r\n path: 'users',\r\n component: UserComponent,\r\n canActivate: [LoginService],\r\n data: {\r\n title: 'menu_users',\r\n urls: [\r\n { title: 'menu_crud', url: '/cruds' },\r\n { title: 'menu_users'}\r\n ]\r\n }\r\n },\r\n\r\n //end\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-ic2',\r\n templateUrl: './ic2.component.html',\r\n styleUrls: ['./ic2.component.css']\r\n})\r\nexport class Ic2Component implements OnInit {\r\n\r\n constructor(private translate: TranslateService) {\r\n /*var userLang = 'es';\r\n \ttranslate.setDefaultLang(userLang);\r\n \ttranslate.use(userLang);*/\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\r\nimport { HttpClientModule, HttpClient } from '@angular/common/http';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { DataTablesModule } from 'angular-datatables';\r\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\r\nimport { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';\r\n\r\nimport { FullComponent } from './layouts/full/full.component';\r\n\r\nimport { NavigationComponent } from './shared/header-navigation/navigation.component';\r\nimport { SidebarComponent } from './shared/sidebar/sidebar.component';\r\nimport { BreadcrumbComponent } from './shared/breadcrumb/breadcrumb.component';\r\nimport { setTheme } from 'ngx-bootstrap/utils';\r\n\r\nsetTheme('bs4');\r\n\r\nimport { Ic2routes } from './ic2-routing';\r\n\r\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\r\nimport { PERFECT_SCROLLBAR_CONFIG } from 'ngx-perfect-scrollbar';\r\nimport { PerfectScrollbarConfigInterface } from 'ngx-perfect-scrollbar';\r\nimport { Ic2Component } from '../ic2/ic2.component';\r\nimport {TranslateLoader, TranslateModule} from '@ngx-translate/core';\r\nimport {TranslateHttpLoader} from '@ngx-translate/http-loader';\r\n\r\nimport { QuillModule } from 'ngx-quill';\r\nimport {NgxImageCompressService} from 'ngx-image-compress';\r\n\r\nimport { BaseCrudComponent } from './base-crud/base-crud.component';\r\nimport { CompaniesComponent } from './companies/companies.component';\r\nimport { LaddaModule } from 'angular2-ladda';\r\nimport { LightboxModule } from 'ngx-lightbox';\r\nimport { OrderModule } from 'ngx-order-pipe';\r\n\r\nimport { SettingsComponent } from './settings/settings.component';\r\n//CRUDS\r\nimport { CrudComponent } from './maint/crudhome/crud.component';\r\nimport { ParameterComponent } from './maint/parameter/parameter.component';\r\nimport { CompanyComponent } from './maint/company/company.component';\r\nimport { CountryComponent } from './maint/country/country.component';\r\nimport { ProductionGroupComponent } from './maint/production-group/production-group.component';\r\nimport { UserComponent } from './maint/user/user.component';\r\nimport { FormshomeComponent } from './forms/formshome/formshome.component';\r\nimport { ProchomeComponent } from './processes/prochome/prochome.component';\r\nimport { DashboardComponent } from './dashboard/dashboard.component';\r\nimport { ParamjobtypeComponent } from './maint/paramjobtype/paramjobtype.component';\r\nimport { ParamplantaComponent } from './maint/paramplanta/paramplanta.component';\r\nimport { ParamareaComponent } from './maint/paramarea/paramarea.component';\r\nimport { ParamgeneralesComponent } from './maint/paramgenerales/paramgenerales.component';\r\nimport { ParamgenedetailComponent } from './maint/paramgenedetail/paramgenedetail.component';\r\nimport { ParamdocujobtypeComponent } from './maint/paramdocujobtype/paramdocujobtype.component';\r\nimport { ParamdocuComponent } from './maint/paramdocu/paramdocu.component';\r\nimport { ParamtypefoulComponent } from './maint/paramtypefoul/paramtypefoul.component';\r\nimport { ParamfoulsComponent } from './maint/paramfouls/paramfouls.component';\r\nimport { ParamsancionComponent } from './maint/paramsancion/paramsancion.component';\r\nimport { RegcompaniesComponent } from './docs/regcompanies/regcompanies.component';\r\nimport { RegcompaniesdocuComponent } from './docs/regcompaniesdocu/regcompaniesdocu.component';\r\nimport { ExcelenciahomeComponent } from './excelencia/excelenciahome/excelenciahome.component';\r\nimport { ParamcomunicadoComponent } from './maint/paramcomunicado/paramcomunicado.component';\r\nimport { ComunicadosComponent } from './maint/comunicados/comunicados.component';\r\nimport { ParamtipopreguntaComponent } from './maint/paramtipopregunta/paramtipopregunta.component';\r\n//import { ParampreguntaComponent } from './maint/parampregunta/parampregunta.component';\r\nimport { ParampreguntadetalleComponent } from './maint/parampreguntadetalle/parampreguntadetalle.component';\r\nimport { ParamevaluacionComponent } from './maint/paramevaluacion/paramevaluacion.component';\r\nimport { RegcompaniesempComponent } from './docs/regcompaniesemp/regcompaniesemp.component';\r\nimport { QuestionsComponent } from './maint/questions/questions.component';\r\nimport { QuestiondetailComponent } from './maint/questiondetail/questiondetail.component';\r\nimport { RegemployeeComponent } from './docs/regemployee/regemployee.component';\r\nimport { RegemployeedocComponent } from './docs/regemployeedoc/regemployeedoc.component';\r\nimport { ConsdochistoryComponent } from './docs/consdochistory/consdochistory.component';\r\nimport { ConsdochistorycompaniesComponent } from './docs/consdochistorycompanies/consdochistorycompanies.component';\r\nimport { ConsdochistoryemployeesComponent } from './docs/consdochistoryemployees/consdochistoryemployees.component';\r\nimport { ProapprovedocumentsComponent } from './docs/proapprovedocuments/proapprovedocuments.component';\r\nimport { ProapprovedocumentscompanyComponent } from './docs/proapprovedocumentscompany/proapprovedocumentscompany.component';\r\nimport { ProapprovedocumentsemployeesComponent } from './docs/proapprovedocumentsemployees/proapprovedocumentsemployees.component';\r\nimport { ProrequestComponent } from './processes/prorequest/prorequest.component';\r\nimport { MyevaluationComponent } from './excelencia/myevaluation/myevaluation.component';\r\nimport { MyevaluationepecificComponent } from './excelencia/myevaluationepecific/myevaluationepecific.component';\r\nimport { OpportunitiesComponent } from './maint/opportunities/opportunities.component';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\nimport { ModalFormComponent } from '../components/modal-form/modal-form.component';\r\n\r\nimport { EvaluationinternalComponent } from './processes/evaluationinternal/evaluationinternal.component';\r\nimport { RegtoolsequipmentComponent } from './forms/regtoolsequipment/regtoolsequipment.component';\r\nimport { ProadmissionappComponent } from './processes/proadmissionapp/proadmissionapp.component';\r\nimport { RepocreatorComponent } from './processes/repocreator/repocreator.component';\r\n\r\nimport { SafePipeModule } from 'safe-pipe';\r\nimport {YouTubePlayerModule} from '@angular/youtube-player';\r\nimport { ReportingComponent } from './processes/reporting/reporting.component';\r\nimport { ProadmissemergappComponent } from './processes/proadmissemergapp/proadmissemergapp.component';\r\nimport { WorkersPlantComponent } from './excelencia/workers-plant/workers-plant.component';\r\nimport { ReportformsComponent } from './forms/reportforms/reportforms.component';\r\nimport { SapprovalComponent } from './excelencia/sapproval/sapproval.component';\r\nimport { ActnosecureComponent } from './excelencia/sapproval/actnosecure/actnosecure.component';\r\nimport { CondinosecureComponent } from './excelencia/sapproval/condinosecure/condinosecure.component';\r\nimport { IncidentComponent } from './excelencia/sapproval/incident/incident.component';\r\nimport { OportunitymejorComponent } from './excelencia/sapproval/oportunitymejor/oportunitymejor.component';\r\nimport { ActionplanComponent } from './excelencia/actionplan/actionplan.component';\r\nimport { PlanComponent } from './excelencia/actionplan/plan/plan.component';\r\nimport { HseComponent } from './excelencia/actionplan/hse/hse.component';\r\nimport { FivesComponent } from './excelencia/actionplan/fives/fives.component';\r\nimport { ScheduleComponent } from './excelencia/actionplan/schedule/schedule.component';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { NgSelectConfig } from '@ng-select/ng-select';\r\nimport { ɵs } from '@ng-select/ng-select';\r\nimport { InternalUserComponent } from './maint/internal-user/internal-user.component';\r\nimport { AvatarModule } from 'ngx-avatar';\r\nimport { PermissionsByUserComponent } from './maint/permissions-by-user/permissions-by-user.component';\r\nimport { UserProfileComponent } from './maint/user-profile/user-profile.component';\r\nimport { RegVehicleContraComponent } from './docs/reg-vehicle-contra/reg-vehicle-contra.component';\r\nimport { RegvehicluedocuComponent } from './docs/regvehicluedocu/regvehicluedocu.component';\r\nimport { ProapprovedocumentsvehicleComponent } from './docs/proapprovedocumentsvehicle/proapprovedocumentsvehicle.component';\r\nimport { QremployeeComponent } from './excelencia/qremployee/qremployee.component';\r\nimport { EntryemployeeComponent } from './excelencia/entryemployee/entryemployee.component';\r\nimport { RegdriverComponent } from './docs/regdriver/regdriver.component';\r\nimport { CondochistoryvehiclesComponent } from './docs/condochistoryvehicles/condochistoryvehicles.component';\r\nimport { EvalassignbyuserComponent } from './processes/evalassignbyuser/evalassignbyuser.component';\r\nimport { DocshomeComponent } from './docs/docshome/docshome.component';\r\nimport { ApprovedocumentsbaseComponent } from './docs/approvedocumentsbase/approvedocumentsbase.component';\r\nimport {ParampreguntaComponent} from \"./maint/parampregunta/parampregunta.component\";\r\nimport { PdfViewerModule } from 'ng2-pdf-viewer';\r\nimport { ApprovedocumentsvehiclesComponent } from './docs/approvedocumentsvehicles/approvedocumentsvehicles.component';\r\nimport { ApprovedocumentscompaniesComponent } from './docs/approvedocumentscompanies/approvedocumentscompanies.component';\r\nimport { ApprovedocumentsemployeesComponent } from './docs/approvedocumentsemployees/approvedocumentsemployees.component';\r\nimport { ReportshomeComponent } from './reports/reportshome/reportshome.component';\r\nimport { RptdocumentexternalworkerComponent } from './reports/rptdocumentexternalworker/rptdocumentexternalworker.component';\r\nimport { RptworkersbycompanyComponent } from './reports/rptworkersbycompany/rptworkersbycompany.component';\r\nimport { RptvehiclesbycompanyComponent } from './reports/rptvehiclesbycompany/rptvehiclesbycompany.component';\r\nimport { RptevaluationrequestComponent } from './reports/rptevaluationrequest/rptevaluationrequest.component';\r\nimport { RptentryrequestComponent } from './reports/rptentryrequest/rptentryrequest.component';\r\nimport { RptworkpermissionComponent } from './reports/rptworkpermission/rptworkpermission.component';\r\nimport {TooltipModule} from \"primeng/tooltip\";\r\nimport {MatTableModule} from \"@angular/material/table\";\r\nimport {MatTreeModule} from \"@angular/material/tree\";\r\nimport {MatExpansionModule} from \"@angular/material/expansion\";\r\nimport {RptcompanyComponent} from \"./reports/rptcompy/rptcompany.component\";\r\n\r\n\r\nconst DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = {\r\n suppressScrollX: true,\r\n wheelSpeed: 1,\r\n wheelPropagation: true,\r\n minScrollbarLength: 20\r\n};\r\n\r\n@NgModule({\r\n declarations: [\r\n FullComponent,\r\n ModalFormComponent,\r\n NavigationComponent,\r\n BreadcrumbComponent,\r\n SidebarComponent,\r\n Ic2Component,\r\n BaseCrudComponent,\r\n CrudComponent,\r\n CompaniesComponent,\r\n SettingsComponent,\r\n ParameterComponent,\r\n CompanyComponent,\r\n CountryComponent,\r\n ProductionGroupComponent,\r\n UserComponent,\r\n FormshomeComponent,\r\n ProchomeComponent,\r\n DashboardComponent,\r\n ParamjobtypeComponent,\r\n ParamplantaComponent,\r\n ParampreguntaComponent,\r\n ParamareaComponent,\r\n ParamgeneralesComponent,\r\n ParamgenedetailComponent,\r\n ParamdocujobtypeComponent,\r\n ParamdocuComponent,\r\n ParamtypefoulComponent,\r\n ParamfoulsComponent,\r\n ParamsancionComponent,\r\n RegcompaniesComponent,\r\n RegcompaniesdocuComponent,\r\n ExcelenciahomeComponent,\r\n ParamcomunicadoComponent,\r\n ComunicadosComponent,\r\n ParamtipopreguntaComponent,\r\n ////ParampreguntaComponent,\r\n ParampreguntadetalleComponent,\r\n ParamevaluacionComponent,\r\n RegcompaniesempComponent,\r\n QuestionsComponent,\r\n QuestiondetailComponent,\r\n RegemployeeComponent,\r\n RegemployeedocComponent,\r\n ConsdochistoryComponent,\r\n ConsdochistorycompaniesComponent,\r\n ConsdochistoryemployeesComponent,\r\n ProapprovedocumentsComponent,\r\n ProapprovedocumentscompanyComponent,\r\n ProapprovedocumentsemployeesComponent,\r\n ProrequestComponent,\r\n MyevaluationComponent,\r\n MyevaluationepecificComponent,\r\n OpportunitiesComponent,\r\n EvaluationinternalComponent,\r\n RegtoolsequipmentComponent,\r\n ProadmissionappComponent,\r\n RepocreatorComponent,\r\n ReportingComponent,\r\n ProadmissemergappComponent,\r\n WorkersPlantComponent,\r\n ReportformsComponent,\r\n SapprovalComponent,\r\n ActnosecureComponent,\r\n CondinosecureComponent,\r\n IncidentComponent,\r\n OportunitymejorComponent,\r\n ActionplanComponent,\r\n PlanComponent,\r\n HseComponent,\r\n FivesComponent,\r\n ScheduleComponent,\r\n InternalUserComponent,\r\n PermissionsByUserComponent,\r\n UserProfileComponent,\r\n RegVehicleContraComponent,\r\n RegvehicluedocuComponent,\r\n ProapprovedocumentsvehicleComponent,\r\n QremployeeComponent,\r\n EntryemployeeComponent,\r\n RegdriverComponent,\r\n CondochistoryvehiclesComponent,\r\n EvalassignbyuserComponent,\r\n DocshomeComponent,\r\n ApprovedocumentsbaseComponent,\r\n ApprovedocumentsvehiclesComponent,\r\n ApprovedocumentscompaniesComponent,\r\n ApprovedocumentsemployeesComponent,\r\n ReportshomeComponent,\r\n RptdocumentexternalworkerComponent,\r\n RptworkersbycompanyComponent,\r\n RptvehiclesbycompanyComponent,\r\n RptevaluationrequestComponent,\r\n RptentryrequestComponent,\r\n RptworkpermissionComponent,\r\n RptcompanyComponent\r\n ],\r\n imports: [\r\n AvatarModule,\r\n YouTubePlayerModule,\r\n CommonModule,\r\n BrowserModule,\r\n FormsModule,\r\n BrowserAnimationsModule,\r\n ReactiveFormsModule,\r\n DataTablesModule,\r\n HttpClientModule,\r\n NgbModule,\r\n NgxSpinnerModule,\r\n NgSelectModule,\r\n PdfViewerModule,\r\n //RouterModule.forRoot(Ic2routes, {onSameUrlNavigation: 'reload'}),\r\n //RouterModule.forRoot(Ic2routes, {onSameUrlNavigation: 'reload'}),\r\n RouterModule.forRoot(Ic2routes, {relativeLinkResolution: 'legacy'}),\r\n PerfectScrollbarModule,\r\n NgMultiSelectDropDownModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n LaddaModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n LightboxModule,\r\n OrderModule,\r\n SafePipeModule,\r\n QuillModule.forRoot(),\r\n TooltipModule,\r\n MatTreeModule,\r\n ],\r\n providers: [\r\n {\r\n provide: PERFECT_SCROLLBAR_CONFIG,\r\n useValue: DEFAULT_PERFECT_SCROLLBAR_CONFIG\r\n },\r\n NgSelectConfig,\r\n ɵs,\r\n DatePipe,\r\n NgxImageCompressService,\r\n MatTableModule,\r\n MatTreeModule,\r\n ],\r\n schemas:[CUSTOM_ELEMENTS_SCHEMA]\r\n /*,\r\n bootstrap: [AppComponent]*/\r\n})\r\nexport class Ic2Module {}\r\n\r\n// required for AOT compilation\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http);\r\n //return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-blank-layout',\r\n templateUrl: './blank.component.html',\r\n styleUrls: []\r\n})\r\nexport class BlankComponent {}\r\n","\r\n\r\n\r\n","import { Component, OnInit, HostListener } from '@angular/core';\r\nimport { Router, NavigationEnd } from '@angular/router';\r\nimport { LoginService } from '../../../services/authentication/login.service';\r\ndeclare var $: any;\r\n\r\nimport { PerfectScrollbarConfigInterface } from 'ngx-perfect-scrollbar';\r\n\r\n@Component({\r\n selector: 'app-full-layout',\r\n templateUrl: './full.component.html',\r\n styleUrls: ['./full.component.scss']\r\n})\r\nexport class FullComponent implements OnInit {\r\n public config: PerfectScrollbarConfigInterface = {};\r\n permissions = [];\r\n\r\n constructor(public router: Router, public srv: LoginService) {}\r\n\r\n tabStatus = 'justified';\r\n\r\n public isCollapsed = false;\r\n\r\n public innerWidth: any;\r\n public defaultSidebar: any;\r\n public showSettings = false;\r\n public showMobileMenu = false;\r\n public expandLogo = true;\r\n\r\n options = {\r\n theme: 'light', // two possible values: light, dark\r\n dir: 'ltr', // two possible values: ltr, rtl\r\n layout: 'vertical', // fixed value. shouldn't be changed.\r\n sidebartype: 'iconbar', // four possible values: full, iconbar, overlay, mini-sidebar\r\n sidebarpos: 'fixed', // two possible values: fixed, absolute\r\n headerpos: 'fixed', // two possible values: fixed, absolute\r\n boxed: 'full', // two possible values: full, boxed\r\n navbarbg: 'skin7', // six possible values: skin(1/2/3/4/5/6)\r\n sidebarbg: 'skin6', // six possible values: skin(1/2/3/4/5/6)\r\n logobg: 'skin6' // six possible values: skin(1/2/3/4/5/6)\r\n };\r\n\r\n Logo() {\r\n this.expandLogo = !this.expandLogo;\r\n }\r\n\r\n ngOnInit() {\r\n if (this.router.url === '/') {\r\n this.router.navigate(['/dashboard/classic']);\r\n }\r\n this.defaultSidebar = this.options.sidebartype;\r\n this.handleSidebar();\r\n\r\n this.srv.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n\r\n this.router.events.subscribe((val) => {\r\n if( val instanceof NavigationEnd ){\r\n this.showMobileMenu = false;\r\n }\r\n });\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event) {\r\n this.handleSidebar();\r\n }\r\n\r\n handleSidebar() {\r\n this.innerWidth = window.innerWidth;\r\n //console.log(this.defaultSidebar);\r\n switch (this.defaultSidebar) {\r\n case 'full':\r\n case 'iconbar':\r\n //if (this.innerWidth < 1170) {\r\n if (this.innerWidth < 768) {\r\n this.expandLogo = true;\r\n this.options.sidebartype = 'mini-sidebar';\r\n }\r\n //else if (this.innerWidth < 767) {\r\n else if (this.innerWidth < 1170) {\r\n this.expandLogo = false;\r\n this.options.sidebartype = 'mini-sidebar';\r\n } \r\n else {\r\n this.expandLogo = true;\r\n this.options.sidebartype = this.defaultSidebar;\r\n }\r\n break;\r\n\r\n case 'overlay':\r\n this.expandLogo = true;\r\n if (this.innerWidth < 767) {\r\n this.options.sidebartype = 'mini-sidebar';\r\n } else {\r\n this.options.sidebartype = this.defaultSidebar;\r\n }\r\n break;\r\n\r\n default:\r\n }\r\n // console.log(this.options.sidebartype);\r\n }\r\n\r\n toggleSidebarType() {\r\n this.Logo();\r\n \r\n switch (this.options.sidebartype) {\r\n case 'full':\r\n case 'iconbar':\r\n this.options.sidebartype = 'mini-sidebar';\r\n break;\r\n\r\n case 'overlay':\r\n this.showMobileMenu = !this.showMobileMenu;\r\n break;\r\n\r\n case 'mini-sidebar':\r\n if (this.defaultSidebar === 'mini-sidebar') {\r\n this.options.sidebartype = 'full';\r\n } else {\r\n this.options.sidebartype = this.defaultSidebar;\r\n }\r\n break;\r\n\r\n default:\r\n }\r\n }\r\n\r\n hasPermission(str:string){\r\n if( this.permissions.indexOf(str) > -1 ){\r\n return true;\r\n }\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 \r\n \r\n
\r\n \r\n \r\n \r\n \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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-company',\r\n templateUrl: './company.component.html'\r\n})\r\nexport class CompanyComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n\r\n degrees:any;\r\n positions:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = 'Company/All';\r\n this.create_url = '';\r\n this.update_url = 'Company/Update';\r\n this.delete_url = '';\r\n this.search_fields = ['cmpName', 'cmpMail', 'cmpM3_ID'];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n to = form;\r\n\r\n var qst = this.update_url;\r\n this.isUpdating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations['updated'], '', 'success');\r\n }//end success\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n //this.closeModal(content);\r\n }\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'site_m3' | translate}}\r\n \r\n {{'email' | translate}}\r\n {{'cmp_is360' | translate}}{{'action' | translate}}
{{row.cmpID}}{{row.cmpName}}{{row.cmpM3_ID}}{{row.cmpMail}}{{ ( (row.cmpIs360) ? 'yes' : 'no') | translate }}\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'edit_item' | translate}}: {{u_obj['cmpName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { Newinfo } from '../../../interfaces/newinfo';\r\nimport { NgxImageCompressService } from 'ngx-image-compress';\r\n\r\nconst API_CONSINFO = environment.Global.API_CONSINFO;\r\nconst API_REGISTERINFO = environment.Global.API_REGISTERINFO;\r\nconst API_UPDATEINFO = environment.Global.API_UPDATEINFO;\r\nconst API_DESACTIVEINFO = environment.Global.API_DESACTIVEINFO;\r\nconst API_ACTIVEINFO = environment.Global.API_ACTIVEINFO;\r\n\r\n\r\n@Component({\r\n selector: 'app-comunicados',\r\n templateUrl: './comunicados.component.html',\r\n styleUrls: ['./comunicados.component.css']\r\n})\r\nexport class ComunicadosComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n RegNewInfo:FormGroup;\r\n fileName;\r\n foto64;\r\n imageSrc;\r\n\r\n\r\n\r\n file: any;\r\n localUrl: any;\r\n localCompressedURl:any;\r\n sizeOfOriginalImage:number;\r\n sizeOFCompressedImage:number;\r\n imgResultBeforeCompress:string;\r\n imgResultAfterCompress:string;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService,\r\n private imageCompress: NgxImageCompressService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.create_url = API_REGISTERINFO;\r\n this.read_url = API_CONSINFO;\r\n this.update_url = API_UPDATEINFO;\r\n this.delete_url = API_DESACTIVEINFO;\r\n this.active_url = API_ACTIVEINFO;\r\n\r\n this.search_fields = ['Name', 'Direction', 'Description'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n this.crearFormInfo();\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n\r\n var id:any;\r\n id = {};\r\n id.TypeID = this.id;\r\n this.messageShowLoading();\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.loadingList = false;\r\n // console.log(x)\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n rs.forEach(element => {\r\n element.CreationTime = element.CreationTime !== null ? element.CreationTime.split('T')[0] : null;\r\n element.DateEnd = element.DateEnd !== null ? element.DateEnd.split('T')[0] : null;\r\n });\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n crearFormInfo() {\r\n this.RegNewInfo = new FormGroup({\r\n Title: new FormControl('', Validators.compose([Validators.required])),\r\n SubTitle: new FormControl('', Validators.compose([Validators.required])),\r\n Description: new FormControl('', Validators.compose([Validators.required])),\r\n //UrlLinks: new FormControl('', Validators.compose([Validators.required])),\r\n DateEnd: new FormControl('', Validators.compose([Validators.required])),\r\n });\r\n }\r\n\r\n\r\n onFileChanged(event) {\r\n const reader = new FileReader();\r\n const file = event.target.files[0];\r\n const max_size = 5000000;\r\n let fileInput = event.target.files[0].size;\r\n if (fileInput > max_size) {\r\n return Swal.fire(this.translations.max_size_img,'

5MB

','error');\r\n } else {\r\n reader.readAsDataURL(file);\r\n reader.onload = () => {\r\n this.fileName = file.name + ' ' + file.type;\r\n const str = reader.result.toString();\r\n this.foto64 = str;\r\n this.imageSrc = str;\r\n };\r\n }\r\n }\r\n\r\n\r\n\r\n selectfile(event) {\r\n let fileName : any;\r\n this.file = event.target.files[0];\r\n fileName = this.file['name'];\r\n // console.log(event.target.files[0].size)\r\n if (event.target.files && event.target.files[0]) {\r\n let reader = new FileReader();\r\n reader.onload = (event: any) => {\r\n // console.warn(reader.result)\r\n this.localUrl = event.target.result;\r\n // this.compressFile(this.localUrl,fileName)\r\n }\r\n reader.readAsDataURL(event.target.files[0]);\r\n }\r\n }\r\n\r\n\r\n compressFile(image,fileName) {\r\n let orientation = -1;\r\n this.sizeOfOriginalImage = this.imageCompress.byteCount(image)/(1024*1024);\r\n // console.warn('Size in bytes is now:', this.sizeOfOriginalImage);\r\n this.imageCompress.compressFile(image, orientation, 50, 50).then(\r\n result => {\r\n this.imgResultAfterCompress = result;\r\n this.localCompressedURl = result;\r\n this.sizeOFCompressedImage = this.imageCompress.byteCount(result)/(1024*1024)\r\n // console.warn('Size in bytes after compression:', this.sizeOFCompressedImage);\r\n // create file from byte\r\n const imageName = fileName;\r\n // call method that creates a blob from dataUri\r\n const imageBlob = this.dataURItoBlob(this.imgResultAfterCompress.split(',')[1]);\r\n //imageFile created below is the new compressed file which can be send to API in form data\r\n const imageFile = new File([result], imageName, { type: 'image/jpeg' });\r\n this.imageSrc = result;\r\n });\r\n }\r\n\r\n dataURItoBlob(dataURI) {\r\n const byteString = window.atob(dataURI);\r\n const arrayBuffer = new ArrayBuffer(byteString.length);\r\n const int8Array = new Uint8Array(arrayBuffer);\r\n for (let i = 0; i < byteString.length; i++) {\r\n int8Array[i] = byteString.charCodeAt(i);\r\n }\r\n const blob = new Blob([int8Array], { type: 'image/jpeg' });\r\n return blob;\r\n }\r\n\r\n\r\n\r\n\r\n public createItem(row){\r\n // debugger;\r\n if (this.RegNewInfo.valid) {\r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n\r\n const newparam: Newinfo = new Newinfo();\r\n newparam.TypeID = this.id;\r\n newparam.Title = this.RegNewInfo.value.Title;\r\n newparam.SubTitle = this.RegNewInfo.value.SubTitle;\r\n newparam.Description = this.RegNewInfo.value.Description;\r\n newparam.UrlPicture = this.foto64;\r\n newparam.UrlLinks = this.RegNewInfo.value.UrlLinks;\r\n newparam.DateEnd = this.RegNewInfo.value.DateEnd;\r\n newparam.CreatorUser = this.userinfo['logon'];\r\n\r\n this.srv.postCall(qst, newparam).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.RegNewInfo.reset();\r\n this.imageSrc = \"\";\r\n this.closeModal('create1');\r\n this.getList();\r\n this.reload.next(true);\r\n Swal.fire('¡Creado!', x.msg, 'success');\r\n this.foto64 = null;\r\n this.imageSrc = null;\r\n } else{\r\n Swal.fire(x.msg, '', 'error');\r\n //this.closeModal(content);\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n }\r\n else {\r\n Swal.fire('Ingrese todos los campos requeridos', '', 'error');\r\n return;\r\n }\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n // debugger;\r\n var qst = this.update_url;\r\n this.isUpdating = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.Title == undefined) || (form.Title == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n\r\n\r\n to = {};\r\n to.Title = form.Title;\r\n to.SubTitle = form.SubTitle;\r\n to.Description = form.Description;\r\n to.UrlLinks = form.UrlLinks;\r\n to.UrlPicture = this.foto64 === undefined ? this.u_obj['UrlPicture'] : this.foto64;\r\n to.DateEnd = form.DateEnd\r\n to.InfoID = form.InfoID;\r\n // console.log(to);\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update2');\r\n Swal.fire('¡Actualizado!', x.msg, 'success');\r\n this.getList();\r\n this.foto64 = null;\r\n this.imageSrc = null;\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n }\r\n\r\n toggleEditable(event, id) {\r\n // debugger;\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n }\r\n }\r\n\r\n Activar(obj: any){\r\n\r\n\r\n var id:any;\r\n id = {};\r\n id.InfoID = obj;\r\n var qst = this.active_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n deleteItem(obj: any){\r\n\r\n var id:any;\r\n id = {};\r\n id.InfoID = obj;\r\n id.DeleteUser = this.userinfo['logon'];\r\n var qst = this.delete_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'menu_title' | translate}}\r\n \r\n {{'picture' | translate}}\r\n \r\n {{'url' | translate}}\r\n \r\n {{'date_creation' | translate}}\r\n \r\n {{'caducity_date' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.InfoID}}{{row.Title}}\"your{{'rute' | translate}} {{ row.CreationTime}} {{ row.DateEnd }}
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['InfoID']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \"your\r\n
\r\n
\r\n
\r\n
\r\n\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-country',\r\n templateUrl: './country.component.html'\r\n})\r\nexport class CountryComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n translations:any;\r\n\r\n degrees:any;\r\n positions:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = 'Country/All';\r\n this.create_url = '';\r\n this.update_url = '';\r\n this.delete_url = '';\r\n this.search_fields = ['couName', 'couIso', 'couIso3'];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n ISOISO3
{{row.couID}}{{row.couName}}{{row.couIso}}{{row.couIso3}}
\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 Swal from 'sweetalert2';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { LoginService } from '../../../services/authentication/login.service';\r\nimport { PermissionService } from 'src/app/services/authentication/permission.service';\r\n\r\n@Component({\r\n selector: 'app-crud',\r\n templateUrl: './crud.component.html',\r\n styleUrls: ['./crud.component.css']\r\n})\r\nexport class CrudComponent implements OnInit {\r\n\r\n translations:any;\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n items = [];\r\n permissions = [];\r\n\r\n \tconstructor(\r\n \t\tpublic _router: Router,\r\n public translate: TranslateService,\r\n public auth: LoginService,\r\n public permission: PermissionService\r\n \t) { }\r\n\r\n \tngOnInit() {\r\n let id = environment.Global.Menus.Mantenimiento// menu procesos\r\n this.permission.getModulesByMenuId(id).then(x => {\r\n x.forEach(element => {\r\n if (element.principal == 1) {\r\n this.items.push(element)\r\n }\r\n });\r\n })\r\n this.auth.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n \t}\r\n\r\n hasPermission(str:string){\r\n let flag = false;\r\n this.permissions.forEach(permission => {\r\n if(permission.Permission == str) {\r\n flag = true;\r\n }\r\n })\r\n return flag;\r\n }\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
{{ row.title | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Router } from '@angular/router';\r\nimport { Storage } from '@ionic/storage';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport Swal from 'sweetalert2';\r\nimport { environment } from 'src/environments/environment';\r\nimport { PermissionService } from 'src/app/services/authentication/permission.service';\r\nimport {Title} from \"@angular/platform-browser\";\r\n\r\nconst API_GET_ALL_PROFILES = environment.Global.API_GET_ALL_PROFILES;\r\nconst API_GET_ALL_USER_INTERNAL = environment.Global.API_GET_ALL_USER_INTERNAL;\r\nconst API_GET_USER_INTERNAL_BY_ID = environment.Global.API_GET_USER_INTERNAL_BY_ID;\r\nconst API_CREATE_USER_INTERNAL = environment.Global.API_CREATE_USER_INTERNAL;\r\nconst API_UPDATE_ALL_USER_INTERNAL = environment.Global.API_UPDATE_ALL_USER_INTERNAL;\r\nconst API_UPDATE_USER_PASSWORD_INTERNAL = environment.Global.API_UPDATE_USER_PASSWORD_INTERNAL;\r\nconst API_UPDATE_STATUS_USER_INTERNAL = environment.Global.API_UPDATE_STATUS_USER_INTERNAL;\r\n@Component({\r\n selector: 'app-internal-user',\r\n templateUrl: './internal-user.component.html',\r\n styleUrls: ['./internal-user.component.css']\r\n})\r\nexport class InternalUserComponent extends BaseCrudComponent implements OnInit {\r\n userinfo: any;\r\n imagePath: any = '../../../../assets/images/add_user.jpg';\r\n newImg = false;\r\n newImgSignature = false;\r\n editPass: boolean = true;\r\n profileList = [];\r\n pageSize = 5;\r\n password = '';\r\n imageSignaturePath:any= '../../../../assets/images/signature_user.png'\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n public translate: TranslateService,\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n\r\n });\r\n this.search_fields = ['UserId', 'username', 'name'];\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n await this.getList();\r\n\r\n // console.log(lista)\r\n }\r\n\r\n public async getList() {\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n await this.srv.getCall(API_GET_ALL_USER_INTERNAL).toPromise().then(x => {\r\n this.loadingList = false;\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n console.log(this.rows)\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Open creat modal for add user\r\n * @param modal internal user form container\r\n */\r\n public openCreateModal(modal) {\r\n this.c_obj = {};\r\n this.c_obj['profile'] = 1;\r\n this.modalService.open(modal, { size: 'lg', centered: true, keyboard: false, backdrop: 'static' });\r\n this.getProfiles();\r\n }\r\n\r\n\r\n /**\r\n * Create internal user form\r\n * @param fields internal user form fields\r\n * @returns if internal user form is valid, return true otherwise return false\r\n */\r\n public internalUserForm(fields: any): boolean {\r\n let internalUserForm: any = {};\r\n internalUserForm = new FormGroup(\r\n {\r\n 'address': new FormControl(fields.address, [Validators.required]),\r\n // 'areaid' : new FormControl(fields.areaid, [Validators.required]), se quita validacion porque aun no se tienen las areas\r\n 'birthday': new FormControl(fields.birthday, [Validators.required]),\r\n 'identification': new FormControl(fields.identification, [Validators.required]),\r\n 'lastname': new FormControl(fields.lastname, [Validators.required]),\r\n 'mail': new FormControl(fields.mail, [Validators.required]),\r\n 'name': new FormControl(fields.name, [Validators.required]),\r\n 'phone': new FormControl(fields.phone, [Validators.required]),\r\n // 'sectionid' : new FormControl(fields.sectionid, [Validators.required]), se quita validacion porque aun no se tienen las plantas\r\n }\r\n )\r\n return internalUserForm.valid;\r\n }\r\n\r\n /**\r\n * Save picture from PC to variable\r\n * @param param0 unstructured event in 'target'\r\n */\r\n public getImage({ target }) {\r\n let image = target.files;\r\n const reader = new FileReader();\r\n reader.readAsDataURL(image[0]);\r\n reader.onload = (_event) => {\r\n // cambia la foto cuando se va a editar\r\n if (this.u_obj['photo'] !== undefined) {\r\n this.u_obj['photo'] = reader.result;\r\n }\r\n this.imagePath = reader.result;\r\n // console.log(this.imagePath)\r\n this.newImg = true;\r\n }\r\n }\r\n private sizeCreate(){\r\n let createSize=false\r\n let create=document.getElementById(\"fileCreate\") as HTMLInputElement;\r\n if(create!=null &&create.size>1000000){\r\n createSize=true;\r\n }\r\n return createSize;\r\n }\r\n private sizeUpdate(){\r\n let updateSize=false\r\n let update=document.getElementById(\"fileUpdate\") as HTMLInputElement;\r\n if(update!=null && update.size>1000000){\r\n updateSize=true;\r\n }\r\n return updateSize;\r\n }\r\n public getImageSignature({ target }) {\r\n\r\n\r\n if(this.sizeCreate() || this.sizeUpdate()){\r\n Swal.fire(this.translations['pdi_img_toobig'], '', 'error');\r\n return;\r\n }\r\n let image = target.files;\r\n const reader = new FileReader();\r\n reader.readAsDataURL(image[0]);\r\n reader.onload = (_event) => {\r\n // cambia la foto cuando se va a editar\r\n if (this.u_obj['PhotoSignature'] !== undefined) {\r\n this.u_obj['PhotoSignature'] = reader.result;\r\n }\r\n this.imageSignaturePath = reader.result;\r\n // console.log(this.imagePath)\r\n this.newImgSignature = true;\r\n }\r\n }\r\n /**\r\n * Function to edit password\r\n */\r\n public editPassword() {\r\n this.editPass = false;\r\n }\r\n\r\n /**\r\n * method for close modal and reset image profile\r\n * @param modal modal container\r\n */\r\n public closeModal(modal) {\r\n this.modalService.dismissAll(modal);\r\n this.editPass = true;\r\n this.imagePath = '../../../../assets/images/add_user.jpg';\r\n this.imageSignaturePath='../../../../assets/images/signature_user.png';\r\n\r\n }\r\n\r\n /**\r\n * method for create a new user in db\r\n * @param create1 modal container\r\n * @param object objet with user data\r\n */\r\n public async createItem(modal, object) {\r\n\r\n let fileCreate=document.getElementById(\"fileCreate\") as HTMLInputElement\r\n if(object['DocumentCertificate']==true && fileCreate.files.length==0){\r\n Swal.fire(this.translations.document, this.translations.document_error_minqty, 'error');\r\n return;\r\n }\r\n if(this.sizeCreate()){\r\n Swal.fire(this.translations['pdi_img_toobig'], '', 'error');\r\n return;\r\n }\r\n this.isCreating = true;\r\n let validated = this.internalUserForm(object);\r\n if (!validated) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n if (object['name'].includes(' ')) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['only_one_name'], '', 'error');\r\n return;\r\n }\r\n\r\n\r\n\r\n let user = object['name'].substring(0, 1).toLowerCase();\r\n if (object['lastname'].includes(' ')) {\r\n let apellidos = object['lastname'].split(' ');\r\n user += apellidos[0].substring(0, 1).toLowerCase() + apellidos[0].toLowerCase();\r\n } else {\r\n user += object['lastname'].toLowerCase();\r\n }\r\n let new_user = {\r\n username: user,\r\n password: this.password,\r\n identification: object['identification'],\r\n name: object['name'].trim(),\r\n lastname: object['lastname'],\r\n phone: object['phone'],\r\n birthday: object['birthday'],\r\n sectionid: null,\r\n areaid: null,\r\n address: object['address'],\r\n email: object['mail'],\r\n photo: this.imagePath,\r\n creationuser: this.userinfo['logon'],\r\n profileId: object['profile'],\r\n DocumentApprove: object['DocumentApprove'],\r\n DocumentStatusReverse: object['DocumentStatusReverse'],\r\n DocumentCertificate:object['DocumentCertificate'],\r\n SendMailMasive:object['SendMailMasive'],\r\n PhotoSignature:await this.toDataURL(this.imageSignaturePath)\r\n }\r\n // console.log(new_user)\r\n this.srv.postCall(API_CREATE_USER_INTERNAL, new_user).subscribe(x => {\r\n if (x.success) {\r\n this.isCreating = false;\r\n if (x.val !== null) {\r\n // console.log('entro aqui')\r\n Swal.fire(\r\n {\r\n title: this.translations['user_success'],\r\n icon: 'success'\r\n }\r\n ).then((result) => {\r\n if (result.value) {\r\n this.getList();\r\n this.closeModal(modal);\r\n }\r\n });\r\n }\r\n }\r\n }, err => {\r\n this.isCreating = false;\r\n Swal.fire('Error');\r\n });\r\n\r\n }\r\n\r\n public createPassword() {\r\n let nam = this.c_obj['name'].substring(0, 3).toLowerCase();\r\n let las = this.c_obj['lastname'].substring(0, 3).toLowerCase();\r\n let num = this.c_obj['identification'].substring(0, 5).toLowerCase();\r\n this.password = 'DG_' + (nam + las) + num;\r\n // if (this.c_obj['name'] == undefined || this.c_obj['identification'] == undefined) {\r\n // this.c_obj['lastname'] = ''\r\n // return Swal.fire(this.translations.addnamerucuser, '', 'error');\r\n // } else {\r\n\r\n // }\r\n }\r\n public ValidaCheck(val: any) {\r\n console.log(this.imageSignaturePath);\r\n console.log(val.target.checked); debugger;\r\n if (val.target.name == \"DocumentApprove\") {\r\n this.c_obj['DocumentApprove'] = val.target.checked\r\n this.u_obj['DocumentApprove'] = val.target.checked\r\n } else if (val.target.name == \"DocumentStatusReverse\") {\r\n this.c_obj['DocumentStatusReverse'] == val.target.checked\r\n this.u_obj['DocumentStatusReverse'] == val.target.checked\r\n }else if(val.target.name==\"DocumentCertificate\"){\r\n this.u_obj['DocumentCertificate'] = val.target.checked\r\n this.c_obj['DocumentCertificate'] = val.target.checked\r\n }else if (val.target.name==\"SendMailMasive\"){\r\n this.u_obj['SendMailMasive'] = val.target.checked\r\n this.c_obj['SendMailMasive'] = val.target.checked\r\n }\r\n\r\n // if (val.target.checked == true && ventana == \"create\") {\r\n // if (opcion == 1) {\r\n // this.c_obj['DocumentApprove'] = 1;\r\n // this.c_obj['DocumentStatusReverse'] = 1;\r\n\r\n // } else if (opcion == 2) {\r\n // this.c_obj['DocumentApprove'] = 0\r\n // this.c_obj['DocumentStatusReverse'] = 0;\r\n // }\r\n // } else {\r\n // if (opcion == 1) {\r\n // this.u_obj['DocumentApprove'] = 1;\r\n // } else {\r\n // this.u_obj['DocumentApprove'] = 0;\r\n // }\r\n // if (opcion == 2) {\r\n // this.u_obj['DocumentApprove'] = 0;\r\n // this.u_obj['DocumentStatusReverse'] = 0;\r\n // }\r\n // }\r\n }\r\n\r\n public onlyNumberKey(event: any): boolean {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n\r\n public getProfiles() {\r\n this.srv.getCall(API_GET_ALL_PROFILES).subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n // console.log(x.val)\r\n this.profileList = x.val\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.profileList = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public deleteItem({ UserId }) {\r\n this.ActivarItem(UserId, 3);\r\n }\r\n\r\n public activarItem(event, { UserId }) {\r\n if (event.target.checked) {\r\n this.ActivarItem(UserId, 1);\r\n } else {\r\n this.ActivarItem(UserId, 2);\r\n }\r\n }\r\n\r\n public ActivarItem(id, status) {\r\n var to: any;\r\n to = {};\r\n to.UserId = id;\r\n to.Status = status;\r\n to.modificateuser = this.userinfo['logon'];\r\n // console.log(to)\r\n this.srv.postCall(API_UPDATE_STATUS_USER_INTERNAL, to).subscribe(x => {\r\n if (x.success) {\r\n Swal.fire(\r\n {\r\n title: this.translations['msg_update'],\r\n icon: 'success'\r\n }\r\n ).then((result) => {\r\n if (result.value) {\r\n this.getList();\r\n }\r\n });\r\n }\r\n }, err => {\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public openUpdateModal(modal, row) {\r\n\r\n\r\n // console.log(row)\r\n this.u_obj = {};\r\n this.getProfiles();\r\n this.u_obj['userId'] = row['UserId'];\r\n this.u_obj['photo'] = row['photo'];\r\n this.u_obj['identification'] = row['identification'];\r\n this.u_obj['birthday'] = row['birthday'].split('T')[0];\r\n this.u_obj['name'] = row['name'];\r\n this.u_obj['lastname'] = row['lastname'];\r\n this.u_obj['mail'] = row['email'];\r\n this.u_obj['phone'] = row['phone'];\r\n this.u_obj['address'] = row['address'];\r\n this.u_obj['profile'] = row['ProfileId'];\r\n this.u_obj['sectionid'] = row['sectionid'];\r\n this.u_obj['areaid'] = row['areaid'];\r\n this.u_obj['username'] = row['username'];\r\n this.imagePath = row['photo'] != null ? row['photo'] : '../../../../assets/images/add_user.jpg';\r\n this.u_obj['DocumentApprove'] = row['DocumentApprove'],\r\n this.u_obj['DocumentStatusReverse'] = row['DocumentStatusReverse']\r\n this.u_obj['DocumentCertificate']=row['DocumentCertificate']\r\n this.u_obj['PhotoSignature']=row['PhotoSignature']\r\n this.u_obj['SendMailMasive']=row['SendMailMasive']\r\n\r\n console.log(this.u_obj)\r\n this.modalService.open(modal, { size: 'lg', centered: true, keyboard: false, backdrop: 'static' });\r\n\r\n }\r\n async toDataURL(url) {\r\n console.log(\"Downloading image...\");\r\n var res = await fetch(url);\r\n var blob = await res.blob();\r\n\r\n const result = await new Promise((resolve, reject) => {\r\n var reader = new FileReader();\r\n reader.addEventListener(\"load\", function () {\r\n resolve(reader.result);\r\n }, false);\r\n\r\n reader.onerror = () => {\r\n return reject(this);\r\n };\r\n reader.readAsDataURL(blob);\r\n })\r\n\r\n return result\r\n };\r\n public async updateItem(modal, object) {\r\n let fileUpdate=document.getElementById(\"fileUpdate\") as HTMLInputElement;\r\n\r\n if(object['DocumentCertificate']==true && (fileUpdate.files.length==0 && object[\"PhotoSignature\"]==null)){\r\n Swal.fire(this.translations.document, this.translations.document_error_minqty, 'error');\r\n return;\r\n }\r\n if(this.sizeUpdate()){\r\n Swal.fire(this.translations['pdi_img_toobig'], '', 'error');\r\n return;\r\n }\r\n this.isUpdating = true;\r\n let validated = this.internalUserForm(object);\r\n if (!validated) {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n if (object['name'].split(' ').length > 1 && object['name'].split(' ')[1] !== '') {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['only_one_name'], '', 'error');\r\n return;\r\n }\r\n\r\n let edit_user = {\r\n UserId: object['userId'],\r\n username: object['username'],\r\n password: object['password'] || null,\r\n identification: object['identification'],\r\n name: object['name'].trim(),\r\n lastname: object['lastname'],\r\n phone: object['phone'],\r\n birthday: object['birthday'],\r\n sectionid: null,\r\n areaid: null,\r\n address: object['address'],\r\n email: object['mail'],\r\n photo: this.imagePath,\r\n ProfileId: object['profile'],\r\n modificateuser: this.userinfo['logon'],\r\n DocumentApprove: object['DocumentApprove'],\r\n DocumentStatusReverse: object['DocumentStatusReverse'],\r\n DocumentCertificate: object['DocumentCertificate'],\r\n SendMailMasive:object['SendMailMasive'],\r\n PhotoSignature:await this.toDataURL(this.imageSignaturePath)\r\n }\r\n console.log(\"UserEDIT:\", edit_user)\r\n this.srv.postCall(API_UPDATE_ALL_USER_INTERNAL, edit_user).subscribe(x => {\r\n if (x.success) {\r\n this.isUpdating = false;\r\n if (x.val !== null) {\r\n Swal.fire(\r\n {\r\n title: this.translations['user_updated'],\r\n icon: 'success'\r\n }\r\n ).then((result) => {\r\n if (result.value) {\r\n this.getList();\r\n this.closeModal(modal);\r\n }\r\n });\r\n }\r\n }\r\n }, err => {\r\n this.isUpdating = false;\r\n Swal.fire('Error');\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'username'| translate}}\r\n {{'name' | translate}}{{'email' | translate}}{{'status' | translate}}{{'habidesa' | translate}}{{'type' | translate}}{{'approve' | translate}}{{'StatusReverse' | translate}}{{'action' | translate}}
{{row.UserId}}{{row.username}}{{row.name}} {{row.lastname}}{{row.email}}{{row.status == 'A' ? 'Activo' : 'Inactivo'}}\r\n
\r\n \r\n
\r\n
{{row.tipo}}{{row.DocumentApprove == true ? 'SI' : 'NO'}}{{row.DocumentStatusReverse == true ? 'SI' : 'NO'}}\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{'create_item' | translate}}

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

{{'internal_user_creation' | translate}}

\r\n
\r\n
\r\n
\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_data' | translate}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n {{profile.Name}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n

{{'DocumentsActions' | translate}}

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

{{'create_item' | translate}}

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

{{'internal_user_creation' | translate}}

\r\n
\r\n
\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_data' | translate}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n {{profile.Name}}\r\n \r\n
\r\n
\r\n
\r\n

{{'user_data' | translate}}

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

{{'DocumentsActions' | translate}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n \"\"\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry, debounce } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { Newsubcomjob } from '../../../interfaces/newsubcomjob';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\nimport { thresholdFreedmanDiaconis } from 'd3-array';\r\nimport { analyzeAndValidateNgModules } from '@angular/compiler';\r\nimport { now } from 'moment';\r\nimport * as moment from 'moment-timezone';\r\n\r\n\r\nconst API_UPDATEOPORTUNITIES=Global.API_UPDATEOPORTUNITIES;\r\n\r\n@Component({\r\n selector: 'app-opportunities',\r\n templateUrl: './opportunities.component.html',\r\n styleUrls: ['./opportunities.component.css']\r\n})\r\nexport class OpportunitiesComponent extends BaseCrudComponent {\r\n userinfo:any;\r\n Opportunities: FormGroup;\r\n flag = true;\r\n curr_parameter:any;\r\n evaluacion:any;\r\n data_emp:any;\r\n veces:any;\r\n\r\n constructor(srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n\r\n this.update_url = API_UPDATEOPORTUNITIES;\r\n this.data_emp=[];\r\n //this.read_url=\"Questions/GetQuestionsByEvaluationId\";\r\n //this.search_fields = ['CompDocumentId','NameDoc','plazo'];\r\n\r\n\r\n //this.c_obj['Respuesta'] = [];\r\n this.curr_parameter = 0;\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n //this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n\r\n });\r\n\r\n this.curr_parameter = 0;\r\n this.GetEvaluation().subscribe(x => {\r\n if(x != false){\r\n this.evaluacion = x;\r\n }\r\n });\r\n }\r\n\r\n onlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n GetEmployeeforIdentification(obj:any)\r\n {\r\n\r\n\r\n //debugger;\r\n var qst = \"Employee/GetIdentification/\"+obj;\r\n //console.log(\"cedula:\",this.c_obj['identification']);\r\n\r\n\r\n //console.log(\"usuario logoneado:\",this.userinfo)\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n console.log(\"X:\",x.val);debugger;\r\n if(x.success)\r\n {\r\n if(x.val != null){\r\n //debugger;\r\n //Swal.fire(this.translations.error, this.translations.msg_hability_request, 'error');\r\n\r\n //Swal.fire('', 'Trabajador no esta habilitado', 'success');\r\n this.c_obj['NumberIdentification']=x.val['NumberIdentification'];\r\n this.c_obj['nameemployee']=x.val['Name'];\r\n this.c_obj['NameCompany']=x.val['namecompany'];\r\n this.c_obj['EmployeeId']=x.val['EmployeeId'];\r\n this.curr_parameter = 0;\r\n if(x.val instanceof Array){\r\n this.c_obj['NumberIdentification']=x.val[0]['NumberIdentification'];\r\n this.c_obj['nameemployee']=x.val[0]['Name'];\r\n this.c_obj['NameCompany']=x.val[0]['namecompany'];\r\n this.c_obj['EmployeeId']=x.val[0]['EmployeeId'];\r\n }\r\n this.ConsultaData(this.curr_parameter);\r\n return;\r\n }\r\n else{\r\n this.c_obj['NumberIdentification']=\"\";\r\n this.c_obj['nameemployee']=\"\";\r\n this.c_obj['NameCompany']=\"\"\r\n this.c_obj['EmployeeId']=\"\";\r\n this.flag=true;\r\n }\r\n }else {\r\n this.flag=true;\r\n return;\r\n }\r\n });\r\n\r\n\r\n }\r\n GetEvaluation()\r\n {\r\n var qst = \"Evaluation/AllActive\";\r\n\r\n return this.srv.getCall(qst).pipe(\r\n mergeMap(data => {\r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n //console.log(\"data:\",data);\r\n //console.log(\"mydata:\",mydata);\r\n\r\n if(mydata.success == true ){\r\n return of(mydata.val);\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(false))\r\n );\r\n }\r\n\r\n ConsultaData(data:any)\r\n {\r\n var qst =\"Myevaluation/EmployeeByEvaluation/\"+this.c_obj['EmployeeId'] ;\r\n //this.loadingList = true;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n console.log(\"data:\",x.val.length);\r\n if (x.val.length>0){\r\n //this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.flag=false;\r\n console.log(\"rs:\",rs);\r\n }\r\n else{\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n openUpdateModal(content:any, obj:any){\r\n this.curr_parameter = 0;\r\n this.veces=0;\r\n this.data_emp=this.c_obj;\r\n this.modalService.open(content, { backdrop: 'static', keyboard : false, size:'lg' });\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n }\r\n\r\n AumentarVeces(content:any, form:any)\r\n {\r\n var validated = true;\r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n if (this.veces == undefined || this.veces == 0) {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to:any;\r\n to = {};\r\n //debugger;\r\n //console.log(\"form1:\",form);\r\n form.userModification = this.userinfo.logon;\r\n //form.max_repetition=(Number(form.vecesrepetidas)+Number(form.max_repetition)).toString();\r\n form.max_repetition=(Number(this.veces)+Number(form.max_repetition)).toString();\r\n\r\n\r\n to.MyEvaluationId=form.MyEvaluationId;\r\n to.max_repetition = form.max_repetition;\r\n to.userModification=form.userModification;\r\n to.requiredBy=form.requiredBy;\r\n to.requiredWhy=form.requiredWhy;\r\n //console.log(\"to:\",to);\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n this.closeModal('update1');\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.GetEmployeeforIdentification(this.data_emp.NumberIdentification)\r\n\r\n }\r\n }, err => {\r\n //console.log(err);\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n // debugger;\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'requiredWhy': new FormControl(fields.requiredWhy, [Validators.required]),\r\n 'requiredBy': new FormControl(fields.requiredBy, [Validators.required])\r\n });\r\n\r\n return mygroup.valid;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'opportunities_update' | translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
{{'evaluation_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
{{'evaluation'| translate}}{{'repeat' | translate}}{{'max_repeat' | translate}}{{'reason' | translate}}{{'requiredby' | translate}}
{{parameter.NameEvaluation}}{{parameter.vecesrepetidas}}{{parameter.max_repetition}}{{parameter.requiredWhy}}{{parameter.requiredBy}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n

{{'edit_item' | translate}}: {{u_obj['NameEvaluation']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSULTASECCIONPLANTA = environment.Global.API_CONSULTASECCIONPLANTA;\r\nconst API_REGISTROSECCIONPLANTA = environment.Global.API_REGISTROSECCIONPLANTA;\r\nconst API_UPDATESECCIONPLANTA = environment.Global.API_UPDATESECCIONPLANTA;\r\nconst API_ACTIVARSECCIONPLANTA = environment.Global.API_ACTIVARSECCIONPLANTA;\r\nconst API_DELETESECCIONPLANTA = environment.Global.API_DELETESECCIONPLANTA;\r\n\r\n@Component({\r\n selector: 'app-paramarea',\r\n templateUrl: './paramarea.component.html',\r\n styleUrls: ['./paramarea.component.css']\r\n})\r\nexport class ParamareaComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n PlantaIdtemp:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) { \r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSULTASECCIONPLANTA;\r\n this.create_url = API_REGISTROSECCIONPLANTA;\r\n this.update_url = API_UPDATESECCIONPLANTA;\r\n this.delete_url = API_DELETESECCIONPLANTA;\r\n this.active_url = API_ACTIVARSECCIONPLANTA;\r\n\r\n this.search_fields = ['Name','Ubication'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n \r\n var id:any;\r\n id = {};\r\n id.PlantaID = this.id;\r\n this.PlantaIdtemp = this.id;\r\n this.messageShowLoading();\r\n \r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n if(x.val.length != 0){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n }else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n var validated = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n \r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n form.PlantaID = this.id;\r\n to = form;\r\n \r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire('¡Creado!', x.msg, 'success');\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'NameSeccion': new FormControl(fields.NameSeccion, [Validators.required]),\r\n 'Ubication': new FormControl(fields.Ubication, [])\r\n });\r\n \r\n return mygroup.valid;\r\n }\r\n\r\n \r\npublic updateItem(content:any, form:any){\r\n this.isCreating = true;\r\n var qst = this.update_url;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.Name == undefined) || (form.Name == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', '', 'warning');\r\n return;\r\n }\r\n\r\n to = {};\r\n to.NameSeccion = form.Name;\r\n to.Ubication = form.Ubication;\r\n to.PlantaID = this.id;\r\n to.CreatorUserId = form.CreatorUserId;\r\n to.LastModifierUserID = this.userinfo['userId'];\r\n to.SeccionID = form.SeccionID;\r\n \r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update5');\r\n Swal.fire('¡Actualizado!', x.msg, 'success');\r\n this.getList();\r\n \r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n}\r\n\r\ntoggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.ActivarItem(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n}\r\n}\r\n\r\ndeleteItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.SeccionID = obj;\r\n var qst = this.delete_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\nActivarItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.SeccionID = obj;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'ubicacion' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.SeccionID}}{{row.Name}}{{row.Ubication}}
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSTIPOCOMUNICADO = environment.Global.API_CONSTIPOCOMUNICADO;\r\nconst API_REGISTERTYPEINFO = environment.Global.API_REGISTERTYPEINFO;\r\nconst API_UPDATETYPEINFO = environment.Global.API_UPDATETYPEINFO;\r\nconst API_DESACTIVETYPEINFO = environment.Global.API_DESACTIVETYPEINFO;\r\nconst API_ACTIVETYPEINFO = environment.Global.API_ACTIVETYPEINFO;\r\n\r\n\r\n@Component({\r\n selector: 'app-paramcomunicado',\r\n templateUrl: './paramcomunicado.component.html',\r\n styleUrls: ['./paramcomunicado.component.css']\r\n})\r\nexport class ParamcomunicadoComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSTIPOCOMUNICADO;\r\n this.create_url = API_REGISTERTYPEINFO;\r\n this.update_url = API_UPDATETYPEINFO;\r\n this.delete_url = API_DESACTIVETYPEINFO;\r\n this.active_url = API_ACTIVETYPEINFO;\r\n\r\n this.search_fields = ['Name', 'Direction', 'Description'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n }else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n\r\n}\r\n\r\npublic createItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n to = form;\r\n\r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations.msg_create, x.msg, 'success');\r\n this.c_obj = {};\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n}\r\n\r\nvalidateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'NameType': new FormControl(fields.NameType, [Validators.required]),\r\n 'Description': new FormControl(fields.Description, [])\r\n });\r\n\r\n return mygroup.valid;\r\n}\r\n\r\npublic updateItem(content:any, form:any){\r\n\r\n var qst = this.update_url;\r\n this.isCreating = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.NameType == undefined) || (form.NameType == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n\r\n to = {};\r\n to.NameType = form.NameType;\r\n to.Description = form.Description;\r\n to.TypeID = form.TypeID\r\n to.LastModifierUser = this.userinfo['logon'];\r\n \r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update1');\r\n Swal.fire('¡Actualizado!', x.msg, 'success');\r\n this.getList();\r\n \r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n}\r\n\r\ntoggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n}\r\n}\r\n\r\nActivar(obj: any){\r\n var id:any;\r\n id = {};\r\n id.TypeID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.active_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\ndeleteItem(obj: any){\r\n\r\n var id:any;\r\n id = {};\r\n id.TypeID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n id.DeleteUser = this.userinfo['logon'];\r\n var qst = this.delete_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\n\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'desc' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.TypeID}}{{row.NameType}}{{row.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

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\nimport {DEBUG} from \"@angular/compiler-cli/src/ngtsc/logging/src/console_logger\";\r\n\r\nconst API_CONSUDOCU = environment.Global.API_CONSPARAMDOCUMENT;\r\nconst API_REGISTERDOCU = environment.Global.API_REGPARAMDOCUMEN;\r\nconst API_UPDATEDOCU = environment.Global.API_UPDATEPARAMDOCUMEN;\r\nconst API_DELETEDOCU = environment.Global.API_UPDATESTATUSPARAMDOCUMEN;\r\nconst API_ACTIVEDOCU = environment.Global.API_UPDATESTATUSPARAMDOCUMEN;\r\nconst API_CONSULTAJOBTYPE = environment.Global.API_CONSULTAJOBTYPE;\r\n\r\n\r\n@Component({\r\n selector: 'app-paramdocu',\r\n templateUrl: './paramdocu.component.html',\r\n styleUrls: ['./paramdocu.component.css']\r\n})\r\nexport class ParamdocuComponent extends BaseCrudComponent {\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n sugeridotemp:any;\r\n vehiculotemp:any;\r\n listTypeParameter:any;\r\n typeModal= true;\r\n jobs = [];\r\n listaTrabajos = [];\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSUDOCU;\r\n this.create_url = API_REGISTERDOCU;\r\n this.update_url = API_UPDATEDOCU;\r\n this.delete_url = API_DELETEDOCU;\r\n this.active_url = API_ACTIVEDOCU;\r\n\r\n this.search_fields = ['DocumentName', 'DocumentDescription'];\r\n\r\n this.c_obj['ParameterDocument'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n }\r\n });\r\n\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.loadingRequired = false;\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.loadingRequired = true;\r\n this.getList();\r\n\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getTypeParameterData();\r\n await this.getTrabajo()\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n this.pageSize = 5;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '','warning');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n debugger\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n var validated = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n form.sugeridotemp = this.sugeridotemp;\r\n let typedocument = [];\r\n let jobDocument=[];\r\n if(this.c_obj['IsByUser']){\r\n form['docuTypeID'].forEach(element => {\r\n typedocument.push(\r\n {\r\n TypeUserByDocumentId: null,\r\n ParamDocumentID: null,\r\n ID: element\r\n }\r\n )\r\n form['TypeUserByDocument'] = typedocument;\r\n })\r\n }else{\r\n\r\n form['docuJobTypeID'].forEach(element => {\r\n jobDocument.push(\r\n {\r\n JobTypeID: element,\r\n docuTypeID: null,\r\n }\r\n )\r\n })\r\n form['TypeJobByDocument'] = jobDocument;\r\n }\r\n\r\n to = {\r\n DocumentName : form.DocumentName,\r\n DocumentDescription: form.DocumentDescription,\r\n DaysAlert: form.DaysAlert,\r\n Is_required: form.Sugerido,\r\n CreatorUser: form.CreatorUser,\r\n TypeUserByDocument: form.TypeUserByDocument,\r\n JobTypeXDocumentJobType: form.TypeJobByDocument,\r\n IsByUser: form.IsByUser,\r\n };\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n this.confirmDialogWithModal(this.translations.msg_create, x.msg, 'success', content);\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n\r\n validateCreateInfo(fields:any){\r\n debugger\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'DocumentName': new FormControl(fields.DocumentName, [Validators.required]),\r\n 'DocumentDescription': new FormControl(fields.DocumentDescription, []),\r\n 'IsByUser': new FormControl(fields.IsByUser, [Validators.required]),\r\n 'DaysAlert': new FormControl(fields.DaysAlert, [Validators.required]),\r\n 'docuTypeID': new FormControl(fields.docuTypeID, this.c_obj['IsByUser']==true? Validators.required : []),\r\n 'docuJobTypeID': new FormControl(fields.docuJobTypeID, this.c_obj['IsByUser']==false? Validators.required : []),\r\n\r\n });\r\n\r\n return mygroup.valid;\r\n }\r\n\r\n changeupdate(event){\r\n if ( event.target.checked ) {\r\n this.sugeridotemp = true;\r\n }else {\r\n this.sugeridotemp = false;\r\n }\r\n }\r\n\r\n\r\n public updateItem(content:any, form:any){\r\n var qst = this.update_url;\r\n this.isUpdating = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.DocumentName == undefined) || (form.DetailName == '') ){\r\n this.isUpdating = false;\r\n Swal.fire(this.translations.msg_all_required, '', 'warning');\r\n return;\r\n }\r\n\r\n to = {};\r\n to.DocumentName = form.DocumentName;\r\n to.DocumentDescription = form.DocumentDescription;\r\n to.DaysAlert = form.DaysAlert;\r\n to.TypeUserByDocument = [];\r\n to.JobTypeXDocumentJobType = [];\r\n to.LastModifierUser = this.userinfo['logon'];\r\n to.ParamDocumentID = form.ParamDocumentID;\r\n to.Is_required = form.Is_required;\r\n if(this.u_obj[\"IsByUser\"]){\r\n if (form.docuTypeID.length > 0) {\r\n form.docuTypeID.forEach(element => {\r\n let obj = {\r\n ParamDocumentID: form.ParamDocumentID,\r\n ID: element\r\n }\r\n to.TypeUserByDocument.push(obj)\r\n })\r\n }\r\n }else{\r\n if (form.docuJobTypeID.length > 0) {\r\n form.docuJobTypeID.forEach(element => {\r\n let obj = {\r\n ParamDocumentID: form.ParamDocumentID,\r\n JobTypeID: element,\r\n }\r\n to.JobTypeXDocumentJobType.push(obj)\r\n })\r\n }\r\n }\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.confirmDialogWithModal(this.translations.msg_update, x.msg, 'success', content);\r\n }\r\n }, err => {\r\n Swal.close\r\n Swal.fire('', err, 'error');\r\n });\r\n\r\n }\r\n\r\n toggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id, true);\r\n }else {\r\n this.Activar(id, false);\r\n }\r\n }\r\n\r\n Activar(obj: any, flag){\r\n var id:any;\r\n id = {};\r\n id.ParamDocumentID = obj;\r\n id.LastModifierUser = this.userinfo['userId'];\r\n id.Status= flag ? 1: 2;\r\n id.DeleteUser = this.userinfo['userId'];\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n if(x.success){\r\n this.confirmDialog(this.translations.msg_update, x.msg, 'success');\r\n }\r\n else{\r\n this.confirmDialog('', x.msg, 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public getTypeParameterData(){\r\n var par_url = \"SystemParameter/GetSystemParameterField\";\r\n par_url=par_url+\"/\"+\"PARMDOCUMENT\";\r\n this.srv.getCall(par_url).toPromise().then( x => {\r\n if (x.val.length > 0) {\r\n this.listTypeParameter = x.val\r\n }\r\n });\r\n }\r\n\r\n public DeletedItem(id:any){\r\n var to:any;\r\n to = {};\r\n to.ParamDocumentID = id;\r\n to.LastModifierUser = this.userinfo['userId'];\r\n to.DeleteUser=this.userinfo['userId'];\r\n to.Status=3;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.confirmDialog(this.translations.msg_delete, x.msg, 'success');\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n }\r\n\r\n public openCreateModal(modal) {\r\n this.isCreating = false;\r\n this.c_obj = {};\r\n this.modalService.open(modal, { centered: true, backdrop: 'static', keyboard: false, });\r\n }\r\n\r\n public openUpdateModal(modal, obj) {\r\n debugger\r\n this.isUpdating = false;\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n this.u_obj.docuTypeID = [];\r\n this.u_obj.docuJobTypeID = [];\r\n this.modalService.open(modal, {centered: true, backdrop: 'static', keyboard: false, });\r\n if (this.u_obj.TypeUserByDocument.length > 0) {\r\n this.u_obj.TypeUserByDocument.forEach(element => {\r\n this.u_obj.docuTypeID.push(element.ID);\r\n });\r\n }\r\n if (this.u_obj.JobTypeXDocumentJobType.length > 0) {\r\n this.u_obj.JobTypeXDocumentJobType.forEach(element => {\r\n console.log (element)\r\n this.u_obj.docuJobTypeID.push(element.JobTypeID);\r\n });\r\n }\r\n }\r\n\r\n public setJobs(type: Number) {\r\n if (type == 1) {\r\n this.c_obj['ParamEvalByJob'] = [];\r\n this.jobs.forEach(job => {\r\n this.c_obj['ParamEvalByJob'].push(\r\n {\r\n JobTypeID: job\r\n }\r\n )\r\n });\r\n } else {\r\n this.u_obj['ParamEvalByJob'] = [];\r\n this.jobs.forEach(job => {\r\n this.u_obj['ParamEvalByJob'].push(\r\n {\r\n JobTypeID: job\r\n }\r\n )\r\n });\r\n }\r\n }\r\n public async getTrabajo() {\r\n await this.srv.getCall(API_CONSULTAJOBTYPE).toPromise().then(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n // console.log(x.val)\r\n this.listaTrabajos = x.val;\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\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
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'menu_title_man_docu' | translate}}\r\n \r\n {{'desc' | translate}}\r\n \r\n {{'type' | translate}}\r\n \r\n {{'day_for_alert' | translate}}\r\n \r\n {{'Obligatorio' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{i + 1}}{{row.DocumentName}}{{row.DocumentDescription | uppercase}}{{\"usert_modal\" | translate}}{{\"jobt_modal\" | translate}}{{row.DaysAlert}}
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n {{\"usert_modal\" | translate}}\r\n {{\"jobt_modal\" | translate}}\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{list['Name']}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{listp['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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{\"usert_modal\" | translate}}\r\n {{\"jobt_modal\" | translate}}\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{list['Name']}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{listp['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
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSUDOCUJOB = environment.Global.API_CONSUDOCUJOB;\r\nconst API_REGISTERDOCUJOB = environment.Global.API_REGISTERDOCUJOB;\r\nconst API_UPDATEDOCUJOB = environment.Global.API_UPDATEDOCUJOB;\r\nconst API_DELETEDOCUJOB = environment.Global.API_DELETEDOCUJOB;\r\nconst API_ACTIVEDOCUJOB = environment.Global.API_ACTIVEDOCUJOB;\r\nconst API_CONSULTAJOBTYPEACTIVE = environment.Global.API_CONSULTAJOBTYPEACTIVE;\r\n\r\n@Component({\r\n selector: 'app-paramdocujobtype',\r\n templateUrl: './paramdocujobtype.component.html',\r\n styleUrls: ['./paramdocujobtype.component.css']\r\n})\r\nexport class ParamdocujobtypeComponent extends BaseCrudComponent{\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n jobtypeID:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSUDOCUJOB;\r\n this.create_url = API_REGISTERDOCUJOB;\r\n this.update_url = API_UPDATEDOCUJOB;\r\n this.delete_url = API_DELETEDOCUJOB;\r\n this.active_url = API_ACTIVEDOCUJOB;\r\n this.urlJob = API_CONSULTAJOBTYPEACTIVE;\r\n\r\n this.search_fields = ['NameType', 'Description', 'NameTypeJob'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n this.getListJobType();\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n Swal.fire(\r\n {\r\n title: this.translations['loading'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n Swal.close()\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n}\r\n\r\npublic getListJobType(){\r\n\r\n var qst = this.urlJob;\r\n this.loadingList = true;\r\n\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n var rs = x.val;\r\n this.rowJob = rs;\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n}\r\n\r\npublic openCreateModal(modal) {\r\n this.c_obj = {};\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n}\r\n\r\n\r\npublic createItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n to = form;\r\n\r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations.msg_create, x.msg, 'success');\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n}\r\n\r\n\r\nvalidateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'NameType': new FormControl(fields.NameType, [Validators.required]),\r\n 'JobTypeID': new FormControl(fields.JobTypeID, []),\r\n 'Description': new FormControl(fields.Description, [])\r\n });\r\n\r\n return mygroup.valid;\r\n}\r\n\r\npublic filterAnalysisGroup(id:any){\r\n this.jobtypeID = id.split(':')[1].trim();\r\n\r\n}\r\n\r\npublic updateItem(content:any, form:any){\r\n var qst = this.update_url;\r\n this.isCreating = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.NameType == undefined) || (form.NameType == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n\r\n\r\n to = {};\r\n to.NameType = form.NameType;\r\n to.Description = form.Description;\r\n to.JobTypeID = this.jobtypeID;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n to.docuTypeID = form.docuTypeID;\r\n \r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update1');\r\n Swal.fire('¡Actualizado!', x.msg, 'success');\r\n this.getList();\r\n \r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n}\r\n\r\n \r\ntoggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n}\r\n}\r\n\r\nActivar(obj: any){\r\n var id:any;\r\n id = {};\r\n id.docuTypeID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.active_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\ndeleteItem(obj: any){\r\n\r\n var id:any;\r\n id = {};\r\n id.docuTypeID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n id.DeleteUser = this.userinfo['logon'];\r\n var qst = this.delete_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\n\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'nametype' | translate}}\r\n \r\n {{'desc' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.docuTypeID}}{{row.NameType}}{{row.NameTypeJob}}{{row.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

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-parameter',\r\n templateUrl: './parameter.component.html'\r\n})\r\nexport class ParameterComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n types = [\r\n {id:1, name:'par_type_manual'},\r\n {id:2, name:'par_type_fixed'},\r\n {id:3, name:'par_type_formula'},\r\n {id:4, name:'par_type_range'},\r\n {id:5, name:'par_type_richtext'}\r\n ];\r\n savevalue_url:string;\r\n\r\n operands = ['+', '-', '/', '*', '(', ')'];\r\n numbers = [0, 1, 2 ,3, 4, 5, 6, 7, 8, 9];\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) { super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = 'Parameter/GetListParameterByAnalysis/'+this.id;\r\n this.create_url = 'Parameter/Create';\r\n this.savevalue_url = 'Parameter/SaveValue';\r\n this.update_url = 'Parameter/Update';\r\n this.delete_url = 'Parameter/LogicalDelete';\r\n this.search_fields = ['parName', 'parCode'];\r\n\r\n //formula create init\r\n this.clearCreateObject();\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n }\r\n\r\n clearCreateObject(){\r\n this.c_obj = {};\r\n this.c_obj['form'] = [];\r\n this.c_obj['value_3'] = '';\r\n this.c_obj['parIsEditable'] = true;\r\n this.c_obj['parIsRequired'] = true;\r\n this.c_obj['parShowInReport'] = false;\r\n this.c_obj['parHidden'] = false;\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var types = [2, 3, 4];\r\n form['pvalueInfo'] = null;\r\n var next = true;\r\n\r\n types.forEach(t => {\r\n if( (form['type'] == t) && ((form['value_'+t] == undefined) || (form['value_'+t] == '')) ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n next = false;\r\n return;\r\n }\r\n\r\n if( form['type'] == t ){\r\n form['pvalueInfo'] = form['value_'+t];\r\n }\r\n });\r\n\r\n if( !next ){\r\n return;\r\n }\r\n\r\n if( form['type'] != 3 ){\r\n form['pvalueFactors'] = '';\r\n form['FormulaParameter'] = null;\r\n }\r\n\r\n var to:any;\r\n to = {};\r\n to['parSequence'] = form['parSequence'];\r\n to['parAnalysisId'] = this.id;\r\n to['parCode'] = form['parCode'];\r\n to['parName'] = form['parName'];\r\n to['parIsEditable'] = form['parIsEditable'];\r\n to['parIsRequired'] = form['parIsRequired'];\r\n to['parShowInReport'] = form['parShowInReport'];\r\n to['parShowInGraphic'] = form['parShowInGraphic'];\r\n to['parHidden'] = form['parHidden'];\r\n to['parIsManualType'] = (form['type'] == 1) ? true : false;\r\n to['parIsFixedType'] = (form['type'] == 2) ? true : false;\r\n to['parIsFormulaType'] = (form['type'] == 3) ? true : false;\r\n to['parIsRangeType'] = (form['type'] == 4) ? true : false;\r\n to['parIsRichTextType'] = (form['type'] == 5) ? true : false;\r\n to['parRangeMin'] = form['parRangeMin'];\r\n to['parRangeMax'] = form['parRangeMax'];\r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.isCreating = true;\r\n this.saveValue(x.val['parId'], form).subscribe(y => {\r\n this.isCreating = false;\r\n this.c_obj = {};\r\n\r\n if(!y.success){\r\n Swal.fire(y.msg, '', 'error');\r\n }\r\n \r\n this.getList();\r\n this.closeModal(content);\r\n });\r\n }//end success\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n //this.closeModal(content);\r\n }\r\n });\r\n }\r\n\r\n public saveValue(id:any, obj:any){\r\n var qst = this.savevalue_url;\r\n var to:any;\r\n to = {};\r\n to['pvalueParameterId'] = id;\r\n to['pvalueInfo'] = obj['pvalueInfo'];\r\n to['pvalueFactors'] = obj['pvalueFactors'];\r\n to['FormulaParameter'] = obj['FormulaParameter'];\r\n\r\n return this.srv.postCall(qst, to);\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var types = [2, 3, 4];\r\n form['pvalueInfo'] = null;\r\n var next = true;\r\n\r\n types.forEach(t => {\r\n if( (form['type'] == t) && ((form['value_'+t] == undefined) || (form['value_'+t] == '')) ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n next = false;\r\n return;\r\n }\r\n\r\n if( form['type'] == t ){\r\n form['pvalueInfo'] = form['value_'+t];\r\n }\r\n });\r\n\r\n if( !next ){\r\n return;\r\n }\r\n\r\n if( form['type'] != 3 ){\r\n form['pvalueFactors'] = '';\r\n form['FormulaParameter'] = null;\r\n }\r\n\r\n var to:any;\r\n to = {};\r\n to['parId'] = form['parId'];\r\n to['parSequence'] = form['parSequence'];\r\n to['parAnalysisId'] = this.id;\r\n to['parCode'] = form['parCode'];\r\n to['parName'] = form['parName'];\r\n to['parIsEditable'] = form['parIsEditable'];\r\n to['parIsRequired'] = form['parIsRequired'];\r\n to['parShowInReport'] = form['parShowInReport'];\r\n to['parShowInGraphic'] = form['parShowInGraphic'];\r\n to['parHidden'] = form['parHidden'];\r\n to['parIsManualType'] = (form['type'] == 1) ? true : false;\r\n to['parIsFixedType'] = (form['type'] == 2) ? true : false;\r\n to['parIsFormulaType'] = (form['type'] == 3) ? true : false;\r\n to['parIsRangeType'] = (form['type'] == 4) ? true : false;\r\n to['parIsRichTextType'] = (form['type'] == 5) ? true : false;\r\n to['parRangeMin'] = form['parRangeMin'];\r\n to['parRangeMax'] = form['parRangeMax'];\r\n\r\n var qst = this.update_url;\r\n this.isUpdating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if(x.success){\r\n this.isUpdating = true;\r\n this.saveValue(x.val['parId'], form).subscribe(y => {\r\n this.isUpdating = false;\r\n this.c_obj = {};\r\n\r\n if(!y.success){\r\n Swal.fire(y.msg, '', 'error');\r\n }\r\n \r\n this.getList();\r\n this.closeModal(content);\r\n });\r\n }//end success\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n //this.closeModal(content);\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'parCode': new FormControl(fields.parCode, [Validators.required]),\r\n 'parName': new FormControl(fields.parName, [Validators.required]),\r\n 'parSequence': new FormControl(fields.parSequence, [Validators.required]),\r\n 'type': new FormControl(fields.type, [Validators.required])\r\n });\r\n\r\n return mygroup.valid;\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n Swal.fire(\r\n {\r\n title: this.translations['loading'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n x.val.forEach(y => {\r\n let counter = 1;\r\n let temptypes = ['parIsManualType', 'parIsFixedType', 'parIsFormulaType', 'parIsRangeType', 'parIsRichTextType'];\r\n temptypes.forEach(t => {\r\n if( y[t] ){\r\n y['type'] = counter;\r\n y['type_obj'] = this.types.filter(s => {\r\n return s.id == counter;\r\n })[0];\r\n //set values saved in pvalueInfo\r\n y['value_'+counter] = y['Formula'];\r\n }\r\n counter++;\r\n });\r\n\r\n if( (y['pvalueFactors'] != null) && (y['pvalueFactors'] != '') ){\r\n //console.log(y['pvalueFactors']);\r\n y['form'] = JSON.parse(y['pvalueFactors']);\r\n }\r\n else{\r\n y['form'] = [];\r\n }\r\n });\r\n\r\n this.rawdata = x.val;\r\n this.rows = x.val;\r\n this.page = 1;\r\n\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n Swal.close()\r\n }\r\n });\r\n }\r\n\r\n public openUpdateModal(content: any, obj: any) {\r\n const copy = { ...obj };\r\n this.c_obj = copy;\r\n this.formulaToString(obj['form']);\r\n //console.log(obj);\r\n this.modalService.open(content, { centered: true });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.clearCreateObject();\r\n super.openCreateModal(content);\r\n }\r\n\r\n openFormulaEditor(content: any) {\r\n /*this.modalService.open(content, { centered: true });\r\n this.modalService.open(content, { size: 'lg'});*/\r\n this.modalService.open(content, { size: 'lg'});\r\n }\r\n\r\n addParamToFormula(obj:any){\r\n //this.c_obj['form'].push({val:obj.parCode, name:obj.parName, msg:obj.Formula, tooltip:true, param:true, number:false, sel:false});\r\n this.addItemToFormula({val:obj.parCode, name:obj.parName, msg:obj.Formula, tooltip:true, param:true, number:false, sel:false, id:obj.parId});\r\n }\r\n\r\n addValueToFormula(val){\r\n //this.c_obj['form'].push({val:val, name:'', msg:'', tooltip:false, param:false, number:true, sel:false});\r\n this.addItemToFormula({val:val, name:'', msg:'', tooltip:false, param:false, number:true, sel:false, id:null});\r\n }\r\n\r\n addOperandToFormula(val){\r\n //this.c_obj['form'].push({val:val, name:'', msg:'', tooltip:false, param:false, number:false, sel:false});\r\n this.addItemToFormula({val:val, name:'', msg:'', tooltip:false, param:false, number:false, sel:false, id:null});\r\n }\r\n\r\n addItemToFormula(obj:any){\r\n var counter = 0;\r\n var curr:any;\r\n curr = this.c_obj['form'].length;\r\n\r\n this.c_obj['form'].forEach(x => {\r\n if( x.sel ){\r\n curr = counter;\r\n }\r\n \r\n counter++;\r\n });\r\n\r\n this.c_obj['form'].splice(curr, 0, obj);\r\n this.formulaToString(this.c_obj['form']);\r\n }\r\n\r\n selItemFormula(i){\r\n var counter = 0;\r\n this.c_obj['form'].forEach(x => {\r\n if( counter == i ){\r\n x.sel = !x.sel;\r\n }\r\n else{\r\n x.sel = false;\r\n }\r\n counter++;\r\n });\r\n }\r\n\r\n resetFormula(){\r\n this.c_obj['form'] = [];\r\n this.c_obj['value_3'] = '';\r\n this.c_obj['pvalueFactors'] = '';\r\n this.c_obj['FormulaParameter'] = null;\r\n }\r\n\r\n deleteItemFormula(){\r\n var counter = 0;\r\n var selected:any;\r\n selected = null;\r\n\r\n this.c_obj['form'].forEach(x => {\r\n if( x.sel ){\r\n selected = counter;\r\n }\r\n \r\n counter++;\r\n });\r\n\r\n if( selected != null ){\r\n this.c_obj['form'].splice(selected, 1);\r\n }\r\n\r\n this.formulaToString(this.c_obj['form']);\r\n }\r\n\r\n formulaToString(obj:any){\r\n var str = '';\r\n var sentparams = [];\r\n\r\n obj.forEach(x => {\r\n if( x.param ){\r\n str += '<' + x.val + '>';\r\n sentparams.push({formpParamId: x.id});\r\n }\r\n else{\r\n str += x.val;\r\n }\r\n });\r\n\r\n this.c_obj['value_3'] = str;\r\n this.c_obj['pvalueFactors'] = JSON.stringify(obj);\r\n this.c_obj['FormulaParameter'] = sentparams;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'code' | translate}}\r\n \r\n {{'name' | translate}}\r\n {{'value' | translate}}{{'type' | translate}}{{'action' | translate}}
{{row.parCode}}{{row.parName}}{{row['Formula']}}{{((row['type_obj'] != undefined) ? row['type_obj']['name'] : '') | translate}}\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n

{{'create_item' | translate}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{c_obj['value_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
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n

{{'edit_item' | translate}}: {{c_obj['parName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{c_obj['value_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
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
Editor de fórmula
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Params

\r\n
\r\n
{{row.parCode}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Operators

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

Numbers

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

Result

\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{c_obj['value_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
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { saveAs as importedSaveAs } from \"file-saver\";\r\n\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSEVALUACION = environment.Global.API_CONSEVALUACION;\r\nconst API_REGEVALUACION = environment.Global.API_REGEVALUACION;\r\nconst API_UPDATEEVALUACION = environment.Global.API_UPDATEEVALUACION;\r\nconst API_DESACTEVALUACION = environment.Global.API_DESACTEVALUACION;\r\nconst API_ACTIVEEVALUACION = environment.Global.API_ACTIVEEVALUACION;\r\nconst API_CONSULTAJOBTYPE = environment.Global.API_CONSULTAJOBTYPE;\r\nconst API_GET_QUESTIONSBYGROUP = environment.Global.API_GET_QUESTIONSBYGROUP;\r\nconst API_UPLOAD_FILE = environment.Global.API_UPLOAD_FILE;\r\nconst API_CONSPREGUNTA = environment.Global.API_CONSPREGUNTA;\r\nconst API_GET_QUESTIONSBYEVAL = environment.Global.API_GET_QUESTIONSBYEVAL;\r\nconst API_ASSIGN_QUESTIONSBYEVAL = environment.Global.API_ASSIGN_QUESTIONSBYEVAL;\r\nconst API_GET_FILE_PARAM_EVAL = environment.Global.API_GET_FILE_PARAMEVAL;\r\n\r\n@Component({\r\n selector: 'app-paramevaluacion',\r\n templateUrl: './paramevaluacion.component.html',\r\n styleUrls: ['./paramevaluacion.component.css']\r\n})\r\nexport class ParamevaluacionComponent extends BaseCrudComponent {\r\n\r\n id: any;\r\n listParameter: any;\r\n curr_parameter: any = [];\r\n loadingRequired = false;\r\n listAgr: any;\r\n translations: any;\r\n userinfo: any;\r\n listQuestion: any;\r\n curr_question: any;\r\n lista = [];\r\n listaTrabajos = [];\r\n jobs: any = [];\r\n contadorgeneral = 0;\r\n archivos = [];\r\n namefile = '';\r\n tipoArchivo = [{ id: 1, name: 'Archivo' }, { id: 2, name: 'Video' }]\r\n viewFileInput = false;\r\n size_max = 8388608//3145728;//3mb\r\n questionList = [];\r\n page2 = 0;\r\n pageTotal2 = 0;\r\n questionsByEval = [];\r\n ParameEvaID: any;\r\n numberQuestions = 0;\r\n nameEvaluation = '';\r\n questionsInDB = [];\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n this.read_url = API_CONSEVALUACION;\r\n this.create_url = API_REGEVALUACION;\r\n this.update_url = API_UPDATEEVALUACION;\r\n this.delete_url = API_DESACTEVALUACION;\r\n this.active_url = API_ACTIVEEVALUACION;\r\n\r\n\r\n this.search_fields = ['ParameEvaID', 'Nombre', 'NombreVideo'];\r\n\r\n //this.c_obj['ParamEvaluacion'] = [];\r\n\r\n this.c_obj['ParameterEvaluation'] = [];\r\n this.curr_parameter = 0;\r\n\r\n this.reload.subscribe(val => {\r\n if (val) {\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n this.pageSize = 10;\r\n this.pageSize2 = 5;\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList() {\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if (x.success) {\r\n if (x.val != null) {\r\n // console.log(x.val);\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '', 'success');\r\n this.closeLoadingMessage();\r\n } else {\r\n // this.messageDialog(x.msg, '', 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n } else {\r\n this.messageDialog(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n async openCreateModal(content: any) {\r\n this.isCreating = false;\r\n this.c_obj = {};\r\n this.c_obj['ParamEvalByJob'] = [];\r\n this.c_obj['NumeroPregunta'] = 1;\r\n this.c_obj['durationtime'] = 15;\r\n this.c_obj['PorcentajeCalificacion'] = 10;\r\n this.c_obj['PorcentajeCalificacionMinima'] = 6;\r\n this.c_obj['ValidateTime'] = 60;\r\n this.c_obj['Obligatorio'] = false;\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg', centered: true });\r\n this.jobs = [];\r\n await this.getTrabajo();\r\n }\r\n\r\n public async createItem(content: any, form: any) {\r\n\r\n this.isCreating = true;\r\n var validated = true;\r\n if (form == undefined) {\r\n form = {};\r\n }\r\n validated = this.validateCreateInfo(form);\r\n if (!validated) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n if (this.c_obj['NumeroPregunta'] == 0) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['select_one_question'], '', 'error');\r\n return;\r\n }\r\n if (form.TipoArchivo == 1) {\r\n if (this.archivos.length == 0) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n this.archivos = [];\r\n return;\r\n } else {\r\n var size_document = this.archivos[0].size;\r\n if (size_document > this.size_max) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations.document, this.translations.pdi_img_toobig, 'error');\r\n this.archivos = [];\r\n return;\r\n }\r\n }\r\n form.UrlGeneral = \"\";\r\n } else if (form.TipoArchivo == 2) {\r\n if (form.UrlGeneral == null || form.UrlGeneral == undefined) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n }\r\n\r\n if (form['ParamEvalByJob'].length == 0) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to: any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.Status = \"A\";\r\n to = form;\r\n to.TipoArchivo = form['TipoArchivo'] == 1 ? 'Archivo' : 'Video';\r\n var qst = this.create_url;\r\n debugger\r\n await this.srv.postCall(qst, to).toPromise().then(async x => {\r\n if (x.success) {\r\n if (to['TipoArchivo'] == 'Archivo') {\r\n await this.uploadFile(x.val, content);\r\n } else {\r\n this.confirmDialogWithModal(x.msg, '', 'success', content);\r\n this.c_obj = {};\r\n this.c_obj['ParamEvalByJob'] = [];\r\n }\r\n }\r\n else {\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n public async uploadFile(obj, content) {\r\n let formData = new FormData();\r\n formData.append('FileUpload', this.archivos[0]);\r\n formData.append('ParamEvaID', obj.ParameEvaID);\r\n await this.srv.AddFiles(API_UPLOAD_FILE, formData).subscribe(result => {\r\n this.isCreating = false;\r\n if (result.STATUS) {\r\n this.c_obj = {};\r\n this.c_obj['ParamEvalByJob'] = [];\r\n this.confirmDialogWithModal(result.MENSAJE, '', 'success', content);\r\n }\r\n else {\r\n this.c_obj = {};\r\n this.c_obj['ParamEvalByJob'] = [];\r\n this.confirmDialog(result.MENSAJE, '', 'error');\r\n this.archivos = [];\r\n }\r\n });\r\n }\r\n\r\n\r\n validateCreateInfo(fields: any) {\r\n let mygroup: any = {};\r\n mygroup = new FormGroup({\r\n 'Nombre': new FormControl(fields.Nombre, [Validators.required]),\r\n 'TipoArchivo': new FormControl(fields.TipoArchivo, []),\r\n 'UrlGeneral': new FormControl(fields.UrlGeneral, []),\r\n 'NumeroPregunta': new FormControl(fields.NumeroPregunta, []),\r\n 'RepeticionMaxima': new FormControl(fields.RepeticionMaxima, []),\r\n 'PorcentajeCalificacion': new FormControl(fields.PorcentajeCalificacion, []),\r\n 'PorcentajeCalificacionMinima': new FormControl(fields.PorcentajeCalificacionMinima, []),\r\n 'durationtime': new FormControl(fields.durationtime, []),\r\n 'ValidateTime': new FormControl(fields.ValidateTime, [])\r\n });\r\n\r\n return mygroup.valid;\r\n }\r\n\r\n async openUpdateModal(content: any, obj: any) {\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n this.isUpdating = false;\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg', centered: true });\r\n if (obj.TipoArchivo == \"Archivo\") {\r\n this.u_obj['TipoArchivo'] = 1;\r\n this.viewFileInput = true;\r\n } else {\r\n this.u_obj['TipoArchivo'] = 2;\r\n this.viewFileInput = false;\r\n }\r\n await this.getTrabajo();\r\n this.jobs = [];\r\n this.listaTrabajos.forEach(trabajo => {\r\n this.u_obj['ParamEvalByJob'].forEach(job => {\r\n if (job.JobTypeID == trabajo.JobTypeID) {\r\n this.jobs.push(job.JobTypeID)\r\n }\r\n });\r\n })\r\n }\r\n\r\n public async updateItem(content: any, form: any) {\r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n var validated = true;\r\n if (form == undefined) {\r\n form = {};\r\n }\r\n validated = this.validateCreateInfo(form);\r\n if (!validated) {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n if (form.TipoArchivo == 2) {\r\n if (form.UrlGeneral == null || form.UrlGeneral == undefined) {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n }\r\n if (this.u_obj['NumeroPregunta'] == 0) {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['select_one_question'], '', 'error');\r\n return;\r\n }\r\n if (this.archivos.length > 0) {\r\n var size_document = this.archivos[0].size;\r\n if (size_document > this.size_max) {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations.document, this.translations.pdi_img_toobig, 'error');\r\n this.archivos = [];\r\n return;\r\n }\r\n }\r\n if (form['ParamEvalByJob'].length == 0) {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n let to = {};\r\n form.LastModifierUserID = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n to = form;\r\n to['TipoArchivo'] = form.TipoArchivo == 1 ? \"Archivo\" : \"Video\";\r\n await this.srv.postCall(qst, to).toPromise().then(async x => {\r\n if (x.success) {\r\n if (to['TipoArchivo'] == 'Archivo' && this.archivos.length > 0) {\r\n this.messageDialog(x.msg, '', 'success');\r\n let formData = new FormData();\r\n formData.append('FileUpload', this.archivos[0]);\r\n formData.append('ParamEvaID', to['ParameEvaID']);\r\n await this.srv.AddFiles(API_UPLOAD_FILE, formData).toPromise().then(result => {\r\n this.isUpdating = false;\r\n Swal.close();\r\n if (result.STATUS) {\r\n this.confirmDialogWithModal(result.MENSAJE, '', 'success', content);\r\n }\r\n }, err => {\r\n this.isUpdating = false;\r\n this.messageDialog(x.msg, '', 'error');\r\n });\r\n } else {\r\n this.confirmDialogWithModal(x.msg, '', 'success', content);\r\n }\r\n this.closeModal(content)\r\n } else {\r\n this.isUpdating = false;\r\n this.messageDialog(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n this.isUpdating = false;\r\n this.messageDialog(err, '', 'error');\r\n });\r\n }\r\n\r\n\r\n deleteItem(obj: any) {\r\n var id: any;\r\n id = {};\r\n id.ParameEvaID = obj;\r\n id.Status = 2;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.delete_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n if (x.success) {\r\n this.confirmDialog(x.msg, '', 'success');\r\n }\r\n else {\r\n this.confirmDialog(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n this.confirmDialog(err, '', 'error');\r\n });\r\n }\r\n\r\n\r\n Activar(obj: any) {\r\n var id: any;\r\n id = {};\r\n id.ParameEvaID = obj;\r\n id.Status = 1;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n if (x.success) {\r\n this.confirmDialog(x.msg, '', 'success');\r\n }\r\n else {\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n this.confirmDialog(err, '', 'error');\r\n });\r\n }\r\n\r\n toggleEditable(event, id) {\r\n if (event.target.checked) {\r\n this.Activar(id);\r\n } else {\r\n this.deleteItem(id);\r\n\r\n }\r\n }\r\n\r\n DeletedItem(obj: any) {\r\n var id: any;\r\n id = {};\r\n id.ParameEvaID = obj;\r\n id.Status = 3;\r\n id.LastModifierUser = this.userinfo['userId'];\r\n var qst = \"Evaluation/UpdateStatus\";\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n if (x.success) {\r\n this.confirmDialog(x.msg, '', 'success');\r\n }\r\n else {\r\n this.confirmDialog(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n this.confirmDialog(err, '', 'success');\r\n });\r\n }\r\n\r\n\r\n\r\n public async getTrabajo() {\r\n await this.srv.getCall(API_CONSULTAJOBTYPE).toPromise().then(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n // console.log(x.val)\r\n this.listaTrabajos = x.val;\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public setJobs(type: Number) {\r\n if (type == 1) {\r\n this.c_obj['ParamEvalByJob'] = [];\r\n this.jobs.forEach(job => {\r\n this.c_obj['ParamEvalByJob'].push(\r\n {\r\n JobTypeID: job\r\n }\r\n )\r\n });\r\n } else {\r\n this.u_obj['ParamEvalByJob'] = [];\r\n this.jobs.forEach(job => {\r\n this.u_obj['ParamEvalByJob'].push(\r\n {\r\n JobTypeID: job\r\n }\r\n )\r\n });\r\n }\r\n }\r\n\r\n\r\n public async verifyQuestions() {\r\n let preguntas = [];\r\n let to = {\r\n groups: this.curr_parameter\r\n }\r\n let url = API_GET_QUESTIONSBYGROUP;\r\n await this.srv.postCall(url, to).toPromise().then(x => {\r\n if (x.success) {\r\n if (x.val.length > 0) {\r\n preguntas = x.val;\r\n }\r\n }\r\n });\r\n this.contadorgeneral = 0;\r\n if (preguntas.length > 0) {\r\n preguntas.forEach(pregunta => {\r\n this.contadorgeneral = this.contadorgeneral + pregunta.cantidad;\r\n })\r\n }\r\n }\r\n\r\n onlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n public handleInputChange(e) {\r\n this.archivos = [];\r\n var file = e.dataTransfer ? e.dataTransfer.files[0] : e.target.files[0];\r\n const archivocapture = e.target.files[0];\r\n this.archivos.push(archivocapture);\r\n this.namefile = file.name;\r\n }\r\n\r\n public selectFile(type) {\r\n if (type == 1) {\r\n if (this.c_obj['TipoArchivo'] == 2) {\r\n this.viewFileInput = false;\r\n } else if (this.c_obj['TipoArchivo'] == 1) {\r\n this.viewFileInput = true;\r\n }\r\n } else {\r\n if (this.u_obj['TipoArchivo'] == 2) {\r\n this.viewFileInput = false;\r\n } else if (this.u_obj['TipoArchivo'] == 1) {\r\n this.viewFileInput = true;\r\n }\r\n }\r\n }\r\n\r\n public async assignQuestions(content, { ParameEvaID, NumeroPregunta, Nombre }) {\r\n this.ParameEvaID = ParameEvaID;\r\n this.numberQuestions = NumeroPregunta;\r\n this.nameEvaluation = Nombre;\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg', centered: true });\r\n await this.getQuestionsByEval(ParameEvaID);\r\n await this.getQuestions();\r\n if (this.questionsInDB.length > 0) { // se deben asignar las preguntas ya almacenadas\r\n this.questionsInDB.forEach(element => {\r\n this.questionsByEval.push(\r\n {\r\n ParameEvaID: this.ParameEvaID,\r\n PreguntaID: element.PreguntaID\r\n }\r\n )\r\n })\r\n }\r\n }\r\n\r\n public async getQuestions() {\r\n let url = API_CONSPREGUNTA;\r\n let id: any;\r\n id = {};\r\n id.TipoPreguntaID = this.id;\r\n await this.srv.postCall(url, id).toPromise().then(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.page2 = 1;\r\n this.questionList = x.val;\r\n if (Array.isArray(this.questionList)) {\r\n this.pageTotal2 = this.questionList.length;\r\n }\r\n }\r\n }\r\n })\r\n }\r\n\r\n public isChecked(event, PreguntaID) {\r\n let obj = {\r\n ParameEvaID: this.ParameEvaID,\r\n PreguntaID: PreguntaID\r\n }\r\n if (event.target.checked) {\r\n let exist = this.questionsByEval.indexOf(evaluation => {\r\n return evaluation['PreguntaID'] == obj.PreguntaID;\r\n })\r\n if (exist == -1) {\r\n this.questionsByEval.push(obj);\r\n }\r\n } else {\r\n this.questionsByEval = this.questionsByEval.filter(evaluation => {\r\n return evaluation['PreguntaID'] != obj.PreguntaID;\r\n })\r\n }\r\n }\r\n\r\n public isSelected(preguntaID) {\r\n if (this.questionsByEval.length > 0) {\r\n let flag = 0;\r\n this.questionsByEval.forEach(element => {\r\n if (element.PreguntaID == preguntaID) {\r\n flag = -1;\r\n }\r\n });\r\n if (flag == -1) {\r\n return 'checked';\r\n }\r\n }\r\n }\r\n\r\n public UpdateQuestions(content) {\r\n this.isUpdating = true;\r\n if (this.questionsByEval.length == 0) {\r\n Swal.fire(this.translations.select_any_questions, '', 'error');\r\n this.isUpdating = false;\r\n return;\r\n }\r\n if (this.numberQuestions > this.questionsByEval.length) {\r\n Swal.fire(this.translations.description_minusquestions, this.translations.minimun_questions + \" \" + this.numberQuestions, 'error');\r\n this.isUpdating = false;\r\n return;\r\n }\r\n let obj = {\r\n ParameEvaID: this.ParameEvaID,\r\n ParamEvaluationQuestion: this.questionsByEval\r\n }\r\n this.srv.postCall(API_ASSIGN_QUESTIONSBYEVAL, obj).subscribe(x => {\r\n this.isUpdating = false;\r\n if (x.success) {\r\n this.confirmDialogWithModal(x.msg, '', 'success', content);\r\n } else {\r\n this.confirmDialogWithModal(x.msg, '', 'error', content);\r\n }\r\n }, err => {\r\n this.isUpdating = false;\r\n this.confirmDialogWithModal(err, '', 'error', content);\r\n })\r\n }\r\n\r\n public async getQuestionsByEval(ParameEvaID) {\r\n this.questionsByEval = [];\r\n await this.srv.getCall(API_GET_QUESTIONSBYEVAL + ParameEvaID).toPromise().then(x => {\r\n if (x.success && x.val != null) {\r\n this.questionsInDB = x.val;\r\n } else {\r\n this.questionsInDB = [];\r\n }\r\n })\r\n }\r\n downloadDocFile(data) {\r\n const name = data.Nombre;\r\n this.srv.downloadFileGeneral(API_GET_FILE_PARAM_EVAL + data.ParameEvaID).subscribe((data) => {\r\n importedSaveAs(data, 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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'nameevaluacion' | translate}}\r\n {{'numeropregunta' | translate}}{{'preguntasassi' | translate}}\r\n {{'file_type' | translate}}\r\n \r\n {{'calificacion' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.ParameEvaID}}{{row.Nombre}}{{row.NumeroPregunta}}{{row.Questions}}{{row.TipoArchivo}}{{row.PorcentajeCalificacion}}
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{archivo['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 {{ \"comp_max_doc_size\" | translate }}\r\n {{ \"max_doc_size2\" | translate }} MB\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \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['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
  • {{'num_question_min' | translate}} : 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

{{'edit_item' | translate}}: {{u_obj.Nombre}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{archivo['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 {{ \"comp_max_doc_size\" | translate }}\r\n {{ \"max_doc_size2\" | translate }} MB\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \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['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
  • {{'num_question_min' | translate}} : 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

{{'assign_questions' | translate}} - {{'nameevaluacion' | translate}}: {{nameEvaluation}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ID{{'pregunta' | translate}}{{'group' | translate}}{{'assign' | translate}}
{{i + 1}}\r\n
\r\n {{question.Pregunta}}\r\n
\r\n
{{question.TypeParameterName}}\r\n
\r\n \r\n
\r\n
\r\n \r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\n\r\nconst API_CONSULTAFALTADETAIL = environment.Global.API_CONSULTAFALTADETAIL;\r\nconst API_REGISTERFOUL = environment.Global.API_REGISTERFOUL;\r\nconst API_UPDATEFOUL = environment.Global.API_UPDATEFOUL;\r\nconst API_DESACTIVEFOUL = environment.Global.API_DESACTIVEFOUL;\r\nconst API_ACTIVEFOUL = environment.Global.API_ACTIVEFOUL;\r\n\r\n\r\n@Component({\r\n selector: 'app-paramfouls',\r\n templateUrl: './paramfouls.component.html',\r\n styleUrls: ['./paramfouls.component.css']\r\n})\r\nexport class ParamfoulsComponent extends BaseCrudComponent {\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n jobtypeID:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSULTAFALTADETAIL;\r\n this.create_url = API_REGISTERFOUL;\r\n this.update_url = API_UPDATEFOUL;\r\n this.delete_url = API_DESACTIVEFOUL;\r\n this.active_url = API_ACTIVEFOUL;\r\n\r\n this.search_fields = ['Name', 'Descripcion'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n // gger;\r\n \r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n\r\n \r\n var id:any;\r\n id = {};\r\n id.FoulTypeID = this.id;\r\n this.messageShowLoading();\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.loadingList = false;\r\n // debugger;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n }else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n //debugger;\r\n var validated = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n \r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n form.FoulTypeID = this.id;\r\n to = form;\r\n \r\n \r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations.msg_create, x.msg, 'success');\r\n this.c_obj= {};\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'Name': new FormControl(fields.Name, [Validators.required]),\r\n 'Descripcion': new FormControl(fields.Descripcion, []),\r\n });\r\n \r\n return mygroup.valid;\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n\r\n var qst = this.update_url;\r\n this.isCreating = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n var to:any;\r\n \r\n if( (form.Name == undefined) || (form.Name == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n \r\n \r\n to = {};\r\n to.Name = form.Name;\r\n to.Descripcion = form.Descripcion;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n to.ParaDetaFoulID = form.ParaDetaFoulID;\r\n \r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update2');\r\n Swal.fire(this.translations.msg_update, x.msg, 'success');\r\n this.getList();\r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n \r\n }\r\n toggleEditable(event, id) {\r\n //debugger;\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n \r\n }\r\n }\r\n \r\n Activar(obj: any){\r\n \r\n \r\n var id:any;\r\n id = {};\r\n id.ParaDetaFoulID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.active_url;\r\n \r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n \r\n deleteItem(obj: any){\r\n \r\n var id:any;\r\n id = {};\r\n id.ParaDetaFoulID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n id.DeleteUser = this.userinfo['logon'];\r\n var qst = this.delete_url;\r\n \r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'desc' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.ParaDetaFoulID}}{{row.Name}}{{row.Descripcion}}
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_DELETEPARAMGENERICDETAIL = environment.Global.API_DELETEPARAMGENERICDETAIL;\r\n\r\n\r\nconst API_PARAM_GENERAL_BY_TYPE = environment.Global.API_PARAM_GENERAL_BY_TYPE;\r\nconst API_PARAM_GENERAL_CREATE = environment.Global.API_PARAM_GENERAL_CREATE;\r\nconst API_PARAM_GENERAL_UPDATE = environment.Global.API_PARAM_GENERAL_UPDATE;\r\nconst API_PARAM_GENERAL_UPDATE_STATUS = environment.Global.API_PARAM_GENERAL_UPDATE_STATUS;\r\n\r\n@Component({\r\n selector: 'app-paramgenedetail',\r\n templateUrl: './paramgenedetail.component.html',\r\n styleUrls: ['./paramgenedetail.component.css']\r\n})\r\nexport class ParamgenedetailComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n ParIdtemp:any;\r\n flag = true;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) { \r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n // console.log( route.snapshot.params)\r\n\r\n this.read_url = API_PARAM_GENERAL_BY_TYPE;\r\n this.create_url = API_PARAM_GENERAL_CREATE;\r\n this.update_url = API_PARAM_GENERAL_UPDATE;\r\n this.delete_url = API_DELETEPARAMGENERICDETAIL;\r\n this.active_url = API_PARAM_GENERAL_UPDATE_STATUS;\r\n\r\n this.search_fields = ['DetailName', 'Description', 'Namegeneric'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n this.c_obj['field'] = this.id;\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n\r\n \r\n public getList(){\r\n //debugger;\r\n \r\n var qst = this.read_url + this.id;\r\n this.loadingList = true;\r\n\r\n \r\n // var id:any;\r\n // id = {};\r\n // id.ParId = this.id;\r\n // this.ParIdtemp = this.id;\r\n if (this.flag) {\r\n this.messageShowLoading();\r\n }\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n //debugger;\r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n }else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n // debugger;\r\n var validated = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n \r\n var to:any;\r\n form.field_txt =this.id;\r\n to = form;\r\n \r\n \r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire('¡Creado!', x.msg, 'success');\r\n this.c_obj['value'] = null;\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'field': new FormControl(fields.field, [Validators.required]),\r\n // 'UserType': new FormControl(fields.UserType, []),\r\n 'value': new FormControl(fields.value, [Validators.required])\r\n });\r\n \r\n return mygroup.valid;\r\n }\r\n\r\n public openUpdate(content: any, obj: any, size?:any) {\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n console.log(this.u_obj)\r\n if( size == undefined ){\r\n this.modalService.open(content, { centered: true });\r\n }\r\n else{\r\n this.modalService.open(content, { centered: true, size: size });\r\n }\r\n \r\n }\r\n \r\npublic updateItem(content:any, form:any){\r\n \r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.field == undefined) || (form.field == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n\r\n to = {};\r\n to.field = form.field;\r\n to.value = form.value;\r\n to.ID = this.u_obj['ID'];\r\n \r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal(content);\r\n Swal.fire('¡Actualizado!', x.msg, 'success');\r\n this.flag = false\r\n this.getList();\r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n}\r\n\r\n\r\ntoggleEditable(event, id) {\r\n // debugger;\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n}\r\n}\r\n\r\nActivar(obj: any){\r\n\r\n var qst = this.active_url;\r\n this.isCreating = true;\r\n console.log(obj)\r\n var id:any;\r\n id = {};\r\n id.ID = obj;\r\n id.Status = 1;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.flag = false\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\ndeleteItem(obj: any){\r\n console.log(obj)\r\n var qst = this.active_url;\r\n this.loadingList = true;\r\n\r\n var id:any;\r\n id = {};\r\n id.ID = obj;\r\n id.Status = 2;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.flag = false\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'parameter' | translate}}\r\n \r\n {{'desc' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.ID}}{{row.field}}{{row.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

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_DELETEPARAMGENERIC = environment.Global.API_DELETEPARAMGENERIC;\r\nconst API_PARAM_GENERAL_ALL = environment.Global.API_PARAM_GENERAL_ALL;\r\nconst API_PARAM_GENERAL_CREATE = environment.Global.API_PARAM_GENERAL_CREATE;\r\nconst API_PARAM_GENERAL_UPDATE_STATUS = environment.Global.API_PARAM_GENERAL_UPDATE_STATUS;\r\nconst API_PARAM_GENERAL_UPDATE_GENERAL = environment.Global.API_PARAM_GENERAL_UPDATE_GENERAL;\r\n\r\n@Component({\r\n selector: 'app-paramgenerales',\r\n templateUrl: './paramgenerales.component.html',\r\n styleUrls: ['./paramgenerales.component.css']\r\n})\r\nexport class ParamgeneralesComponent extends BaseCrudComponent {\r\n\r\n \r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n this.read_url = API_PARAM_GENERAL_ALL;\r\n this.create_url = API_PARAM_GENERAL_CREATE;\r\n this.update_url = API_PARAM_GENERAL_UPDATE_GENERAL;\r\n this.delete_url = API_DELETEPARAMGENERIC;\r\n this.active_url = API_PARAM_GENERAL_UPDATE_STATUS;\r\n this.pageSize = 10;\r\n this.search_fields = ['field_txt'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n \r\n public getList(){\r\n //debugger;\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n //debugger;\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n if(x.val != null){\r\n console.log(x.val);\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n }else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n}\r\n\r\npublic createItem(content:any, form:any){\r\n // debugger;\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to:any;\r\n // form.CreatorUser = this.userinfo['logon'];\r\n // form.LastModifierUser = this.userinfo['logon'];\r\n to = form;\r\n\r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire('¡Creado!', x.msg, 'success');\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n}\r\n\r\nvalidateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'field_txt': new FormControl(fields.field_txt, [Validators.required]),\r\n // 'Descripction': new FormControl(fields.Descripction, [])\r\n });\r\n\r\n return mygroup.valid;\r\n}\r\n\r\npublic openUpdate(content: any, obj: any, size?:any) {\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n // console.log(this.u_obj)\r\n if( size == undefined ){\r\n this.modalService.open(content, { centered: true });\r\n }\r\n else{\r\n this.modalService.open(content, { centered: true, size: size });\r\n }\r\n\r\n this.u_obj['nombreViejo'] = obj['field_txt'];\r\n\r\n \r\n}\r\n\r\n \r\npublic updateItem(content:any, form:any){\r\n \r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n var to:any;\r\n \r\n if( (form.nombreNuevo == undefined) || (form.nombreNuevo == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n \r\n to = {};\r\n to.field_txt = form.nombreNuevo;\r\n to.field = this.u_obj['nombreViejo'];\r\n\r\n // console.log(to)\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update1');\r\n Swal.fire('¡Actualizado!', x.msg, 'success');\r\n this.getList();\r\n \r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n \r\n }\r\n\r\n toggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n \r\n }\r\n }\r\n\r\n Activar(obj: any){\r\n var qst = this.active_url;\r\n this.isCreating = true;\r\n\r\n var id:any;\r\n id = {};\r\n id.ParId = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n deleteItem(obj: any){\r\n var qst = this.delete_url;\r\n this.loadingList = true;\r\n\r\n var id:any;\r\n id = {};\r\n id.ParId = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n id.DeleteUser = this.userinfo['logon'];\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n {{'action' | translate}}
{{i + 1}}{{row.field_txt}}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSULTAJOBTYPE = environment.Global.API_CONSULTAJOBTYPE;\r\nconst API_REGISTROJOBTYPE = environment.Global.API_REGISTROJOBTYPE;\r\nconst API_UPDATEJOBTYPE = environment.Global.API_UPDATEJOBTYPE;\r\nconst API_DELETEJOBTYPE = environment.Global.API_DELETEJOBTYPE;\r\nconst API_ACTIVARJOBTYPE = environment.Global.API_ACTIVARJOBTYPE;\r\nconst API_DROPJOBTYPE = environment.Global.API_DROPJOBTYPE;\r\n\r\n@Component({\r\n selector: 'app-paramjobtype',\r\n templateUrl: './paramjobtype.component.html',\r\n styleUrls: ['./paramjobtype.component.css']\r\n})\r\nexport class ParamjobtypeComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n documentJobTypes = [\r\n // { id: 1, name: 'Tipo 1' },\r\n // { id: 2, name: 'Tipo 2' },\r\n // más tipos...\r\n ];\r\n selectedDocumentJobTypes = [];\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSULTAJOBTYPE;\r\n this.create_url = API_REGISTROJOBTYPE;\r\n this.update_url = API_UPDATEJOBTYPE;\r\n this.delete_url = API_DELETEJOBTYPE;\r\n this.active_url = API_ACTIVARJOBTYPE;\r\n this.search_fields = ['NameJob', 'Description'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n //debugger;\r\n this.loadingList = false;\r\n\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n }else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public openCreateModal(modal) {\r\n this.c_obj = {};\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n to = form;\r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations.msg_create, x.msg, 'success');\r\n }//end success\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'NameJob': new FormControl(fields.NameJob, [Validators.required]),\r\n 'Description': new FormControl(fields.Description, [])\r\n });\r\n\r\n return mygroup.valid;\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n\r\n this.isCreating = true;\r\n var qst = this.update_url;\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.Name == undefined) || (form.Name == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n\r\n to = {};\r\n to.NameJob = form.Name;\r\n to.Description = form.Description;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n to.JobTypeID = form.JobTypeID;\r\n to.DocumentJobType = this.selectedDocumentJobTypes;debugger;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update1');\r\n Swal.fire('¡Actualizado!', x.msg, 'success');\r\n this.getList();\r\n\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n }\r\n\r\n toggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n }\r\n }\r\n\r\n deleteItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.JobTypeID = obj;\r\n var qst = this.delete_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n Activar(obj: any){\r\n var id:any;\r\n id = {};\r\n id.JobTypeID = obj;\r\n var qst = this.active_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n public DropItem(id:any){\r\n var id:any;\r\n id = {};\r\n id.JobTypeID = id;\r\n var qst = API_DROPJOBTYPE;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n }\r\n public openUpdateModal(content: any, obj: any, size?:any) {\r\n let newobj = JSON.parse(JSON.stringify(obj));\r\n this.u_obj = newobj;\r\n this.documentJobTypes = newobj.DocumentJobTypes;\r\n this.selectedDocumentJobTypes = newobj.DocumentJobTypes.filter(d => d.IsSelected).map(d => d.docuTypeID);\r\n if( size == undefined ){\r\n this.modalService.open(content, { centered: true });\r\n }\r\n else{\r\n this.modalService.open(content, { centered: true, size: size });\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'desc' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.JobTypeID}}{{row.Name}}{{row.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

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSULTAPLANTA = environment.Global.API_CONSULTAPLANTA;\r\nconst API_REGISTROPLANTA = environment.Global.API_REGISTROPLANTA;\r\nconst API_UPDATEPLANTA = environment.Global.API_UPDATEPLANTA;\r\nconst API_DELETEPLANTA = environment.Global.API_DELETEPLANTA;\r\nconst API_ACTIVARPLANTA = environment.Global.API_ACTIVARPLANTA;\r\n\r\n\r\n@Component({\r\n selector: 'app-paramplanta',\r\n templateUrl: './paramplanta.component.html',\r\n styleUrls: ['./paramplanta.component.css']\r\n})\r\nexport class ParamplantaComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n documentJobTypes = [];\r\n selectedDocumentJobTypes = [];\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSULTAPLANTA;\r\n this.create_url = API_REGISTROPLANTA;\r\n this.update_url = API_UPDATEPLANTA;\r\n this.delete_url = API_DELETEPLANTA;\r\n this.active_url = API_ACTIVARPLANTA;\r\n\r\n this.search_fields = ['Name', 'Direction', 'Description'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n //debugger;\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n //debugger;\r\n this.loadingList = false;\r\n\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n }else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n}\r\n\r\n\r\npublic createItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n to = form;\r\n\r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire('¡Creado!', x.msg, 'success');\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n}\r\n\r\nvalidateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'Name': new FormControl(fields.Name, [Validators.required]),\r\n 'Direction': new FormControl(fields.Direction, []),\r\n 'Description': new FormControl(fields.Description, [])\r\n });\r\n\r\n return mygroup.valid;\r\n}\r\n\r\npublic updateItem(content:any, form:any){\r\n this.isCreating = true;\r\n var qst = this.update_url;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.Name == undefined) || (form.Name == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n\r\n to = {};\r\n to.Name = form.Name;\r\n to.Direction = form.Direction;\r\n to.Description = form.Description;\r\n to.CreatorUserId = form.CreatorUserId;\r\n to.LastModifierUserID = this.userinfo['userId'];\r\n to.PlantaID = form.PlantaID;\r\n to.UserApprover = this.selectedDocumentJobTypes;debugger;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update1');\r\n Swal.fire('¡Actualizado!', x.msg, 'success');\r\n this.getList();\r\n\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n}\r\n\r\n\r\ndeleteItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.PlantaID = obj;\r\n var qst = this.delete_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\n\r\nActivar(obj: any){\r\n var id:any;\r\n id = {};\r\n id.PlantaID = obj;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\ntoggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n}\r\n}\r\n public openUpdateModal(content: any, obj: any, size?:any) {\r\n let newobj = JSON.parse(JSON.stringify(obj)); debugger;\r\n this.u_obj = newobj;\r\n this.documentJobTypes = newobj.UserApprovers;\r\n this.selectedDocumentJobTypes = newobj.UserApprovers.filter(d => d.IsSelected).map(d => d.docuTypeID);\r\n if( size == undefined ){\r\n this.modalService.open(content, { centered: true });\r\n }\r\n else{\r\n this.modalService.open(content, { centered: true, size: size });\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'direccion' | translate}}\r\n \r\n {{'desc' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.PlantaID}}{{row.Name}}{{row.Direction}}{{row.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

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSPREGUNTA = Global.API_CONSPREGUNTA;\r\nconst API_REGPREGUNTA = Global.API_REGPREGUNTA;\r\nconst API_UPDATEPREGUNTAS = Global.API_UPDATEPREGUNTAS;\r\nconst API_UPDATESTATUS = Global.API_UPDATESTATUS;\r\nconst API_CONSPREGUNTAESPECIFICA = Global.API_CONSPREGUNTAESPECIFICA;\r\n\r\n@Component({\r\n selector: 'app-parampregunta',\r\n templateUrl: './parampregunta.component.html',\r\n styleUrls: ['./parampregunta.component.css']\r\n})\r\nexport class ParampreguntaComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSPREGUNTA;\r\n this.create_url = API_REGPREGUNTA;\r\n this.update_url = API_UPDATEPREGUNTAS;\r\n this.delete_url = API_UPDATESTATUS;\r\n // this.active_url = API_ACTIVEPREGUNTAS;\r\n\r\n this.search_fields = ['NameType', 'Description'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n var id:any;\r\n id = {};\r\n id.TipoPreguntaID = this.id;\r\n this.messageShowLoading();\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success')\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success')\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg,'','error')\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n var validated = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n \r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n form.TipoPreguntaID = this.id;\r\n to = form;\r\n \r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n this.c_obj();\r\n Swal.fire('', x.msg, 'success');\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'Pregunta': new FormControl(fields.Pregunta, [Validators.required]),\r\n });\r\n \r\n return mygroup.valid;\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n this.isCreating = true;\r\n var qst = this.update_url;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n var to:any;\r\n \r\n if( (form.Pregunta == undefined) || (form.Pregunta == '') ){\r\n Swal.fire(this.translations.msg_all_required, '', 'warning');\r\n return;\r\n }\r\n \r\n to = {};\r\n to.Pregunta = form.Pregunta;\r\n to.TipoPreguntaID = this.id;\r\n to.LastModifierUserID = this.userinfo['userId'];\r\n to.PreguntaID = form.PreguntaID;\r\n \r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update1');\r\n Swal.fire('', x.msg, 'success');\r\n this.getList();\r\n this.u_obj();\r\n \r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n \r\n }\r\n\r\n toggleEditable(event, id) {\r\n \r\n if ( event.target.checked ) {\r\n this.ActivarItem(id);\r\n }else {\r\n this.deleteItem(id);\r\n \r\n }\r\n }\r\n \r\n deleteItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.PreguntaID = obj;\r\n id.DeleteUser = this.userinfo['logon'];\r\n var qst = this.delete_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n \r\n ActivarItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.PreguntaID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n \r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'pregunta' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.PreguntaID}}{{row.Pregunta}}
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSPREGUNTADETALLE = environment.Global.API_CONSPREGUNTADETALLE;\r\nconst API_REGIPREGUNTADETALLE = environment.Global.API_REGIPREGUNTADETALLE;\r\nconst API_UPDATEPREGUNTADETALLE = environment.Global.API_UPDATEPREGUNTADETALLE;\r\nconst API_DESACTIVEPREGUNTADETALLE = environment.Global.API_DESACTIVEPREGUNTADETALLE;\r\nconst API_ACTIVEPREGUNTADETALLE = environment.Global.API_ACTIVEPREGUNTADETALLE;\r\n\r\n@Component({\r\n selector: 'app-parampreguntadetalle',\r\n templateUrl: './parampreguntadetalle.component.html',\r\n styleUrls: ['./parampreguntadetalle.component.css']\r\n})\r\nexport class ParampreguntadetalleComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n Opciontemp = false;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSPREGUNTADETALLE;\r\n this.create_url = API_REGIPREGUNTADETALLE;\r\n this.update_url = API_UPDATEPREGUNTADETALLE;\r\n this.delete_url = API_DESACTIVEPREGUNTADETALLE;\r\n this.active_url = API_ACTIVEPREGUNTADETALLE;\r\n\r\n this.search_fields = ['Respuestas'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n \r\n var id:any;\r\n id = {};\r\n id.PreguntaID = this.id;\r\n this.messageShowLoading();\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.closeLoadingMessage();\r\n }else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n var validated = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n \r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n form.PreguntaID = this.id;\r\n form.Opcion = this.Opciontemp;\r\n to = form;\r\n \r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire('¡Creado!', x.msg, 'success');\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'Respuestas': new FormControl(fields.Respuestas, [Validators.required]),\r\n });\r\n \r\n return mygroup.valid;\r\n }\r\n\r\n changeupdate(event){\r\n if ( event.target.checked ) {\r\n this.Opciontemp = true;\r\n }else {\r\n this.Opciontemp = false;\r\n }\r\n }\r\n \r\n public updateItem(content:any, form:any){\r\n this.isCreating = true;\r\n var qst = this.update_url;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n var to:any;\r\n \r\n if( (form.Respuestas == undefined) || (form.Respuestas == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', '', 'warning');\r\n return;\r\n }\r\n \r\n to = {};\r\n to.Respuestas = form.Respuestas;\r\n to.PreguntaID = this.id;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n to.DetallePreguntaID = form.DetallePreguntaID;\r\n to.Opcion = this.Opciontemp;\r\n \r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update1');\r\n Swal.fire('¡Actualizado!', x.msg, 'success');\r\n this.getList();\r\n \r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n \r\n }\r\n\r\n toggleEditable(event, id) {\r\n \r\n if ( event.target.checked ) {\r\n this.ActivarItem(id);\r\n }else {\r\n this.deleteItem(id);\r\n \r\n }\r\n }\r\n \r\n deleteItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.DetallePreguntaID = obj;\r\n id.DeleteUser = this.userinfo['logon'];\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.delete_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n \r\n ActivarItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.DetallePreguntaID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n \r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'respuesta' | translate}}\r\n \r\n {{'opcion' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.DetallePreguntaID}}{{row.Respuestas}}
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\n\r\nconst API_SANCION = environment.Global.API_SANCION;\r\nconst API_REGISTERSANCION = environment.Global.API_REGISTERSANCION;\r\nconst API_UPDATESANCION = environment.Global.API_UPDATESANCION;\r\nconst API_DESACTIVESANCION = environment.Global.API_DESACTIVESANCION;\r\nconst API_ACTIVESANCION = environment.Global.API_ACTIVESANCION;\r\n\r\n@Component({\r\n selector: 'app-paramsancion',\r\n templateUrl: './paramsancion.component.html',\r\n styleUrls: ['./paramsancion.component.css']\r\n})\r\nexport class ParamsancionComponent extends BaseCrudComponent {\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n jobtypeID:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_SANCION;\r\n this.create_url = API_REGISTERSANCION;\r\n this.update_url = API_UPDATESANCION;\r\n this.active_url = API_ACTIVESANCION;\r\n this.delete_url = API_DESACTIVESANCION;\r\n this.search_fields = ['NameSan', 'Descripcion'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n this.c_obj['SanctionDays'] = 0;\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n //debugger;\r\n \r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n\r\n \r\n var id:any;\r\n id = {};\r\n id.FoulTypeID = this.id;\r\n Swal.fire(\r\n {\r\n title: this.translations['loading'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.loadingList = false;\r\n //debugger;\r\n if(x.success){\r\n if(x.val != null){\r\n console.log(x.val)\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n Swal.close()\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.modalService.open(content, { centered: true, backdrop: 'static', keyboard: false, windowClass: \"myCustomModalClass\" });\r\n }\r\n\r\n public openUpdateModal(content: any) {\r\n this.modalService.open(content, { centered: true, backdrop: 'static', keyboard: false, windowClass: \"myCustomModalClass\" });\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n var validated = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n \r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n form.FoulTypeID = this.id;\r\n to = form;\r\n \r\n \r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations.msg_create, x.msg, 'success');\r\n this.c_obj = {};\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'NameSan': new FormControl(fields.NameSan, [Validators.required]),\r\n 'SanctionDays': new FormControl(fields.SanctionDays, [Validators.required]),\r\n 'Descripcion': new FormControl(fields.Descripcion, [Validators.required]),\r\n });\r\n \r\n return mygroup.valid;\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n\r\n var qst = this.update_url;\r\n this.isCreating = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n var to:any;\r\n \r\n if( (form.NameSan == undefined) || (form.NameSan == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n \r\n \r\n to = {};\r\n to.NameSan = form.NameSan;\r\n to.NumeroFalta = form.NumeroFalta;\r\n to.Descripcion = form.Descripcion;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n to.SanctionID = form.SanctionID;\r\n \r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update3');\r\n Swal.fire(this.translations.msg_update, x.msg, 'success');\r\n this.getList();\r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n \r\n }\r\n\r\n \r\n toggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n }\r\n }\r\n\r\n Activar(obj: any){\r\n\r\n\r\n var id:any;\r\n id = {};\r\n id.SanctionID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.active_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n deleteItem(obj: any){\r\n\r\n var id:any;\r\n id = {};\r\n id.SanctionID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n id.DeleteUser = this.userinfo['logon'];\r\n var qst = this.delete_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'desc' | translate}}\r\n \r\n {{'SanctionDays' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.SanctionID}}{{row.NameSan}}{{row.Descripcion}}{{row.SanctionDays}}
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSTIPOPREGUNTA = environment.Global.API_CONSTIPOPREGUNTA;\r\nconst API_REGTIPOPREGUNTA = environment.Global.API_REGTIPOPREGUNTA;\r\nconst API_UPDATEPREGUNTA = environment.Global.API_UPDATEPREGUNTA;\r\nconst API_DESACTIVEPREGUNTA = environment.Global.API_DESACTIVEPREGUNTA;\r\nconst API_ACTIVEPREGUNTA = environment.Global.API_ACTIVEPREGUNTA;\r\n\r\n@Component({\r\n selector: 'app-paramtipopregunta',\r\n templateUrl: './paramtipopregunta.component.html',\r\n styleUrls: ['./paramtipopregunta.component.css']\r\n})\r\nexport class ParamtipopreguntaComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSTIPOPREGUNTA;\r\n this.create_url = API_REGTIPOPREGUNTA;\r\n this.update_url = API_UPDATEPREGUNTA;\r\n this.delete_url = API_DESACTIVEPREGUNTA;\r\n this.active_url = API_ACTIVEPREGUNTA;\r\n\r\n this.search_fields = ['NameType', 'Description'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success')\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success')\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n}\r\n\r\npublic createItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n to = form;\r\n\r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.c_obj = {};\r\n this.confirmDialogWithModal(x.msg,'','success', content)\r\n }\r\n else {\r\n this.confirmDialogWithModal(x.msg,'','success', content)\r\n }\r\n });\r\n}\r\n\r\n\r\nvalidateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'NameType': new FormControl(fields.NameType, [Validators.required]),\r\n 'Descripcion': new FormControl(fields.Descripcion, [])\r\n });\r\n\r\n return mygroup.valid;\r\n}\r\n\r\n public updateItem(content:any, form:any){\r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.NameType == undefined) || (form.NameType == '') ){\r\n this.isUpdating = false;\r\n Swal.fire(this.translations.msg_all_required, '', 'error');\r\n return;\r\n }\r\n\r\n to = {};\r\n to.NameType = form.NameType;\r\n to.Descripcion = form.Descripcion;\r\n to.CreatorUserId = form.CreatorUserId;\r\n to.LastModifierUserID = this.userinfo['userId'];\r\n to.TipoPreguntaID = form.TipoPreguntaID;\r\n \r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.confirmDialogWithModal(x.msg,'','success', content)\r\n this.u_obj = {}; \r\n } \r\n }, err => {\r\n this.confirmDialogWithModal(err,'','error',content);\r\n });\r\n }\r\n\r\ndeleteItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.TipoPreguntaID = obj;\r\n id.DeleteUser = this.userinfo['userId'];\r\n var qst = this.delete_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n if(x.success){\r\n this.confirmDialog(x.msg,'','success');\r\n }\r\n else{\r\n this.confirmDialog(x.msg,'','error');\r\n }\r\n }, err => {\r\n this.confirmDialog(err,'','error');\r\n });\r\n}\r\n\r\n\r\nActivar(obj: any){\r\n var id:any;\r\n id = {};\r\n id.TipoPreguntaID = obj;\r\n id.LastModifierUser = this.userinfo['userId'];\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n Swal.close();\r\n if(x.success){\r\n this.confirmDialog(x.msg,'','success');\r\n }\r\n else{\r\n this.confirmDialog(x.msg,'','error');\r\n }\r\n }, err => {\r\n this.confirmDialog(err,'','error');\r\n });\r\n}\r\n\r\n toggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'desc' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.TipoPreguntaID}}{{row.NameType}}{{row.Descripcion}}
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSULTATYPEFALTA = environment.Global.API_CONSULTATYPEFALTA;\r\nconst API_REGISTERTYPEFOUL = environment.Global.API_REGISTERTYPEFOUL;\r\nconst API_UPDATETYPEFOUL = environment.Global.API_UPDATETYPEFOUL;\r\nconst API_DESACTIVETYPEFOUL = environment.Global.API_DESACTIVETYPEFOUL;\r\nconst API_ACTIVETYPEFOUL = environment.Global.API_ACTIVETYPEFOUL;\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-paramtypefoul',\r\n templateUrl: './paramtypefoul.component.html',\r\n styleUrls: ['./paramtypefoul.component.css']\r\n})\r\nexport class ParamtypefoulComponent extends BaseCrudComponent {\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n jobtypeID:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSULTATYPEFALTA;\r\n this.create_url = API_REGISTERTYPEFOUL;\r\n this.update_url = API_UPDATETYPEFOUL;\r\n this.delete_url = API_DESACTIVETYPEFOUL;\r\n this.active_url = API_ACTIVETYPEFOUL;\r\n\r\n this.search_fields = ['NameFoul', 'Descripcion'];\r\n\r\n this.c_obj['AnalysisFeature'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n \r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public getList() {\r\n //debugger;\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n Swal.fire(\r\n {\r\n title: this.translations['loading'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n //debugger;\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n Swal.close()\r\n }else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n}\r\n\r\npublic createItem(content:any, form:any){\r\n // debugger;\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n to = form;\r\n\r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations.msg_create, x.msg, 'success');\r\n this.c_obj = {};\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n });\r\n}\r\n\r\nvalidateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'NameFoul': new FormControl(fields.NameFoul, [Validators.required]),\r\n 'Descripcion': new FormControl(fields.Descripcion, [])\r\n });\r\n\r\n return mygroup.valid;\r\n}\r\n\r\npublic updateItem(content:any, form:any){\r\n\r\n var qst = this.update_url;\r\n this.isCreating = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n\r\n if( (form.NameFoul == undefined) || (form.NameFoul == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', 'msg', 'warning');\r\n return;\r\n }\r\n\r\n\r\n to = {};\r\n to.NameFoul = form.NameFoul;\r\n to.Descripcion = form.Descripcion;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n to.FoulTypeID = form.FoulTypeID;\r\n \r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update1');\r\n Swal.fire(this.translations.msg_update, x.msg, 'success');\r\n this.getList();\r\n \r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n\r\n}\r\n\r\n\r\ntoggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.Activar(id);\r\n }else {\r\n this.deleteItem(id);\r\n\r\n}\r\n}\r\n\r\nActivar(obj: any){\r\n var id:any;\r\n id = {};\r\n id.FoulTypeID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n var qst = this.active_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('¡Activado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\ndeleteItem(obj: any){\r\n\r\n var id:any;\r\n id = {};\r\n id.FoulTypeID = obj;\r\n id.LastModifierUser = this.userinfo['logon'];\r\n id.DeleteUser = this.userinfo['logon'];\r\n var qst = this.delete_url;\r\n\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire('Desactivado!', x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n}\r\n\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'desc' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.FoulTypeID}}{{row.NameFoul}}{{row.Descripcion}}
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\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 { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Router } from '@angular/router';\r\nimport { Storage } from '@ionic/storage';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n\r\n@Component({\r\n selector: 'app-permissions-by-user',\r\n templateUrl: './permissions-by-user.component.html',\r\n styleUrls: ['./permissions-by-user.component.css']\r\n})\r\nexport class PermissionsByUserComponent extends BaseCrudComponent implements OnInit {\r\n userinfo: any;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n \r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x; \r\n this.getList();\r\n });\r\n }\r\n}\r\n","
\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' | translate}}:

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

{{'name' | translate}}:

\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-production-group',\r\n templateUrl: './production-group.component.html'\r\n})\r\nexport class ProductionGroupComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n\r\n degrees:any;\r\n positions:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = 'ProductionGroup/All';\r\n this.create_url = '';\r\n this.update_url = 'ProductionGroup/Update';\r\n this.delete_url = '';\r\n this.search_fields = ['fgName'];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n Swal.fire(\r\n {\r\n title: this.translations['loading'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n let rs = x.val;\r\n this.rawdata = [];\r\n\r\n rs.forEach(y => {\r\n if( y['fgIsClosed'] == false ){\r\n this.rawdata.push(y);\r\n }\r\n });\r\n\r\n //this.rawdata = x.val;\r\n //this.rows = x.val;\r\n this.rows = this.rawdata;\r\n this.page = 1;\r\n\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n Swal.close()\r\n }\r\n });\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n var to:any;\r\n to = form;\r\n\r\n var qst = this.update_url;\r\n this.isUpdating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations['updated'], '', 'success');\r\n }//end success\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n //this.closeModal(content);\r\n }\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n \r\n {{'date' | translate}}\r\n {{'is_closed' | translate}}{{'areation' | translate}}{{'action' | translate}}
{{row.fgID}}{{row.fgName}}{{row.fgDateInSea | date:'y-MM-d HH:mm:ss'}}{{ ( (row.fgIsClosed) ? 'yes' : 'no') | translate }}{{row.fgAreation}}\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'edit_item' | translate}}: {{u_obj['fgName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from 'src/environments/environment';\r\n\r\nconst API_CONSPREGUNTADETALLE = environment.Global.API_CONSRESPUESTAESPECIFICAPORPREGUNTA;\r\nconst API_REGIPREGUNTADETALLE = environment.Global.API_REGRESPUESTA;\r\nconst API_UPDATEPREGUNTADETALLE = environment.Global.API_UPDATARESPUESTA;\r\nconst API_UPDATESTATUS = environment.Global.API_UPDATESTATUSRESPUESTA;\r\nconst API_CONSPREGUNTAESPECIFICA = environment.Global.API_CONSPREGUNTAESPECIFICA;\r\n\r\n\r\n@Component({\r\n selector: 'app-questiondetail',\r\n templateUrl: './questiondetail.component.html',\r\n styleUrls: ['./questiondetail.component.css']\r\n})\r\nexport class QuestiondetailComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n Opciontemp :any;\r\n QuestionSpecific = null;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = API_CONSPREGUNTADETALLE;\r\n this.create_url = API_REGIPREGUNTADETALLE;\r\n this.update_url = API_UPDATEPREGUNTADETALLE;\r\n //this.delete_url = API_DESACTIVEPREGUNTADETALLE;\r\n this.active_url = API_UPDATESTATUS;\r\n\r\n this.search_fields = ['Respuestas'];\r\n\r\n this.c_obj['ParamPreguntaDetalle'] = [];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n public async getList(){\r\n var qst = this.read_url+\"/\"+this.id;\r\n this.loadingList = true;\r\n var id:any;\r\n id = {};\r\n id.PreguntaID = this.id;\r\n this.messageShowLoading();\r\n await this.srv.postCall(qst, id).toPromise().then(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success')\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success')\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg,'','error')\r\n return;\r\n }\r\n });\r\n await this.getQuestionSpecific();\r\n }\r\n\r\n public async getQuestionSpecific() {\r\n const url = API_CONSPREGUNTAESPECIFICA + \"/\" + this.id;\r\n await this.srv.getCall(url).toPromise().then(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n this.QuestionSpecific = x.val[0];\r\n }\r\n }\r\n });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n let isClosedQuestion = false;\r\n if (this.QuestionSpecific.TipoPreguntaID == 2) {\r\n if ( this.rows.length == 2 ) {\r\n isClosedQuestion = true;\r\n Swal.fire(this.translations.question_type_close, this.translations.you_dont_create_more_questions,'error');\r\n }\r\n }\r\n if (!isClosedQuestion) {\r\n this.c_obj = {};\r\n this.openUpdateModalStatic(content, this.u_obj);\r\n }\r\n\r\n }\r\n\r\n \r\n public createItem(content:any, form:any){\r\n ////debugger;\r\n var validated = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n \r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n form.LastModifierUser = this.userinfo['logon'];\r\n form.PreguntaID = this.id;\r\n form.Opcion = this.Opciontemp;\r\n to = form;\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.confirmDialogWithModal(x.msg,'','success', content) \r\n }\r\n else{\r\n this.confirmDialogWithModal(x.msg,'','error', content) \r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'Respuestas': new FormControl(fields.Respuestas, [Validators.required]),\r\n });\r\n \r\n return mygroup.valid;\r\n }\r\n\r\n changeupdate(event){\r\n ////debugger;\r\n if ( event.target.checked ) {\r\n this.Opciontemp = 1;\r\n }else {\r\n this.Opciontemp = 0;\r\n }\r\n }\r\n \r\n public updateItem(content:any, form:any)\r\n { \r\n this.isUpdating = true;\r\n var qst = this.update_url;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n var to:any;\r\n \r\n if( (form.Respuestas == undefined) || (form.Respuestas == '') ){\r\n Swal.fire(this.translations.msg_all_required, '', 'warning');\r\n return;\r\n }\r\n \r\n to = {};\r\n to.Respuestas = form.Respuestas;\r\n to.PreguntaID = this.id;\r\n to.LastModifierUser = this.userinfo['userId'];\r\n to.DetallePreguntaID = form.DetallePreguntaID;\r\n to.Opcion = this.Opciontemp;\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.confirmDialogWithModal(x.msg,'','success', content) \r\n } \r\n }, err => {\r\n this.confirmDialogWithModal(err,'','error', content) \r\n });\r\n \r\n }\r\n\r\n toggleEditable(event, id) {\r\n \r\n if ( event.target.checked ) {\r\n this.ActivarItem(id);\r\n }else {\r\n this.deleteItem(id);\r\n \r\n }\r\n }\r\n \r\n deleteItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.DetallePreguntaID = obj;\r\n id.DeleteUser = this.userinfo['logon'];\r\n id.LastModifierUser = this.userinfo['userId'];\r\n id.Status=0;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){ \r\n this.confirmDialog(x.msg,'','success');\r\n }\r\n else{\r\n this.confirmDialog(x.msg,'','error');\r\n }\r\n }, err => {\r\n this.confirmDialog(err,'','error');\r\n });\r\n }\r\n \r\n ActivarItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.DetallePreguntaID = obj;\r\n id.LastModifierUser = this.userinfo['userId'];\r\n id.Status=1;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n if(x.success){\r\n this.confirmDialog(x.msg,'','success');\r\n }\r\n else{\r\n this.confirmDialog(x.msg,'','error');\r\n }\r\n }, err => {\r\n this.confirmDialog(err,'','error');\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'respuesta' | translate}}\r\n \r\n {{'rightoption' | translate}}\r\n {{'habidesa' | translate}}{{'action' | translate}}
{{row.DetallePreguntaID}}{{row.Respuestas}}
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nconst API_CONSPREGUNTA = Global.API_CONSPREGUNTA;\r\nconst API_REGPREGUNTA = Global.API_REGPREGUNTA;\r\nconst API_UPDATEPREGUNTAS = Global.API_UPDATEPREGUNTAS;\r\nconst API_UPDATESTATUS = Global.API_UPDATESTATUS;\r\nconst API_CONSPREGUNTAESPECIFICA = Global.API_CONSPREGUNTAESPECIFICA;\r\n\r\n@Component({\r\n selector: 'app-questions',\r\n templateUrl: './questions.component.html',\r\n styleUrls: ['./questions.component.css']\r\n})\r\nexport class QuestionsComponent extends BaseCrudComponent {\r\n\r\n id:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n userinfo:any;\r\n listTypeQuestion:any;\r\n listTypeParameter:any;\r\n\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n this.read_url = API_CONSPREGUNTA;\r\n this.create_url = API_REGPREGUNTA;\r\n this.update_url = API_UPDATEPREGUNTAS;\r\n this.active_url = API_UPDATESTATUS;\r\n // this.active_url = API_ACTIVEPREGUNTAS;\r\n\r\n this.search_fields = ['PreguntaID', 'Pregunta', 'TypeParameterName','TypeName'];\r\n\r\n this.c_obj['ParamPregunta'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.loadingRequired = true;\r\n this.getTypeQuestionData().subscribe(x => {\r\n //console.log(x);\r\n if(x != false){\r\n this.loadingRequired = false;\r\n this.listTypeQuestion = x;\r\n }\r\n });\r\n \r\n });\r\n this.loadingRequired = false;\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n this.loadingRequired = true;\r\n this.getTypeParameterData().subscribe(j => {\r\n //console.log(j);\r\n if(j != false){\r\n this.loadingRequired = false;\r\n this.listTypeParameter = j;\r\n }\r\n });\r\n \r\n this.getList();\r\n });\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n\r\n \r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n \r\n \r\n var id:any;\r\n id = {};\r\n id.TipoPreguntaID = this.id;\r\n this.messageShowLoading();\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success')\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success')\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg,'','error')\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.c_obj = {};\r\n this.openUpdateModalStatic(content, this.u_obj);\r\n }\r\n\r\n public createItem(content:any, form:any){\r\n //debugger;\r\n var validated = true;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n \r\n var to:any;\r\n form.CreatorUser = this.userinfo['logon'];\r\n to = form;\r\n //console.log(\"to:\",to);\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations['MENSAJE'],x.msg, 'success');\r\n }//end success\r\n else{\r\n //Swal.fire(this.translations[x.msg], '', 'error');\r\n Swal.fire(this.translations['MENSAJE'],x.msg, 'error');\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'Pregunta': new FormControl(fields.Pregunta, [Validators.required]),\r\n });\r\n \r\n return mygroup.valid;\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n //debugger;\r\n this.isCreating = true;\r\n var qst = this.update_url;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n var to:any;\r\n \r\n if( (form.Pregunta == undefined) || (form.Pregunta == '') ){\r\n Swal.fire('Ingrese todos los campos requeridos', '', 'warning');\r\n return;\r\n }\r\n //debugger;\r\n to = {};\r\n to.Pregunta = form.Pregunta;\r\n to.TipoPreguntaID = form.TipoPreguntaID;\r\n to.LastModifierUserID = this.userinfo['userId'];\r\n to.PreguntaID = form.PreguntaID;\r\n to.TypeParameterID=form.TypeParameterID;\r\n \r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update5');\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n \r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n \r\n }\r\n\r\n toggleEditable(event, id) {\r\n \r\n if ( event.target.checked ) {\r\n this.ActivarItem(id);\r\n }else {\r\n this.deleteItem(id);\r\n \r\n }\r\n }\r\n \r\n deleteItem(obj: any){\r\n //debugger;\r\n //console.log(\"user info:\",this.userinfo);\r\n var id:any;\r\n id = {};\r\n id.PreguntaID = obj;\r\n id.LastModifierUser = this.userinfo['userId'];\r\n id.Status=0;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n \r\n ActivarItem(obj: any){\r\n var id:any;\r\n id = {};\r\n id.PreguntaID = obj;\r\n id.LastModifierUser = this.userinfo['userId'];\r\n id.Status=1;\r\n var qst = this.active_url;\r\n this.srv.postCall(qst, id).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n \r\n public getTypeQuestionData(){\r\n var par_url = 'ConsultasGenerales/ConsultaTipoPreguntaActive';\r\n\r\n return this.srv.getCall(par_url).pipe(\r\n mergeMap(data => {\r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n // console.log(data);\r\n \r\n if(mydata.success == true ){\r\n return of(mydata.val);\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(false))\r\n );\r\n }\r\n\r\n public getTypeParameterData(){\r\n var par_url = \"SystemParameter/GetSystemParameterField\";\r\n this.loadingList = true;\r\n \r\n var to:any;\r\n to = {};\r\n to._field = \"PARMTYPEQUESTION\";\r\n\r\n par_url=par_url+\"/\"+\"PARMTYPEQUESTION\";\r\n // console.log(\"to:\",to);\r\n // console.log(\"url:\",par_url);\r\n //debugger;\r\n return this.srv.getCall(par_url).pipe( \r\n mergeMap(data => { \r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n // console.log(\"data:\",data);\r\n // console.log(\"mydata:\",mydata);\r\n \r\n if(mydata.success == true ){\r\n return of(mydata.val);\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(false))\r\n );\r\n }\r\n\r\n public DeleteItem(id:any){\r\n //debugger;\r\n var to:any;\r\n to = {};\r\n to.PreguntaID = id;\r\n to.LastModifierUser = this.userinfo['userId'];\r\n to.Status=3;\r\n var qst = this.active_url;\r\n\r\n // console.log(\"to::\",to);\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n }); \r\n \r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'pregunta' | translate}}\r\n {{'group' | translate}}{{'type' | translate}} {{'pregunta' | translate}} {{'habidesa' | translate}}{{'action' | translate}}
{{row.PreguntaID}}{{row.Pregunta}}{{row.TypeParameterName}}{{row.TypeName}}
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'edit_item' | translate}}: {{u_obj['anName']}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\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 { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Router } from '@angular/router';\r\nimport { Storage } from '@ionic/storage';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport Swal from 'sweetalert2';\r\nimport { environment } from 'src/environments/environment';\r\n\r\nconst API_GET_ALL_PROFILES = environment.Global.API_GET_ALL_PROFILES;\r\nconst API_GET_PROFILE_BY_ID = environment.Global.API_GET_PROFILE_BY_ID;\r\nconst API_CREATE_PROFILE = environment.Global.API_CREATE_PROFILE;\r\nconst API_UPDATE_PROFILE = environment.Global.API_UPDATE_PROFILE;\r\nconst API_UPDATE_STATUS_PROFILE = environment.Global.API_UPDATE_STATUS_PROFILE;\r\nconst API_GET_ALL_PAGES = environment.Global.API_GET_ALL_PAGES;\r\nconst API_GET_ALL_MENU = environment.Global.API_GET_ALL_MENU;\r\nconst API_CREATE_PERMISSION = environment.Global.API_CREATE_PERMISSION;\r\nconst API_GET_ALL_PERMISSIONS = environment.Global.API_GET_ALL_PERMISSIONS;\r\nconst API_GET_PERMISSIONS_BY_PROFILE_ID = environment.Global.API_GET_PERMISSIONS_BY_PROFILE_ID;\r\nconst API_UPDATE_PERMISSION = environment.Global.API_UPDATE_PERMISSION;\r\n\r\n@Component({\r\n selector: 'app-user-profile',\r\n templateUrl: './user-profile.component.html',\r\n styleUrls: ['./user-profile.component.css']\r\n})\r\nexport class UserProfileComponent extends BaseCrudComponent implements OnInit {\r\n loadingList = false;\r\n userinfo: any;\r\n listPages = [];\r\n listMenu = [];\r\n listPremissionByProfile = [];\r\n menuOption = -1;\r\n disabledGeneralChecked = false;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.pageSize = 5;\r\n this.search_fields = ['ProfileId','Name'];\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getList();\r\n this.getMenus();\r\n }\r\n\r\n /**\r\n * Method to get all profiles from db\r\n */\r\n getList() {\r\n let url = API_GET_ALL_PROFILES;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(url).subscribe(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '' , 'success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '' , 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' , 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Method to get all pages from web application\r\n */\r\n public getPages() {\r\n this.srv.getCall(API_GET_ALL_PAGES).subscribe(x => {\r\n if(x.success){\r\n if (x.val != null) {\r\n x.val.forEach(element => {\r\n element['create'] = false;\r\n element['read'] = false;\r\n element['update'] = false;\r\n element['delete'] = false;\r\n })\r\n this.listPages = x.val;\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.listPages = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Method to get all menus from db\r\n */\r\n public getMenus() {\r\n this.srv.getCall(API_GET_ALL_MENU).subscribe(x => {\r\n if(x.success){\r\n if (x.val != null) {\r\n x.val.forEach(element => {\r\n if (element.Name !== \"Comunicados\" && element.Name !== \"Configuración\") {\r\n this.listMenu.push(element);\r\n }\r\n });\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.listPages = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Method to open create modal\r\n * @param modal Modal container for create object\r\n */\r\n public openCreateModal(modal) {\r\n this.modalService.open(modal, { backdrop: 'static', keyboard : false, size: 'lg', centered: true })\r\n this.getPages();\r\n this.menuOption = -1;\r\n }\r\n\r\n /**\r\n * Method to call ActivarItem\r\n * @param param0 profile id to eliminate profile\r\n */\r\n public deleteItem({ProfileId}) {\r\n this.ActivarItem(ProfileId,3);\r\n }\r\n\r\n /**\r\n * Method to active, inactive or eliminate profile\r\n * @param id profile id value\r\n * @param status number type to modifiy data in db\r\n */\r\n public ActivarItem(id, status) {\r\n var to:any;\r\n to = {};\r\n to.ProfileId = id;\r\n to.Status = status;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n this.srv.postCall(API_UPDATE_STATUS_PROFILE, to).subscribe(x => {\r\n if(x.success){\r\n this.confirmDialog(x.msg, '' , 'success');\r\n }\r\n }, err => {\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n /**\r\n * Method to active or inactive profile\r\n * @param event event from click function \r\n * @param param1 profile id to active or inactive\r\n */\r\n public activarItem(event,{ProfileId}) {\r\n if ( event.target.checked ) {\r\n this.ActivarItem(ProfileId,1);\r\n }else {\r\n this.ActivarItem(ProfileId,2);\r\n }\r\n }\r\n\r\n /**\r\n * Method to create and valdiate form\r\n * @param fields forms fields\r\n * @returns return true if the form is valid otherwise return false\r\n */\r\n public validateCreateProfile(fields:any): boolean {\r\n let profileForm:any = {};\r\n profileForm = new FormGroup({\r\n 'nameProfile': new FormControl(fields.nameProfile, [Validators.required]),\r\n 'descriptionProfile': new FormControl(fields.descriptionProfile, [Validators.required])\r\n });\r\n return profileForm.valid;\r\n }\r\n\r\n /**\r\n * Method to validate if user select at least one page for the profile\r\n * @returns return counter value\r\n */\r\n public validatePages () {\r\n let counter = 0;\r\n this.listPages.forEach(element => {\r\n let internalCounter = 0;\r\n element.create == true ? internalCounter += 1: internalCounter = internalCounter;\r\n element.read == true ? internalCounter += 1: internalCounter = internalCounter;\r\n element.update == true ? internalCounter += 1: internalCounter = internalCounter;\r\n element.delete == true ? internalCounter += 1: internalCounter = internalCounter;\r\n if (internalCounter > 0) {\r\n counter += 1;\r\n } else {\r\n counter = counter;\r\n }\r\n });\r\n return counter\r\n }\r\n\r\n /**\r\n * Method to filter data based on user\r\n */\r\n public selectPages() {\r\n if ( this.menuOption == -1 ) {\r\n this.listPages.forEach( element => {\r\n element['create'] = false;\r\n element['read'] = false;\r\n element['update'] = false;\r\n element['delete'] = false;\r\n element['all'] = false;\r\n })\r\n this.disabledGeneralChecked = false;\r\n } else if ( this.menuOption == 0) {\r\n this.listPages.forEach( element => {\r\n element['create'] = true;\r\n element['read'] = true;\r\n element['update'] = true;\r\n element['delete'] = true;\r\n element['all'] = true;\r\n })\r\n this.disabledGeneralChecked = true;\r\n } else {\r\n this.listPages.forEach(element => {\r\n if (element.MenuId == this.menuOption) {\r\n element['create'] = true;\r\n element['read'] = true;\r\n element['update'] = true;\r\n element['delete'] = true;\r\n element['all'] = true;\r\n } else {\r\n element['create'] = false;\r\n element['read'] = false;\r\n element['update'] = false;\r\n element['delete'] = false;\r\n element['all'] = false;\r\n }\r\n })\r\n }\r\n }\r\n\r\n /**\r\n * Method to select all options for each row\r\n * @param event action from checkbox input\r\n * @param row row that contain crud\r\n */\r\n public selectAllByRow(event,row) {\r\n if ( event.target.checked ) {\r\n row['create'] = true;\r\n row['read'] = true;\r\n row['update'] = true;\r\n row['delete'] = true;\r\n }else {\r\n row['create'] = false;\r\n row['read'] = false;\r\n row['update'] = false;\r\n row['delete'] = false;\r\n }\r\n\r\n }\r\n\r\n /**\r\n *Method to create a new profile object or edit object, both contains permissions\r\n * @param profileid profile id to set in the object\r\n * @param mode if edit or create\r\n * @returns return an object with information about profile and his permissions\r\n */\r\n public createNewObject (profileid, mode) {\r\n if (mode == 'C') {\r\n let new_obj = {\r\n CreatorUser : this.userinfo['logon'],\r\n ProfileId : profileid,\r\n permissions : []\r\n }\r\n for ( let i = 0; i< this.listPages.length ; i++ ) {\r\n let crud = '';\r\n this.listPages[i].create == true ? crud += 'C': crud = crud;\r\n this.listPages[i].read == true ? (crud != '' ? crud += '|R' : crud +='R' ): crud = crud;\r\n this.listPages[i].update == true ? (crud != '' ? crud += '|U' : crud +='U') : crud = crud;\r\n this.listPages[i].delete == true ? (crud != '' ? crud += '|D' : crud +='D') : crud = crud;\r\n if (crud != '') {\r\n new_obj.permissions.push(\r\n {\r\n ModuleId: this.listPages[i].ModuleId,\r\n CRUD: crud \r\n }\r\n )\r\n }\r\n }\r\n return new_obj;\r\n } else if (mode == 'E') {\r\n let edit_obj = {\r\n LastModifierUser : this.userinfo['logon'],\r\n ProfileId : this.u_obj['ProfileId'],\r\n permissions : []\r\n }\r\n\r\n for ( let i = 0; i< this.listPages.length ; i++ ) {\r\n let crud = '';\r\n this.listPages[i].create == true ? crud += 'C': crud = crud;\r\n this.listPages[i].read == true ? (crud != '' ? crud += '|R' : crud +='R' ): crud = crud;\r\n this.listPages[i].update == true ? (crud != '' ? crud += '|U' : crud +='U') : crud = crud;\r\n this.listPages[i].delete == true ? (crud != '' ? crud += '|D' : crud +='D') : crud = crud;\r\n if (crud != '') {\r\n edit_obj.permissions.push(\r\n {\r\n ModuleId: this.listPages[i].ModuleId,\r\n CRUD: crud \r\n }\r\n )\r\n }\r\n }\r\n return edit_obj;\r\n }\r\n\r\n }\r\n\r\n /**\r\n * Method to create the profile in db\r\n * @param modal modal profile container with permissions\r\n * @param obj object with data for the new profile\r\n * @returns return an object if the profile was created successfully\r\n */\r\n public createItem(modal, obj) {\r\n this.isCreating = true;\r\n let validatedForm = this.validateCreateProfile(obj);\r\n if (!validatedForm ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n let counter = this.validatePages();\r\n if (counter == 0) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_select_permission'], '', 'error');\r\n return;\r\n }\r\n let new_profile = {\r\n CreatorUser : this.userinfo['logon'],\r\n Name: obj.nameProfile,\r\n Description: obj.descriptionProfile\r\n }\r\n\r\n this.srv.postCall(API_CREATE_PROFILE, new_profile).subscribe(x => {\r\n if(x.success){\r\n if (x.val !== null) {\r\n this.createPermission(x.val['ProfileId'], modal);\r\n }\r\n }\r\n }, err => {\r\n this.isCreating = false;\r\n Swal.fire('Error');\r\n });\r\n\r\n }\r\n \r\n /**\r\n * Method to create permissions for the profile\r\n * @param profileid profile id for each permission\r\n * @param modal modal profile container with permissions\r\n */\r\n public createPermission(profileid, modal) {\r\n let object = this.createNewObject(profileid, 'C');\r\n this.srv.postCall(API_CREATE_PERMISSION, object).subscribe(x => {\r\n if(x.success){\r\n this.isCreating = false;\r\n Swal.fire(\r\n {\r\n title: this.translations['profile_success'],\r\n icon:'success'\r\n }\r\n ).then((result) => {\r\n if (result.value) { \r\n this.getList();\r\n this.closeModal(modal);\r\n this.menuOption = -1;\r\n }\r\n });\r\n }\r\n }, err => {\r\n this.isCreating = false;\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n /**\r\n * Method to open update modal and pages, permissions\r\n * @param modal modal update container\r\n * @param row information from the profile selected\r\n */\r\n public async openUpdateModal(modal, row) {\r\n this.u_obj = {};\r\n this.u_obj['ProfileId'] = row.ProfileId;\r\n this.modalService.open(modal, { backdrop: 'static', keyboard : false, size: 'lg', centered: true })\r\n this.u_obj['nameProfile'] = row.Name;\r\n this.u_obj['descriptionProfile'] = row.Description;\r\n this.getPages();\r\n await this.getPermissionsByProfileId(row);\r\n this.asignPermission();\r\n\r\n }\r\n\r\n /**\r\n * Method to assign profile permissions to list pages\r\n */\r\n public asignPermission () {\r\n setTimeout(()=>{\r\n this.listPremissionByProfile.forEach(element => {\r\n let crud = element.Crud.split('|');\r\n this.listPages.forEach(elementPage => {\r\n if (element.ModuleId == elementPage.ModuleId) {\r\n elementPage['create'] = crud.indexOf('C') !== -1 ? true : false;\r\n elementPage['read'] = crud.indexOf('R') !== -1 ? true : false;\r\n elementPage['update'] = crud.indexOf('U') !== -1 ? true : false;\r\n elementPage['delete'] = crud.indexOf('D') !== -1 ? true : false;\r\n }\r\n })\r\n })\r\n }, 1500); \r\n }\r\n\r\n /**\r\n * Mehtod to get profiles permissions \r\n * @param param0 profile id to get all permissions \r\n */\r\n public async getPermissionsByProfileId({ProfileId}) {\r\n await this.srv.getCall(API_GET_PERMISSIONS_BY_PROFILE_ID + ProfileId).toPromise().then(x => {\r\n if(x.success){\r\n if (x.val != null) {\r\n this.listPremissionByProfile = x.val;\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.listPremissionByProfile = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Mehtod to edit profile with permissions\r\n * @param modal update container modal\r\n * @param obj object to update data in db\r\n * @returns return an object if the update was successfully\r\n */\r\n public async editItem(modal, obj) {\r\n this.isUpdating = true;\r\n let validatedForm = this.validateCreateProfile(obj);\r\n if (!validatedForm ){\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n let counter = this.validatePages();\r\n if (counter == 0) {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_select_permission'], '', 'error');\r\n return;\r\n }\r\n let edit_profile_data = {\r\n ProfileId : this.u_obj['ProfileId'],\r\n LastModifierUser : this.userinfo['logon'],\r\n Name: this.u_obj['nameProfile'],\r\n Description: this.u_obj['descriptionProfile']\r\n }\r\n let object = this.createNewObject(this.u_obj['ProfileId'], 'E');\r\n await this.srv.postCall(API_UPDATE_PROFILE, edit_profile_data).toPromise().then(x => {\r\n if(x.success){\r\n this.srv.postCall(API_UPDATE_PERMISSION, object).subscribe(x => { \r\n this.isUpdating = false;\r\n if(x.success){\r\n Swal.fire(\r\n {\r\n title: this.translations['profile_updated'],\r\n icon:'success'\r\n }\r\n ).then((result) => {\r\n if (result.value) { \r\n this.getList();\r\n this.closeModal(modal);\r\n this.menuOption = -1;\r\n }\r\n });\r\n }\r\n }, err => {\r\n this.isUpdating = false;\r\n Swal.fire('Error');\r\n });\r\n }\r\n }, err => {\r\n this.isUpdating = false;\r\n Swal.fire('Error');\r\n });\r\n \r\n\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name'| translate}}\r\n {{'description' | translate}}{{'status' | translate}}{{'habidesa' | translate}}{{'action' | translate}}
{{ i + 1}}{{row.Name}}{{row.Description}}{{row.Status == 'A' ? 'Activo' : 'Inactivo'}} \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{{'create_item' | translate}}

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

{{'detail_profile' | translate}}

\r\n
\r\n
\r\n
\r\n
\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_permission' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{'any' | translate }}\r\n {{'all' | translate }}\r\n {{menu.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
{{'name' | translate}}{{'create' | translate}}{{'read' | translate}}{{'update' | translate}}{{'delete' | translate}}{{'all' | translate}}
{{row.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

{{'edit_item' | translate}}

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

{{'detail_profile' | translate}}

\r\n
\r\n
\r\n
\r\n
\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_permission' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{'any' | translate }}\r\n {{'all' | translate }}\r\n {{menu.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
{{'name' | translate}}{{'create' | translate}}{{'read' | translate}}{{'update' | translate}}{{'delete' | translate}}{{'all' | translate}}
{{row.Name}}
\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 { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { Observable, from, of, concat } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { Lightbox } from 'ngx-lightbox';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n\r\n@Component({\r\n selector: 'app-user',\r\n templateUrl: './user.component.html',\r\n styleUrls: ['./user.component.css']\r\n})\r\nexport class UserComponent extends BaseCrudComponent {\r\n\r\n \tid:any;\r\n loadingRequired = false;\r\n listAgr:any;\r\n translations:any;\r\n\r\n degrees:any;\r\n positions:any;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService,\r\n private _lightbox: Lightbox\r\n ) {\r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n this.read_url = 'User/All';\r\n this.create_url = '';\r\n this.update_url = 'User/Update';\r\n this.delete_url = '';\r\n this.search_fields = ['name', 'usrEmail', 'UsrDegreeName', 'UsrPositionName'];\r\n\r\n this.c_obj['SiteAddress'] = [];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n\r\n var batch = [];\r\n batch.push(this.getDegrees());\r\n batch.push(this.getPositions());\r\n\r\n this.loadingList = true;\r\n\r\n concat(...batch).subscribe({\r\n complete: () => {\r\n this.loadingList = false;\r\n this.getList();\r\n }\r\n });\r\n });\r\n }\r\n\r\n public getList(){\r\n var qst = this.read_url;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n \r\n if(x.success){\r\n x.val.forEach(y => {\r\n y['name'] = y['usrFirstName'] + ' ' + y['usrLastName'];\r\n });\r\n\r\n this.rawdata = x.val;\r\n this.rows = x.val;\r\n this.page = 1;\r\n\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n \r\n }\r\n this.closeLoadingMessage();\r\n });\r\n }\r\n\r\n public getVal(obj:any, key:any){\r\n let resp = '';\r\n if( (obj !== undefined) && (obj !== null) ){\r\n resp = obj[key];\r\n }\r\n return resp;\r\n }\r\n\r\n public getFromArray(arr:any, key:any, val:any, to:any, def:any){\r\n let resp = arr.filter(f => {\r\n return f[key] == val;\r\n });\r\n\r\n return (resp.length > 0) ? resp[0][to] : def;\r\n }\r\n\r\n public getDegrees(){\r\n let url = 'SystemParameter/GetByName/USR_DEG';\r\n return this.srv.getCall(url).pipe(\r\n mergeMap(data => {\r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n \r\n if(mydata.success == true ){\r\n this.degrees = mydata.val[0];\r\n return of(true);\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(false))\r\n );\r\n }\r\n\r\n public getPositions(){\r\n let url = 'SystemParameter/GetByName/USER_POS';\r\n return this.srv.getCall(url).pipe(\r\n mergeMap(data => {\r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n \r\n if(mydata.success == true ){\r\n this.positions = mydata.val[0];\r\n return of(true);\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(false))\r\n );\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n var validated = true;\r\n\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n form['usrDegree'] = form['UsrDegreeId'];\r\n form['usrPosition'] = form['UsrPositionId'];\r\n form['usrBelongHA '] = form['usrBelongHA'];\r\n\r\n var to:any;\r\n to = form;\r\n\r\n var qst = this.update_url;\r\n this.isUpdating = true;\r\n\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n if(x.success){\r\n this.getList();\r\n this.closeModal(content);\r\n Swal.fire(this.translations['updated'], '', 'success');\r\n }//end success\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n //this.closeModal(content);\r\n }\r\n });\r\n }\r\n\r\n handleInputChange(e, obj:any) {\r\n var file = e.dataTransfer ? e.dataTransfer.files[0] : e.target.files[0];\r\n var pattern = /image-*/;\r\n var reader = new FileReader();\r\n /*if (!file.type.match(pattern)) {\r\n alert('invalid format');\r\n return;\r\n }*/\r\n\r\n //console.log(file);\r\n\r\n reader.onload = (_event) => { \r\n /*obj.img[0].src = reader.result;\r\n obj.img[0].fname = file.name;*/\r\n \r\n obj.usrSign = reader.result;\r\n }\r\n\r\n reader.readAsDataURL(file);\r\n }\r\n\r\n openPreview(obj:any): void {\r\n var album:any;\r\n album = [\r\n //{src: obj.src}\r\n {src: obj}\r\n ];\r\n // open lightbox\r\n this._lightbox.open(album, 0);\r\n }\r\n\r\n clearImgPrev(obj:any){\r\n obj.usrSign = '';\r\n //console.log(obj);\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'name' | translate}}\r\n {{'email' | translate}}\r\n {{'degree' | translate}}\r\n \r\n {{'position' | translate}}\r\n {{'action' | translate}}
{{row.usrId}}{{row.name}}{{row.usrEmail}}{{row.UsrDegreeName}}{{row.UsrPositionName}}\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'edit_item' | translate}}: {{u_obj['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 \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\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, ActivatedRoute } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { Storage } from '@ionic/storage';\r\nimport { environment } from 'src/environments/environment';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport Swal from 'sweetalert2';\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\nimport { isNumeric } from 'rxjs/internal-compatibility';\r\nimport { debug } from 'console';\r\nimport { Cell, Img, PdfMakeWrapper, Stack, Table, Txt } from 'pdfmake-wrapper';\r\n\r\nconst API_GET_EMPLOYEES_BY_EVALUATION = environment.Global.API_GET_EMPLOYEES_BY_EVALUATION;\r\nconst API_GET_EVALS_BY_TYPE_JOB = environment.Global.API_GET_EVALS_BY_TYPE_JOB;\r\nconst API_GET_JOBS_BY_TYPE_EMPLOYEE = environment.Global.API_GET_JOBS_BY_TYPE_EMPLOYEE;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst API_GET_EVALUATION_BY_COMPANY = environment.Global.API_GET_EVALUATION_BY_COMPANY;\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-evalassignbyuser',\r\n templateUrl: './evalassignbyuser.component.html',\r\n styleUrls: ['./evalassignbyuser.component.css']\r\n})\r\nexport class EvalassignbyuserComponent extends BaseCrudComponent implements OnInit {\r\n\r\n userinfo: any = null;\r\n typesEmployee = [{ id: 100, name: \"Trabajador\" }, { id: 101, name: \"Conductor\" }];\r\n isVisible = false;\r\n evaluationsList = [];\r\n private workbook: Workbook;\r\n private lista_titulos;\r\n date_init = null;\r\n date_end = null;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n isClean = false;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['CompanyName', 'TypeCompany',\r\n 'NumberIdentification', 'EmployeeName', 'TypeEmployee', 'EvaluationName', 'StatusEval'];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.pageSize = 10;\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.getCompanies();\r\n }\r\n\r\n public async getListCertificate(url:string) {\r\n\r\n this.isFind = true;\r\n // console.log(url)\r\n let list_tmp = [];\r\n this.srv.getCall(url).subscribe(x => {\r\n // console.log(x.val)\r\n if (x.success) {\r\n if (x.val != null) {\r\n // console.log(x.val)\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((!(this.date_init===null) && !(this.date_end===null)) && (this.options_ruc == -1 || this.options_ruc == null) && (this.options_company == -1 || this.options_company == null) ) {\r\n // console.log('Primer filtro')\r\n list_tmp.forEach(tmp => {\r\n tmp.Date = this.formatOnlyDate(new Date(tmp.Date));\r\n if (tmp.Date >= this.date_init && tmp.Date <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n this.isFind=false\r\n } else if ((this.options_ruc != -1 || this.options_company != -1) && (!(this.date_init===null) && !(this.date_end===null))) {\r\n // console.log('Segundo filtro')\r\n\r\n list_tmp.forEach(tmp => {\r\n tmp.Date = this.formatOnlyDate(new Date(tmp.Date));\r\n if (tmp.Date >= this.date_init && tmp.Date <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n this.isFind=false;\r\n this.filterAll();\r\n this.isFind = false;\r\n debugger\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n }\r\n } else if ((this.options_ruc != null || this.options_company != null) && ((this.date_init===null) && (this.date_end===null))) {\r\n // console.log('SKRETTING')\r\n if (((this.options_ruc !== null && this.options_ruc != null) || (this.options_company != null && this.options_company != null))) {\r\n // console.log('Tercer filtro induccion')\r\n list_tmp.forEach(tmp => {\r\n new_list.push(tmp);\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n this.isFind=false;\r\n }\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n // console.log(this.rows)\r\n\r\n this.filterAll();\r\n this.isFind = false;\r\n debugger\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n }\r\n }})\r\n }\r\n\r\n\r\n\r\n public validateCreateInfo(fields: any) {\r\n let mygroup: any = {};\r\n mygroup = new FormGroup({\r\n 'Name': new FormControl(fields.Name, [Validators.required]),\r\n 'NumberIdentification': new FormControl(fields.NumberIdentification, [Validators.required])\r\n });\r\n\r\n return mygroup.valid;\r\n }\r\n\r\n public openCreateModal(content) {\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg', centered: true });\r\n this.c_obj = {};\r\n this.isCreating = false;\r\n\r\n }\r\n\r\n public onlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n public getEmployeesByType() {\r\n if (this.c_obj['typeEmployee'] != null && this.c_obj['typeEmployee'] != 101) {\r\n this.isVisible = true;\r\n let url = API_GET_JOBS_BY_TYPE_EMPLOYEE + this.c_obj['typeEmployee'];\r\n this.srv.getCall(url).subscribe(x => {\r\n if (x.val.length > 0) {\r\n this.c_obj['jobs'] = x.val;\r\n }\r\n });\r\n } else if (this.c_obj['typeEmployee'] == 101) {\r\n this.isVisible = false;\r\n this.c_obj['NumberIdentification'] = null;\r\n this.c_obj['Name'] = null;\r\n this.getEvaluationsByTypeJob(1);\r\n }\r\n }\r\n\r\n public GetEmployeeforIdentification(obj: any, val: any) {\r\n console.log(obj);\r\n if ((obj !== null) && (obj !== undefined) && (obj !== '')) {\r\n console.log('no vacío')\r\n var qst = \"Employee/GetIdentification/\" + obj;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n if (x.val == null) {\r\n this.messageDialog('Registro no existe. Verifique si se encuentra previamente registrado', '', 'warning');\r\n } else\r\n if (x.val.length > 0) {\r\n console.log(x.val)\r\n this.c_obj['CompanyID'] = x.val[0].CompanyID;\r\n this.c_obj['EmployeeId'] = x.val[0].EmployeeId;\r\n this.c_obj['Name'] = x.val[0].Name;\r\n this.c_obj['_JobTypeEmployee'] = x.val[0]._JobTypeEmployee;\r\n this.c_obj['RequestDetails'] = [\r\n {\r\n EmployeeID: x.val[0].EmployeeId,\r\n JobTypeID: x.val[0].typeEmployeeName == \"Conductor\" ? 6 : null\r\n }\r\n ];\r\n this.messageDialog(x.msg, '', 'success');\r\n } else {\r\n this.messageDialog(x.msg, '', 'error');\r\n }\r\n });\r\n }\r\n // else {\r\n // console.log('vacío')\r\n // }\r\n }\r\n\r\n public getEvaluationsByTypeJob(type?) {\r\n this.c_obj['ParameEvaID'] = null;\r\n this.evaluationsList = [];\r\n if (type == undefined) {\r\n if (this.c_obj['JobTypeID'] != null && this.c_obj['JobTypeID'] != undefined) {\r\n let url = API_GET_EVALS_BY_TYPE_JOB + this.c_obj['JobTypeID'];\r\n this.c_obj['RequestDetails'][0].JobTypeID = this.c_obj['JobTypeID'];\r\n this.messageShowLoading();\r\n this.srv.getCall(url).subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n x.val.forEach(element => {\r\n this.evaluationsList.push(\r\n {\r\n ParameEvaID: element[0].ParameEvaID,\r\n Nombre: element[0].Nombre\r\n }\r\n )\r\n })\r\n this.messageDialog(x.msg, '', 'success');\r\n }\r\n } else {\r\n this.messageDialog('Registro no existe. Verifique si se encuentra evaluaciones previamente registradas', '', 'warning');\r\n }\r\n })\r\n }\r\n } else {\r\n this.c_obj['JobTypeID'] = 6;\r\n let url = API_GET_EVALS_BY_TYPE_JOB + this.c_obj['JobTypeID'];\r\n this.messageShowLoading();\r\n this.srv.getCall(url).subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n x.val.forEach(element => {\r\n this.evaluationsList.push(\r\n {\r\n ParameEvaID: element[0].ParameEvaID,\r\n Nombre: element[0].Nombre\r\n }\r\n )\r\n })\r\n this.messageDialog(x.msg, '', 'success');\r\n }\r\n }\r\n })\r\n }\r\n }\r\n\r\n public async createItem(content: any, form: any) {\r\n this.create_url = \"Request/Create\";\r\n let qst = \"Request/ExistSpecificEval\";\r\n this.isCreating = true;\r\n var validated = true;\r\n if (form == undefined) {\r\n form = {};\r\n }\r\n validated = this.validateCreateInfo(form);\r\n if (!validated) {\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n this.isCreating = false;\r\n return;\r\n }\r\n\r\n if (form.ParameEvaID == undefined || form.ParameEvaID == null) {\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n this.isCreating = false;\r\n return;\r\n }\r\n\r\n if (form.JobTypeID == undefined || form.JobTypeID == null) {\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n this.isCreating = false;\r\n return;\r\n }\r\n\r\n let to = {\r\n CompanyID: form.CompanyID,\r\n WhoRequest: this.userinfo['logon'],\r\n CreatorUserID: this.userinfo['userId'],\r\n RequestDetails: form.RequestDetails,\r\n Status: \"A\",\r\n ParameEvaID: form.ParameEvaID\r\n }\r\n let to2 = {\r\n ParameEvaID: this.c_obj.ParameEvaID,\r\n employeeId: this.c_obj.EmployeeId\r\n };\r\n let exist = false;\r\n let msg = \"\";\r\n await this.srv.postCall(qst, to2).toPromise().then(x => {\r\n if (x.success) {\r\n exist = false;\r\n } else {\r\n exist = true;\r\n msg = x.msg;\r\n }\r\n });\r\n if (exist) {\r\n this.isCreating = false;\r\n Swal.fire(msg, '', 'error');\r\n return;\r\n }\r\n console.log(to)\r\n var url = this.create_url;\r\n await this.srv.postCall(url, to).toPromise().then(async data => {\r\n if (data.val != null) {\r\n this.confirmDialog(data.msg, '', 'success');\r\n await this.AssigneItem(\"\", data.val[\"RequestId\"]);\r\n }\r\n }, catchError => {\r\n catchError.message;\r\n });\r\n }\r\n\r\n public async AssigneItem(content: any, form: any) {\r\n var qst = \"Request/AssigneSpecificEval\";\r\n var to: any;\r\n to = {\r\n RequestId: form,\r\n AssignedUser: \"Automatic\",\r\n CompanyID: this.c_obj.CompanyID,\r\n ParameEvaID: this.c_obj.ParameEvaID,\r\n employeeId: this.c_obj.EmployeeId\r\n };\r\n await this.srv.postCall(qst, to).toPromise().then(async x => {\r\n if (x.success) {\r\n await this.SendMail(to, content);\r\n }\r\n });\r\n }\r\n\r\n public async SendMail(data: any, content) {\r\n var qst = \"Request/SenMail\";\r\n var to: any;\r\n to = {};\r\n to = data;\r\n await this.srv.postCall(qst, to).toPromise().then(x => {\r\n this.isCreating = false;\r\n if (x.success) {\r\n this.confirmDialogWithModal(x.msg, '', 'success', content);\r\n this.c_obj = {};\r\n }\r\n }, err => {\r\n this.isCreating = false;\r\n this.confirmDialogWithModal(err, '', 'error', content);\r\n });\r\n }\r\n downloadExcel() {\r\n\r\n this.workbook = new Workbook();\r\n let nombreXLSX = \"Reporte asignación de cursos virtuales.xlsx\";\r\n this.lista_titulos = [\r\n\r\n\r\n this.translations.code,\r\n this.translations.Company,\r\n this.translations.type_company,\r\n this.translations.identification,\r\n this.translations.Employee,\r\n this.translations.employee_type,\r\n this.translations.evaluation,\r\n this.translations.status,\r\n this.translations.Qualification,\r\n this.translations.date_emision,\r\n this.translations.caducity_date,\r\n\r\n ]\r\n\r\n\r\n this.ContainsExcel();\r\n this.workbook.creator = \"GESCON\";\r\n this.workbook.xlsx.writeBuffer().then((data) => {\r\n const blob = new Blob([data]);\r\n fs.saveAs(blob, nombreXLSX);\r\n })\r\n }\r\n private ContainsExcel() {\r\n const sheet = this.workbook.addWorksheet('Sheet');\r\n\r\n sheet.getColumn(\"A\").width = 8;\r\n sheet.getColumn(\"B\").width = 20;\r\n sheet.getColumn(\"C\").width = 20;\r\n sheet.getColumn(\"D\").width = 20;\r\n sheet.getColumn(\"E\").width = 20;\r\n sheet.getColumn(\"F\").width = 20;\r\n sheet.getColumn(\"G\").width = 20;\r\n sheet.getColumn(\"H\").width = 20;\r\n sheet.getColumn(\"I\").width = 20;\r\n sheet.getColumn(\"J\").width = 20;\r\n sheet.getColumn(\"K\").width = 20;\r\n\r\n // ALINEAR COLUMNAS\r\n sheet.columns.forEach((column) => {\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n });\r\n\r\n\r\n\r\n // establecer los valores de las columnas y del header\r\n\r\n //establecer los header\r\n const headerRow = sheet.getRow(1);\r\n // console.log(\"Lista de titulos:\", this.lista_titulos);\r\n headerRow.values = this.lista_titulos;\r\n // headerRow.values = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];\r\n headerRow.font = { bold: true, size: 12, color:{ argb: 'FFFFFF' } };\r\n headerRow.fill={\r\n type: 'pattern',\r\n pattern:'solid',\r\n fgColor:{argb:'003d6a'},\r\n bgColor:{argb:'F38230'}\r\n }\r\n // agregar los datos a las filas\r\n const rowsToInsert = sheet.getRows(2, this.rows.length);\r\n\r\n for (let index = 0; index < rowsToInsert.length; index++) {\r\n const itemData = this.rows[index]; //obtenemos el item segun el index de la iteraciòn(recorrido)\r\n const row = rowsToInsert[index]; //obtenemos la primera fila segun el index de la iteraciòn(recorrido)\r\n // los valores de itemData seran asignados a row (fila actual en la iteraciòn)\r\n\r\n row.values = [\r\n\r\n itemData.RequestDetailId,\r\n itemData.CompanyName,\r\n itemData.TypeCompany,\r\n itemData.NumberIdentification,\r\n itemData.EmployeeName,\r\n itemData.TypeEmployee,\r\n itemData.EvaluationName,\r\n itemData.StatusEval,\r\n itemData.Score,\r\n itemData.Date==null?\"\":itemData.Date.split('T')[0],\r\n itemData.DateExpired==null?\"\":itemData.DateExpired.split('T')[0],\r\n ];\r\n\r\n }\r\n }\r\n clearFilters() {\r\n\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n }\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1 || this.options_ruc == null) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n companySelected() {\r\n // console.log(this.options_company);\r\n if (this.options_company == -1 || this.options_company == null) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n }\r\n dataToFind() {\r\n debugger\r\n let url = '';\r\n this.isFind = true;\r\n if (this.date_end < this.date_init) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_error_date, this.translations.msg_error_date_end, 'error');\r\n }\r\n if (this.date_init !== null && this.date_end === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_end_select, '', 'error');\r\n }\r\n if (this.date_end !== null && this.date_init === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_init_select, '', 'error');\r\n }\r\n\r\n if (isNumeric(this.userinfo.logon)) {\r\n url = API_GET_EVALUATION_BY_COMPANY+ this.userinfo.selectedCompanyId;\r\n } else {\r\n let id = this.options_company;\r\n id ??= this.options_ruc;\r\n if(id!=-1 && id!=null){\r\n url=API_GET_EVALUATION_BY_COMPANY+id;\r\n\r\n }else{\r\n url = API_GET_EMPLOYEES_BY_EVALUATION;\r\n }\r\n }\r\n\r\n this.isFind = false;\r\n this.getListCertificate(url);\r\n }\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n let listInReport = this.rows;\r\n let mapaTitles = new Map();\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n // console.log(...this.rows);\r\n // debugger\r\n listInReport.forEach(element => {\r\n let Date=element.Date==null?\"\":element.Date.split('T')[0];\r\n let DateExpired=element.DateExpired==null?\"\":element.DateExpired.split('T')[0];\r\n let obj = [];\r\n obj = [\r\n element.RequestDetailId,\r\n element.CompanyName,\r\n element.TypeCompany,\r\n element.NumberIdentification,\r\n element.EmployeeName,\r\n element.TypeEmployee,\r\n element.EvaluationName,\r\n element.StatusEval,\r\n element.Score,\r\n Date,\r\n DateExpired\r\n ]\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.Company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.type_company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.identification).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.Employee).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.employee_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.evaluation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.Qualification).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_emision).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.caducity_date).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n\r\n nueva_lista_reportes.push(obj);\r\n\r\n if (!mapaTitles.has(element.NameDoc)) {\r\n mapaTitles.set(element.NameDoc, element.NameDoc);\r\n }\r\n\r\n });\r\n\r\n\r\n\r\n\r\n const pdf = new PdfMakeWrapper();\r\n let title = \"Reporte asignación de cursos virtuales\";\r\n\r\n pdf.info({\r\n\r\n title: `${title}`,\r\n author: `${this.userinfo.name}`,\r\n subject: 'Listado',\r\n });\r\n\r\n var fontSize: 0;\r\n fontSize: 10\r\n fontSize: 8\r\n\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: fontSize,\r\n alignment: 'justify'\r\n });\r\n pdf.pageMargins([40, 110, 40, 75]);\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.pageOrientation('landscape');\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userinfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userinfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...nueva_lista_reportes\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n .alignment('center')\r\n .end\r\n ]\r\n );\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n\r\n\r\n pdf.create().download(title);\r\n Swal.close();\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}}{{'Company' | translate}}{{'type_company' | translate}}{{'identification' | translate}}{{'Employee' | translate}}{{'employee_type' | translate}}{{'evaluation' | translate}}{{'status' | translate}}{{'Qualification' | translate}}{{'date_emision' | translate}}{{'caducity_date' | translate}}
{{row.RequestDetailId}}{{row.CompanyName}}{{row.TypeCompany}}{{row.NumberIdentification}}{{row.EmployeeName}}{{row.TypeEmployee}}{{row.EvaluationName}}{{row.StatusEval}}{{row.Score}}{{row?.Date.split('T')[0]}}{{row?.DateExpired.split('T')[0]}}
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'evaluation_assignation'| translate}}

\r\n
\r\n
\r\n \r\n \r\n {{type['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 {{job['Name']}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{evaluation['Nombre']}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\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-evaluationinternal',\r\n templateUrl: './evaluationinternal.component.html',\r\n styleUrls: ['./evaluationinternal.component.css']\r\n})\r\nexport class EvaluationinternalComponent implements OnInit {\r\n\r\n\r\n user = '';\r\n idUser = '';\r\n evaluation = null;\r\n\r\n usuarios = [\r\n {\r\n id:'0955744347',\r\n user:'Danny Rios'\r\n },\r\n {\r\n id:'0955744346',\r\n user:'Evelyn Duarte'\r\n },\r\n {\r\n id:'0955744345',\r\n user:'Ricardo Mujica'\r\n }\r\n ]\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n\r\n evalSelected() {\r\n this.user = '';\r\n this.idUser = '';\r\n }\r\n\r\n setUser() {\r\n const id = this.idUser;\r\n let obj = this.usuarios.find(u=> u.id === id);\r\n this.user = obj !== undefined ? obj.user: '';\r\n // this.usuarios.forEach(user => {\r\n // if (id === user.id) {\r\n // this.user = user.user\r\n // } else {\r\n // this.user = ''\r\n // }\r\n // })\r\n }\r\n\r\n onlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Storage } from '@ionic/storage';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport Swal from 'sweetalert2';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { catchError, mergeMap } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\n\r\n\r\nconst GET_EMPLOYEES_BY_COMPANY = environment.Global.API_GET_EMPLOYEES_BY_COMPANY;\r\nconst GET_EMPLOYEES_ALL_COMPANY = environment.Global.API_GET_EMPLOYEES_ALL_COMPANY;\r\nconst GET_JOBS_TYPE = environment.Global.API_GET_JOB_TYPE;\r\nconst GET_ALL_SITES_ACTIVE = environment.Global.API_GET_ALL_SITES_ACTIVE;\r\nconst GET_ALL_AREA_BY_ID = environment.Global.API_GET_ALL_AREA_BY_ID;\r\nconst GET_ALL_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst CREATE_QR_AND_SEND_EMAIL = environment.Global.API_CREATE_QR_AND_SEND_EMAIL;\r\nconst SEND_EMAIL_TO_REJECT = environment.Global.API_SEND_MAIL_TO_REJECT;\r\nconst UPDATE_STATUS__EMERGENCY = environment.Global.API_UPDATE_STATUS__EMERGENCY;\r\n\r\n@Component({\r\n selector: 'app-proadmissemergapp',\r\n templateUrl: './proadmissemergapp.component.html',\r\n styleUrls: ['./proadmissemergapp.component.css']\r\n})\r\nexport class ProadmissemergappComponent extends BaseCrudComponent implements OnInit {\r\n userinfo;\r\n bandera_Activa_mensaje = true;\r\n isUpdating = false;\r\n isReject = false;\r\n nueva_lista = [];\r\n row_plantas:any;\r\n row_plantas_area:any;\r\n row_typejob:any;\r\n loadingRequired;\r\n row_emp:any; // lista que obtiene los trabajadores\r\n workerList = [];\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n async ngOnInit() {\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.pageSize = 5;\r\n this.page = 1;\r\n this.search_fields = ['EntryRequestId','Requiredby'];\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n await this.getList();\r\n }\r\n\r\n\r\n public async getList() {\r\n this.nueva_lista = [];\r\n var qst = GET_ALL_REQUEST ;\r\n this.loadingList = true;\r\n this.messageShowLoading();\r\n await this.srv.getCall(qst).toPromise().then(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n x.val.forEach(element => {\r\n if (element.Emergency && element.StatusConfirm === null) {\r\n this.nueva_lista.push(element)\r\n }\r\n });\r\n this.rawdata = this.nueva_lista\r\n this.rows = this.nueva_lista\r\n this.bandera_Activa_mensaje = true;\r\n // Swal.close();\r\n\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n this.bandera_Activa_mensaje = false;\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n Swal.fire(x.msg, '', 'error');\r\n this.closeLoadingMessage();\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public openUpdateModal(content, obj, size?) {\r\n this.GetTrabajadores();\r\n this.GetPlantas();\r\n this.c_obj = {};\r\n\r\n this.c_obj['date_init_work'] = obj.StartDate.split('T')[0];\r\n this.c_obj['date_final_work'] = obj.EndDte.split('T')[0];\r\n this.c_obj['job_order'] = obj.WorkOrder;\r\n this.c_obj['job_applicant'] = obj.Requiredby;\r\n this.c_obj['level'] = obj.PlantaID + '-' + obj.PlantaName;\r\n this.c_obj['job_area'] = obj.SeccionID + '-' + obj.SeccionName;\r\n this.c_obj['request_area'] = obj.Requiredbyarea;\r\n this.c_obj['work_description'] = obj.WorkDescription;\r\n this.c_obj['emergency'] = obj.Emergency || null;\r\n this.c_obj['comment_emergency'] = obj.Commentary || null;\r\n this.c_obj['who_responsable'] = obj.Responsable || '';\r\n this.c_obj['email_applicant'] = obj.MailRequiredby || '';\r\n this.c_obj['risk'] = obj.Risk;\r\n this.c_obj['worker'] = [];\r\n this.c_obj['EntryRequestId'] = obj.EntryRequestId;\r\n this.setLevelArea();\r\n console.log(obj);\r\n\r\n for (let w of obj.RequestDetails){\r\n this.c_obj['worker'].push({\r\n NameEmployee: w['EmployeeName'],\r\n NumberIdentification: w['NumberIdentification'],\r\n jobtitle: w['position'],\r\n globalparam_typejob: w['JobtypeName'],\r\n id_typejob: w['JobTypeID'],\r\n employeeId: w['EmployeeId']\r\n })\r\n }\r\n\r\n this.modalService.open(content, { backdrop: 'static', size: size });\r\n this.GetTypeJob().subscribe(x => {\r\n this.loadingRequired = false;\r\n if(x != false){\r\n this.row_typejob = x;\r\n }\r\n });\r\n }\r\n\r\n public GetPlantas() {\r\n var qst = GET_ALL_SITES_ACTIVE;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas = rs;\r\n }else {\r\n this.row_plantas = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public GetTrabajadores()\r\n {\r\n // var qst = this.read_url;\r\n if(isNumeric(this.userinfo.logon) )\r\n {\r\n this.read_url = GET_EMPLOYEES_BY_COMPANY + this.userinfo.selectedCompanyId;\r\n }\r\n else{\r\n this.read_url = GET_EMPLOYEES_ALL_COMPANY;\r\n }\r\n var qst = this.read_url;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.workerList = [];\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_emp = rs;\r\n for (let row of rs) {\r\n if ((row.Status_doc === 'VALIDADO' && row.Status_evaluation === 'APROBADO')) {\r\n row['status_Doc_Eval'] = 'HABILITADO';\r\n } else {\r\n row['status_Doc_Eval'] = 'NO HABILITADO';\r\n }\r\n this.workerList.push(row);\r\n }\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n }else {\r\n //Swal.fire('¡Vacio!', 'La consulta no devolvio registros', 'success');\r\n this.row_emp = [];\r\n return;\r\n }\r\n }else {\r\n //Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n public GetTypeJob()\r\n {\r\n var qst = GET_JOBS_TYPE;\r\n\r\n return this.srv.getCall(qst).pipe(\r\n mergeMap(data => {\r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n if(mydata.success == true ){\r\n return of(mydata.val);\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(false))\r\n );\r\n }\r\n\r\n public setLevelArea() {\r\n var qst = GET_ALL_AREA_BY_ID + this.c_obj['level'].split('-')[0];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n public onlyNumberKey(event: any): boolean {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n\r\n confirmSol(content, obj) {\r\n this.isUpdating = true;\r\n\r\n // console.log(content)\r\n // console.log(obj)\r\n\r\n let to = {\r\n \"EntryRequestId\": obj.EntryRequestId,\r\n \"StatusConfirm\": 'A',\r\n \"LastModifierUserSK\": this.userinfo.logon,\r\n \"Status\": 'A'\r\n }\r\n console.log(to)\r\n this.messageShowLoading();\r\n this.srv.postCall(UPDATE_STATUS__EMERGENCY, to).toPromise().then( data =>{\r\n if(data.success){\r\n this.sendMailEmergencyRequest(data.val, content);\r\n this.isUpdating = false;\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n }\r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = false;\r\n }\r\n );\r\n }\r\n\r\n\r\n rejectSol(content, obj) {\r\n this.isReject = true;\r\n let to = {\r\n \"EntryRequestId\": obj.EntryRequestId,\r\n \"StatusConfirm\": 'R',\r\n \"LastModifierUserSK\": this.userinfo.logon,\r\n \"Status\": 'E'\r\n }\r\n this.messageShowLoading();\r\n this.srv.postCall(UPDATE_STATUS__EMERGENCY, to).subscribe( data =>{\r\n if(data.success){\r\n this.sendMailToReject(data.val, content);\r\n this.confirmDialogWithModal(this.translations.sol_emergency_create_Qr,'','success',content);\r\n Swal.fire(this.translations.sol_emergency_reject_Qr, '','success');\r\n this.isReject = false;\r\n } else {\r\n this.isReject = false;\r\n Swal.fire(data.msg, '', 'error');\r\n }\r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isReject = false;\r\n });\r\n }\r\n\r\n sendMailEmergencyRequest(data:any, content){\r\n debugger\r\n var to:any;\r\n to = {};\r\n to = data;\r\n let qst = CREATE_QR_AND_SEND_EMAIL + to.EntryRequestId.toString();\r\n this.srv.postCall(qst ,to).subscribe(x => {\r\n this.c_obj = {};\r\n this.confirmDialogWithModal(this.translations.sol_emergency_create_Qr,'','success',content);\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n\r\n sendMailToReject (data: any, content) {\r\n let to: any = {};\r\n to = data;\r\n let qst = SEND_EMAIL_TO_REJECT;\r\n this.srv.postCall(qst ,to).subscribe(x => {\r\n this.c_obj = {};\r\n this.confirmDialogWithModal(this.translations.sol_emergency_create_Qr,'','success',content);\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'requested_by'| translate}}\r\n {{'job_order' | translate}}{{'job_to_do' | translate}}{{'date_init' | translate}}{{'date_end' | translate}}{{'status' | translate}}{{'action' | translate}}
{{row.EntryRequestId}}{{row.Requiredby}}{{row.WorkOrder}}{{row.WorkDescription}}{{row.StartDate.split('T')[0]}}{{row.EndDte.split('T')[0]}} \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n

{{'no_contain_request_emergency' | translate}}

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

{{'create_item' | translate}}

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

{{'job_data'| translate}}

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

{{'nametype' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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}}{{'ci' | translate}}{{'jobtitle'| translate}}{{'globalparam_typejob' | translate}}
{{parameter.NameEmployee}}{{parameter.NumberIdentification}}{{parameter.jobtitle}}{{parameter.globalparam_typejob}}
\r\n
\r\n
\r\n
\r\n
\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, ViewChild} from '@angular/core';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\n\r\nimport Swal from 'sweetalert2';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Global } from '../../../services/global';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { catchError, mergeMap } from 'rxjs/operators';\r\nimport { Cell, Columns, Img, Item, Line, PageReference, PdfMakeWrapper, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\nimport { of } from 'rxjs';\r\nimport {DomSanitizer, SafeUrl} from \"@angular/platform-browser\";\r\n//import { isNull } from 'util';\r\n\r\n// Set the fonts to use\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\nconst API_GET_EMPLOYEE_BY_COMPANY = environment.Global.API_GET_EMPLOYEE_BY_COMPANY;\r\nconst GET_EMPLOYEES_ALL_COMPANY = environment.Global.API_GET_EMPLOYEES_ALL_COMPANY;\r\nconst API_gET_EMPLOYEE_BY_IDENTIFICATIONREQUEST = environment.Global.API_gET_EMPLOYEE_BY_IDENTIFICATIONREQUEST;\r\n\r\n\r\nconst GET_JOBS_TYPE = environment.Global.API_GET_JOB_TYPE;\r\nconst GET_EMPLOYEE_BY_IDENTIFICATION = environment.Global.API_GET_EMPLOYEE_BY_IDENTIFICATION;\r\nconst GET_ALL_SITES_ACTIVE = environment.Global.API_GET_ALL_SITES_ACTIVE;\r\nconst GET_ALL_AREA_BY_ID = environment.Global.API_GET_ALL_AREA_BY_ID;\r\nconst UPDATE_ADMISSION_REQUEST = environment.Global.API_UPDATE_ADMISSION_REQUEST;\r\nconst CREATE_ADMISSION_REQUEST = environment.Global.API_CREATE_ADMISSION_REQUEST;\r\nconst SEND_EMAIL_ADMISSION_REQUEST = environment.Global.API_SEND_EMAIL_ADMISSION_REQUEST;\r\nconst GET_ALL_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst UPDATE_STATUS__ADMISSION_REQUEST = environment.Global.API_UPDATE_STATUS__ADMISSION_REQUEST;\r\nconst CREATE_QR_AND_SEND_EMAIL = environment.Global.API_CREATE_QR_AND_SEND_EMAIL;\r\nconst API_SEND_MAIL_TO_NOTIFIED_DURAGAS = environment.Global.API_SEND_MAIL_TO_NOTIFIED_DURAGAS;\r\nconst API_UPLOAD_FILE = environment.Global.API_UPLOAD_FILE_REQUEST;\r\nconst API_UPDATE_DOCUMENT: string = environment.Global.API_UPDATE_DOCUMENT;\r\nconst API_MAIA_EMAILAPPROVE = environment.Global.API_GET_MAIAEMAILADDRESS;\r\n\r\n@Component({\r\n selector: 'app-proadmissionapp',\r\n templateUrl: './proadmissionapp.component.html',\r\n styleUrls: ['./proadmissionapp.component.css']\r\n})\r\nexport class ProadmissionappComponent extends BaseCrudComponent implements OnInit {\r\n emergency_checked = false;\r\n viewFileInput = true;\r\n loadingList = true;\r\n userinfo:any;\r\n row_plantas:any;\r\n row_plantas_area:any;\r\n mostarselectemp;\r\n habilitar = false;\r\n isUpdating = false;\r\n isEmergency = false;\r\n loadingRequired = false;\r\n row_typejob:any;\r\n isSkretting = false;\r\n diffDate;\r\n listaPlantasUpdate = [];\r\n row_emp:any = []; // lista que obtiene los trabajadores\r\n workerList = [];\r\n workerFilteredHabilitated = [];\r\n worksListId = [];\r\n pageTotal2 = 0;\r\n page2 = 0;\r\n archivos = [];\r\n namefile = '';\r\n archivos2 = [];\r\n namefile2 = '';\r\n archivos3 = [];\r\n namefile3 = '';\r\n rutaArchivoAts: string = Global.API_GENERAL_URL.replace('api/','')+'Documents/Templates/Analisis_de_Trabajo_Seguro__ATS.xlsx';\r\n rutaArchivoMaia: string = Global.API_GENERAL_URL.replace('api/','')+'Documents/Templates/Matriz_de_Aspectos_e_Impactos_Ambientales.xlsx';\r\n disableImput: boolean = false;\r\n profileU: any;\r\n urlFinalReport: SafeUrl;\r\n urlFieldReport: SafeUrl;\r\n urlATS: SafeUrl;\r\n urlMAIA: SafeUrl;\r\n havePending: boolean = false;\r\n currentUserIdApproves = [];\r\n comparetoemail=[];\r\n maia_Email: any;\r\n joblist = [];\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n private sanitizer: DomSanitizer,\r\n public translate: TranslateService\r\n ) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n async ngOnInit() {\r\n // console.log(environment.Global.API_GET_ALL_TOOLS)\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n // this.getList();\r\n });\r\n this.pageSize = 5;\r\n this.pageSize2 = 5;\r\n this.search_fields = ['EntryRequestId','Requiredby'];\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n if( isNumeric( this.userinfo.logon) ) {\r\n this.mostarselectemp = false;\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n this.getList();\r\n this.GetPlantas();\r\n this.EmailsMaia();\r\n });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.GetTrabajadores();\r\n this.GetPlantas();\r\n this.c_obj = {};\r\n this.c_obj['worker'] = [];\r\n this.c_obj['emergency'] = false;\r\n this.c_obj['comment_emergency'] = '';\r\n this.c_obj['email_applicant'] = '';\r\n this.c_obj['level'] = null;\r\n this.modalService.open(content, { backdrop: 'static', size: 'lg', keyboard: false });\r\n this.GetTypeJob().subscribe(x => {\r\n this.loadingRequired = false;\r\n if(x != false){\r\n this.row_typejob = x;\r\n }\r\n });\r\n }\r\n\r\n public check_risk() {\r\n // console.log(this.isEmergency)\r\n\r\n }\r\n\r\n public getList() {\r\n var qst = \"\" ;\r\n this.loadingList = true;\r\n\r\n if(isNumeric(this.userinfo.logon) )\r\n {\r\n qst = GET_ALL_REQUEST_BY_COMPANY_ID + this.userinfo.selectedCompanyId;\r\n this.habilitar=true;\r\n }\r\n else{\r\n qst = GET_ALL_REQUEST;\r\n this.habilitar=false;\r\n }\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){//debugger;\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n //console.log(this.rows)\r\n this.havePending = this.rows.some(row => row.UrlFinalReport === null);\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg,'','success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n // this.messageDialog(x.msg,'','error');\r\n this.closeLoadingMessage();\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public validateCreateInfo(fields:any): boolean {\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'date_init_work': new FormControl(fields.date_init_work, [Validators.required]),\r\n 'date_final_work': new FormControl(fields.date_final_work, [Validators.required]),\r\n 'job_order': new FormControl(fields.job_order, [Validators.required]),\r\n 'job_applicant': new FormControl(fields.job_applicant, [Validators.required]),\r\n 'level': new FormControl(fields.level, [Validators.required]),\r\n 'work_description': new FormControl(fields.work_description, [Validators.required]),\r\n 'job_area': new FormControl(fields.job_area, [Validators.required]),\r\n 'request_area': new FormControl(fields.request_area, [Validators.required]),\r\n 'jobs': new FormControl(fields.jobs),\r\n 'email_applicant': new FormControl(fields.email_applicant, [Validators.required]),\r\n\r\n });\r\n return mygroup.valid;\r\n }\r\n\r\n public GetTypeJob()\r\n {\r\n var qst = GET_JOBS_TYPE;\r\n\r\n return this.srv.getCall(qst).pipe(\r\n mergeMap(data => {\r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n if(mydata.success == true ){\r\n return of(mydata.val);\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(false))\r\n );\r\n }\r\n\r\n public verifyDateEnd() {\r\n if (this.c_obj['date_init_work'] === undefined ) {\r\n ( document.getElementById(\"fechaFinal\")).value = \"\";\r\n return Swal.fire(this.translations.error,this.translations.msg_not_found_date_init, 'error');\r\n }\r\n const date_init = new Date(this.c_obj['date_init_work']);\r\n const date_end = new Date(this.c_obj['date_final_work']);\r\n this.diffDate = (date_end.getTime() - date_init.getTime()) / 86400000;\r\n if (date_init > date_end ){\r\n ( document.getElementById(\"fechaFinal\")).value = \"\";\r\n return Swal.fire(this.translations.error,this.translations.msg_date_end_max, 'error');\r\n }\r\n\r\n // if (this.diffDate > 7 ){\r\n // return Swal.fire(this.translations.error,this.translations.msg_max_ranges_dates, 'error');\r\n // }\r\n\r\n\r\n }\r\n\r\n public goToToolList(obj) {\r\n let entryRequestId = obj.EntryRequestId;\r\n this.router.navigate(['regtoolsequipment/'],{ queryParams: { id: entryRequestId}});\r\n }\r\n\r\n public goToWorkRequest(obj) {\r\n let entryRequestId = obj.EntryRequestId;\r\n this.router.navigate(['repocreator/'],{ queryParams: { id: entryRequestId}});\r\n }\r\n\r\n public async createItem(content:any, form:any){\r\n this.isCreating = true;\r\n var validated = true;\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n validated = this.validateCreateInfo(form);\r\n // if (this.diffDate > 7 ){\r\n // this.isCreating = false;\r\n // return Swal.fire(this.translations.error,this.translations.msg_max_ranges_dates, 'error');\r\n // }\r\n if( !validated ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n if(form['emergency']){\r\n if(form['comment_emergency'] == \"\" || (form['who_responsable'] == undefined || form['who_responsable'] == null)) {\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n }\r\n if (this.c_obj['worker'].length == 0) {\r\n this.isCreating = false;\r\n return Swal.fire(this.translations.error, this.translations.msg_worker_required,'error');\r\n }\r\n let array_jobs = [];\r\n for (let obj of form['worker']) {\r\n let jobs = {\r\n EmployeeId : obj['employeeId'],\r\n JobTypeID : obj['id_typejob']\r\n }\r\n array_jobs.push(jobs);\r\n }\r\n let CompanyID = 0;\r\n if (this.isSkretting) {\r\n CompanyID = 30;\r\n } else {\r\n CompanyID = this.userinfo.selectedCompanyId;\r\n }\r\n\r\n let new_request = {\r\n StartDate: form['date_init_work'],\r\n EndDte: form['date_final_work'],\r\n Status: \"A\",\r\n CreatorUser: this.userinfo['logon'],\r\n CompanyID: CompanyID,\r\n Risk: form['risk'] || false,\r\n Emergency: form['emergency'] || false,\r\n Commentary: form['comment_emergency'] || '',\r\n Responsable: form['who_responsable'] || '',\r\n Requiredby: form['job_applicant'],\r\n MailRequiredby: form['email_applicant'],\r\n WorkOrder: form['job_order'],\r\n WorkDescription: form['work_description'],\r\n PlantaID: form['level'].split('-')[0],\r\n SeccionID: form['job_area'].split('-')[0],\r\n Requiredbyarea: form['request_area'],\r\n EntryRequestDetails: array_jobs,\r\n }\r\n // console.log(new_request)\r\n let url_create = CREATE_ADMISSION_REQUEST;\r\n await this.srv.postCall(url_create, new_request).toPromise().then( async data =>{\r\n if(data.success){\r\n // console.log(data);\r\n this.c_obj = {};debugger;\r\n await this.uploadFile(data.val, content);\r\n if (!new_request.Emergency) {\r\n //await this.SendMail(data);\r\n await this.SendMailToNotified(data);\r\n Swal.fire(this.translations.msg_create, '', 'success');\r\n this.isCreating = false;\r\n } else {\r\n await this.SendMailToNotified(data);\r\n //await this.SendMail(data)\r\n Swal.fire(this.translations.msg_create, this.translations.entry_request_created_to_notified, 'success');\r\n this.isCreating = false;\r\n }\r\n this.getList();\r\n this.closeModal(content);\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n }\r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isCreating = false;\r\n });\r\n\r\n }\r\n\r\n public async SendMail(data:any){\r\n var to:any;\r\n to = {};\r\n to = data;\r\n let qst = CREATE_QR_AND_SEND_EMAIL + to.EntryRequestId.toString();//val.\r\n await this.srv.postCall(qst ,to).toPromise().then(x => {//.val\r\n this.isCreating = false;\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public async SendMailToNotified(data:any){\r\n var to:any;\r\n to = {};\r\n to = data;\r\n let qst = API_SEND_MAIL_TO_NOTIFIED_DURAGAS;\r\n await this.srv.postCall(qst ,to.val).toPromise().then(x => {\r\n this.isCreating = false;\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public onlyNumberKey(event: any): boolean {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n\r\n public GetTrabajadores()\r\n {\r\n if(isNumeric(this.userinfo.logon) )\r\n {\r\n this.read_url = API_GET_EMPLOYEE_BY_COMPANY + this.userinfo.selectedCompanyId;\r\n }else if(!isNumeric(this.userinfo.logon)){\r\n this.read_url = API_GET_EMPLOYEE_BY_COMPANY + this.userinfo.selectedCompanyId;\r\n }\r\n else{\r\n this.read_url = GET_EMPLOYEES_ALL_COMPANY;\r\n }\r\n var qst = this.read_url;\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.workerList = [];\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_emp = rs;\r\n this.messageDialog(x.msg, '' ,'success');\r\n for (let row of rs) {\r\n if (row.Status_faltas === 'SI') {\r\n row['status_Doc_Eval'] = 'SUSPENDIDO';\r\n } else if ((row.Status_doc === 'VALIDADO' && row.Status_evaluation === 'APROBADO')) {\r\n row['status_Doc_Eval'] = 'HABILITADO';\r\n } else if ((row.Status_doc != 'VALIDADO' || row.Status_evaluation != 'APROBADO')) {\r\n row['status_Doc_Eval'] = 'NO HABILITADO';\r\n }\r\n this.workerList.push(row);\r\n }\r\n this.page2 = 1;\r\n if( Array.isArray(this.row_emp) ){\r\n this.pageTotal2 = this.row_emp.length;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'success');\r\n this.row_emp = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'error');\r\n return;\r\n }\r\n console.log(this.workerList);\r\n // x.val[0]['Status_doc']!='VALIDADO' || x.val[0]['Status_evaluation']!='APROBADO'|| x.val[0]['Status_faltas']!='NO'\r\n //TODO: IMPLEMENTAR METODO PARA LLENAR AUTOMATICAMENTE LOS DATOS DEL EMPLEADO SELECCIONAR LOS DATOS POR LA IDENTIFICACION\r\n this.workerFilteredHabilitated = this.workerList.filter(x => x.status_Doc_Eval !== \"NO HABILITADO\");\r\n console.log(this.workerFilteredHabilitated);\r\n });\r\n }\r\n\r\n public setChecked(event) {\r\n if (event.target.checked) {\r\n this.c_obj['emergency'] = true;\r\n } else {\r\n this.c_obj['emergency'] = false;\r\n this.c_obj['comment_emergency'] = null\r\n this.c_obj['who_responsable'] = null;\r\n }\r\n }\r\n\r\n\r\n public addParameter(obj){\r\n let exists = obj['worker'].filter(f => {\r\n return (f.NumberIdentification === obj['NumberIdentification']);\r\n });\r\n if(exists.length > 0)\r\n {\r\n this.c_obj['NumberIdentification'] = null;\r\n this.c_obj['NameEmployee'] = null;\r\n this.c_obj['Email'] = null;\r\n this.c_obj['position'] = null;\r\n return Swal.fire(this.translations.error, this.translations.identificaction_repeated,'error');\r\n }\r\n if (this.userinfo.typeCompany == 1) {\r\n if (obj['worker'].length === 0) {\r\n obj['worker'].push(\r\n {\r\n NameEmployee: obj['NameEmployee'],\r\n NumberIdentification: obj['NumberIdentification'],\r\n jobtitle: obj['position'],\r\n globalparam_typejob: obj['jobs'].split('-')[1],//\"Conductor\",\r\n id_typejob: \"6\",\r\n employeeId: obj['EmployeeId'],\r\n emergency: this.c_obj['emergency'] ? true: false\r\n }\r\n );\r\n } else {\r\n let count = 0;\r\n let typeEmergency = '';\r\n for (let element of obj['worker']) {\r\n if (element.emergency !== this.c_obj['emergency']) {\r\n count ++;\r\n typeEmergency = element.emergency ? this.translations.emergency: this.translations.no_emergency;\r\n break;\r\n }\r\n }\r\n if (count > 0) {\r\n this.c_obj['NumberIdentification'] = null;\r\n this.c_obj['NameEmployee'] = null;\r\n this.c_obj['Email'] = null;\r\n this.c_obj['position'] = null;\r\n return Swal.fire(\r\n this.translations.error_creation_proadd,\r\n this.translations.cant_create_distinct_pro_add,\r\n 'error');\r\n } else {\r\n obj['worker'].push(\r\n {\r\n NameEmployee: obj['NameEmployee'],\r\n NumberIdentification: obj['NumberIdentification'],\r\n jobtitle: obj['position'],\r\n globalparam_typejob: obj['jobs'].split('-')[1],\r\n id_typejob: \"6\",\r\n employeeId: obj['EmployeeId'],\r\n emergency: this.c_obj['emergency']\r\n }\r\n );\r\n }\r\n }\r\n /*if( obj['jobs'] == undefined || obj['jobs'] == null || obj['jobs'] == ''){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n // SE BUSCA SI EXISTE EL TIPO DE TRABAJO PARA ESE EMPLEADO\r\n if (obj['listWorksIdEmp'].indexOf(obj['jobs']) === -1) {\r\n if (obj['listWorksIdEmp'].length === 1) {\r\n return Swal.fire(this.translations.Error_Type_Job, this.translations.Type_job_habilitate + `:
${obj['listWorksIdEmp'][0].split('-')[1]}`, 'error')\r\n } else {\r\n let works = '';\r\n for (let x of obj['listWorksIdEmp']) {\r\n works = works + x.split('-')[1] + ',';;\r\n }\r\n return Swal.fire(this.translations.Error_Type_Job, this.translations.Type_job_habilitate + `:
${works.slice(0, -1)}`, 'error')\r\n }\r\n }\r\n\r\n let worker_type = obj['jobs'].split('-');\r\n if (obj['worker'].length === 0) {\r\n obj['worker'].push(\r\n {\r\n NameEmployee: obj['NameEmployee'],\r\n NumberIdentification: obj['NumberIdentification'],\r\n jobtitle: obj['position'],\r\n globalparam_typejob: worker_type[1],\r\n id_typejob: worker_type[0],\r\n employeeId: obj['EmployeeId'],\r\n emergency: this.c_obj['emergency'] ? true: false\r\n }\r\n );\r\n } else {\r\n let count = 0;\r\n let typeEmergency = '';\r\n for (let element of obj['worker']) {\r\n if (element.emergency !== this.c_obj['emergency']) {\r\n count ++;\r\n typeEmergency = element.emergency ? this.translations.emergency: this.translations.no_emergency;\r\n break;\r\n }\r\n }\r\n // console.log(count)\r\n if (count > 0) {\r\n this.c_obj['NumberIdentification'] = null;\r\n this.c_obj['NameEmployee'] = null;\r\n this.c_obj['Email'] = null;\r\n this.c_obj['position'] = null;\r\n return Swal.fire(\r\n this.translations.error_creation_proadd,\r\n this.translations.cant_create_distinct_pro_add,\r\n 'error');\r\n } else {\r\n obj['worker'].push(\r\n {\r\n NameEmployee: obj['NameEmployee'],\r\n NumberIdentification: obj['NumberIdentification'],\r\n jobtitle: obj['position'],\r\n globalparam_typejob: worker_type[1],\r\n id_typejob: worker_type[0],\r\n employeeId: obj['EmployeeId'],\r\n emergency: this.c_obj['emergency']\r\n }\r\n );\r\n }\r\n }*/\r\n } else if (this.userinfo.typeCompany == 2) {\r\n if (obj['worker'].length === 0) {\r\n obj['worker'].push(\r\n {\r\n NameEmployee: obj['NameEmployee'],\r\n NumberIdentification: obj['NumberIdentification'],\r\n jobtitle: obj['position'],\r\n globalparam_typejob: \"Conductor\",\r\n id_typejob: \"6\",\r\n employeeId: obj['EmployeeId'],\r\n emergency: this.c_obj['emergency'] ? true: false\r\n }\r\n );\r\n } else {\r\n let count = 0;\r\n let typeEmergency = '';\r\n for (let element of obj['worker']) {\r\n if (element.emergency !== this.c_obj['emergency']) {\r\n count ++;\r\n typeEmergency = element.emergency ? this.translations.emergency: this.translations.no_emergency;\r\n break;\r\n }\r\n }\r\n if (count > 0) {\r\n this.c_obj['NumberIdentification'] = null;\r\n this.c_obj['NameEmployee'] = null;\r\n this.c_obj['Email'] = null;\r\n this.c_obj['position'] = null;\r\n return Swal.fire(\r\n this.translations.error_creation_proadd,\r\n this.translations.cant_create_distinct_pro_add,\r\n 'error');\r\n } else {\r\n obj['worker'].push(\r\n {\r\n NameEmployee: obj['NameEmployee'],\r\n NumberIdentification: obj['NumberIdentification'],\r\n jobtitle: obj['position'],\r\n globalparam_typejob: \"Conductor\",\r\n id_typejob: \"6\",\r\n employeeId: obj['EmployeeId'],\r\n emergency: this.c_obj['emergency']\r\n }\r\n );\r\n }\r\n }\r\n }\r\n this.c_obj['NumberIdentification'] = null;\r\n this.c_obj['NameEmployee'] = null;\r\n this.c_obj['Email'] = null;\r\n this.c_obj['position'] = null;\r\n // console.log(obj['worker'])\r\n }\r\n\r\n public delParameter(obj:any, position:number): void{\r\n obj['worker'].splice(position, 1);\r\n\r\n }\r\n\r\n\r\n public GetEmployeeforIdentification(obj:any,val:any)\r\n {\r\n this.c_obj['listWorksIdEmp'] = [];\r\n var qst = \"Employee/GetIdentification/\" + obj;\r\n if (obj === \"\")\r\n {\r\n return;\r\n }\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n this.messageDialog(x.msg, '' ,'success');\r\n if (this.c_obj['emergency']) {\r\n this.c_obj['NumberIdentification'] = x.val[0]['NumberIdentification'];\r\n this.c_obj['NameEmployee'] = x.val[0]['Name'];\r\n this.c_obj['position'] = x.val[0]['position'];\r\n this.c_obj['EmployeeId'] = x.val[0]['EmployeeId'];\r\n this.c_obj['Email'] = x.val[0]['Email'];\r\n for (let object of x.val[0]['_JobTypeEmployee']) {\r\n this.c_obj['listWorksIdEmp'].push(object.JobTypeID.toString() + '-'+ object.Name);\r\n };\r\n } else {\r\n if (x.val[0]['Status_doc']!='VALIDADO' || x.val[0]['Status_evaluation']!='APROBADO'|| x.val[0]['Status_faltas']!='NO' )\r\n {\r\n Swal.fire(this.translations.error, this.translations.msg_hability_request_approval + \" \" + this.translations.approvals, 'error');\r\n this.c_obj['NumberIdentification'] = \"\";\r\n this.c_obj['NameEmployee'] = \"\";\r\n this.c_obj['position'] = \"\";\r\n this.c_obj['EmployeeId'] = \"\";\r\n this.c_obj['listWorksIdEmp'] = [];\r\n return;\r\n } else {\r\n this.c_obj['NumberIdentification'] = x.val[0]['NumberIdentification'];\r\n this.c_obj['NameEmployee'] = x.val[0]['Name'];\r\n this.c_obj['position'] = x.val[0]['position'];\r\n this.c_obj['EmployeeId'] = x.val[0]['EmployeeId'];\r\n this.c_obj['Email'] = x.val[0]['Email'];\r\n for (let object of x.val[0]['_JobTypeEmployee']) {\r\n this.c_obj['listWorksIdEmp'].push(object.JobTypeID.toString() + '-'+ object.Name);\r\n };\r\n }\r\n }\r\n } else {\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '' ,'error');\r\n return;\r\n }\r\n });\r\n\r\n\r\n }\r\n\r\n public GetPlantas() {\r\n var qst = GET_ALL_SITES_ACTIVE;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas = rs;\r\n }else {\r\n this.row_plantas = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public setLevelArea() {\r\n if (this.c_obj['level'] !== null) {\r\n var qst = GET_ALL_AREA_BY_ID + this.c_obj['level'].split('-')[0];\r\n this.srv.getCall(qst).subscribe(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas_area = rs;\r\n }else {\r\n this.row_plantas_area = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n } else {\r\n this.c_obj['job_area'] = null;\r\n }\r\n }\r\n\r\n public toggleEditable( event,EntryRequestId) {\r\n\r\n if ( event.target.checked ) {\r\n this.ActivarItem(EntryRequestId,1);\r\n }else {\r\n this.ActivarItem(EntryRequestId,2);\r\n\r\n }\r\n }\r\n\r\n public ActivarItem(id:any, accion:any): void\r\n {\r\n var to:any;\r\n to = {};\r\n to.EntryRequestId = id;\r\n to.Status = accion;\r\n to.LastModifierUser = this.userinfo['userId'];\r\n this.srv.postCall(UPDATE_STATUS__ADMISSION_REQUEST, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n public deleteItem(obj:any): void {\r\n // console.log(obj);\r\n this.ActivarItem(obj.EntryRequestId,3);\r\n }\r\n\r\n public downloadQR(infoRequest) {\r\n // console.log(infoRequest);\r\n }\r\n\r\n public openUpdateModal(content, obj, size?) {\r\n this.GetTrabajadores();\r\n this.GetPlantas();\r\n //console.log(this.row_plantas);\r\n this.EmailsMaia();\r\n console.log(this.maia_Email);\r\n this.profileU = this.userinfo.ProfileID;debugger;\r\n this.c_obj = {};\r\n\r\n this.c_obj['date_init_work'] = obj.StartDate.split('T')[0];\r\n this.c_obj['date_final_work'] = obj.EndDte.split('T')[0];\r\n this.c_obj['job_order'] = obj.WorkOrder;\r\n this.c_obj['CompanyName'] = obj.CompanyName;\r\n this.c_obj['job_applicant'] = obj.Requiredby;\r\n this.c_obj['level'] = obj.PlantaID + '-' + obj.PlantaName;\r\n this.c_obj['job_area'] = obj.SeccionID + '-' + obj.SeccionName;\r\n this.c_obj['request_area'] = obj.Requiredbyarea;\r\n this.c_obj['work_description'] = obj.WorkDescription;\r\n this.c_obj['emergency'] = obj.Emergency || null;\r\n this.c_obj['comment_emergency'] = obj.Commentary || null;\r\n this.c_obj['who_responsable'] = obj.Responsable || '';\r\n this.c_obj['WorkActivities'] = obj.WorkActivities;\r\n this.c_obj['ToolsAndKits'] = obj.ToolsAndKits;\r\n this.c_obj['email_applicant'] = obj.MailRequiredby || '';\r\n this.c_obj['risk'] = obj.Risk;\r\n this.c_obj['worker'] = [];\r\n this.c_obj['EntryRequestId'] = obj.EntryRequestId;\r\n this.c_obj['UrlATS'] = obj.UrlATS;\r\n this.c_obj['UrlMAIA'] = obj.UrlMAIA;\r\n this.c_obj['ValidATS'] = obj.ValidATS;\r\n this.c_obj['ValidMAIA'] = obj.ValidMAIA;\r\n\r\n if (obj && obj['UrlATS']) {\r\n const indice = obj.UrlATS.indexOf('Documents');\r\n if (indice !== -1) {\r\n var rutaDesdeDocuments = obj.UrlATS.substring(indice);\r\n this.urlATS = Global.API_GENERAL_URL.replace('api/','')+rutaDesdeDocuments;\r\n }\r\n }\r\n if (obj && obj['UrlMAIA']) {\r\n const indice = obj.UrlMAIA.indexOf('Documents');\r\n if (indice !== -1) {\r\n var rutaDesdeDocuments = obj.UrlMAIA.substring(indice);\r\n this.urlMAIA = Global.API_GENERAL_URL.replace('api/','')+rutaDesdeDocuments;\r\n }\r\n }\r\n\r\n this.setLevelArea();\r\n // console.log(obj);\r\n // console.log(this.c_obj)\r\n for (let w of obj.RequestDetails){\r\n this.c_obj['worker'].push({\r\n NameEmployee: w['EmployeeName'],\r\n NumberIdentification: w['NumberIdentification'],\r\n jobtitle: w['position'],\r\n globalparam_typejob: w['JobtypeName'],\r\n id_typejob: w['JobTypeID'],\r\n employeeId: w['EmployeeId'],\r\n emergency: obj.Emergency\r\n })\r\n }\r\n this.currentUserIdApproves = this.row_plantas.find(x => x.PlantaID === obj.PlantaID).UserIdApprovers;debugger;\r\n //this.comparetoemail = this.maia_Email.some(x => x.field === this.userinfo.emailAddress).datamail;\r\n this.comparetoemail = this.maia_Email.some(item => item === this.userinfo.emailAddress);\r\n console.log(this.comparetoemail);debugger;\r\n this.modalService.open(content, { backdrop: 'static', size: 'lg', keyboard: false });\r\n this.GetTypeJob().subscribe(x => {\r\n this.loadingRequired = false;\r\n if(x != false){\r\n this.row_typejob = x;\r\n }\r\n });\r\n }\r\n //openUploadFinalReportModal\r\n public openUploadFinalReportModal(content, obj, size?) {\r\n //this.GetTrabajadores();\r\n this.GetPlantas();\r\n this.profileU = this.userinfo.ProfileID;\r\n this.c_obj = {};\r\ndebugger;\r\n this.c_obj['date_init_work'] = obj.StartDate.split('T')[0];\r\n this.c_obj['date_final_work'] = obj.EndDte.split('T')[0];\r\n this.c_obj['job_order'] = obj.WorkOrder;\r\n this.c_obj['CompanyName'] = obj.CompanyName;\r\n this.c_obj['job_applicant'] = obj.Requiredby;\r\n this.c_obj['level'] = obj.PlantaID + '-' + obj.PlantaName;\r\n this.c_obj['job_area'] = obj.SeccionID + '-' + obj.SeccionName;\r\n this.c_obj['request_area'] = obj.Requiredbyarea;\r\n this.c_obj['work_description'] = obj.WorkDescription;\r\n this.c_obj['emergency'] = obj.Emergency || null;\r\n this.c_obj['comment_emergency'] = obj.Commentary || null;\r\n this.c_obj['who_responsable'] = obj.Responsable || '';\r\n this.c_obj['WorkActivities'] = obj.WorkActivities;\r\n this.c_obj['ToolsAndKits'] = obj.ToolsAndKits;\r\n this.c_obj['email_applicant'] = obj.MailRequiredby || '';\r\n this.c_obj['risk'] = obj.Risk;\r\n this.c_obj['worker'] = [];\r\n this.c_obj['EntryRequestId'] = obj.EntryRequestId;\r\n this.c_obj['UrlATS'] = obj.UrlATS;\r\n this.c_obj['UrlMAIA'] = obj.UrlMAIA;\r\n this.c_obj['ValidATS'] = obj.ValidATS;\r\n this.c_obj['ValidMAIA'] = obj.ValidMAIA;\r\n this.c_obj['UrlFinalReport'] = obj.UrlFinalReport;\r\n if (obj && obj['UrlFinalReport']) {\r\n const indice = obj.UrlFinalReport.indexOf('Documents');\r\n if (indice !== -1) {\r\n var rutaDesdeDocuments = obj.UrlFinalReport.substring(indice);\r\n this.urlFinalReport = Global.API_GENERAL_URL.replace('api/','')+rutaDesdeDocuments;\r\n }\r\n }\r\n this.c_obj['UrlFieldReport'] = obj.UrlFieldReport;\r\n if (obj && obj['UrlFieldReport']) {\r\n const indice = obj.UrlFieldReport.indexOf('Documents');\r\n if (indice !== -1) {\r\n var rutaDesdeDocuments = obj.UrlFieldReport.substring(indice);\r\n this.urlFieldReport = Global.API_GENERAL_URL.replace('api/','')+rutaDesdeDocuments;\r\n }\r\n }\r\n this.c_obj['ValidFinal'] = obj.ValidFinal;\r\n this.setLevelArea();\r\n // console.log(obj);\r\n // console.log(this.c_obj)\r\n for (let w of obj.RequestDetails){\r\n this.c_obj['worker'].push({\r\n NameEmployee: w['EmployeeName'],\r\n NumberIdentification: w['NumberIdentification'],\r\n jobtitle: w['position'],\r\n globalparam_typejob: w['JobtypeName'],\r\n id_typejob: w['JobTypeID'],\r\n employeeId: w['EmployeeId'],\r\n emergency: obj.Emergency\r\n })\r\n }\r\n\r\n this.modalService.open(content, { backdrop: 'static', size: 'lg', keyboard: false });\r\n /*this.GetTypeJob().subscribe(x => {\r\n this.loadingRequired = false;\r\n if(x != false){\r\n this.row_typejob = x;\r\n }\r\n });*/\r\n }\r\n\r\n public updateItem(modal, form) {\r\n this.isUpdating = true;\r\n if(form == undefined ){\r\n form = {};\r\n }\r\n\r\n if (form['email_applicant'] == '') {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n if(form['emergency']){\r\n if(form['comment_emergency'] == \"\" || form['who_responsable'] == '' ) {\r\n this.isUpdating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n }\r\n\r\n let array_jobs = [];\r\n for (let obj of form['worker']) {\r\n let jobs = {\r\n EmployeeId : obj['employeeId'],\r\n JobTypeID : obj['id_typejob']\r\n }\r\n array_jobs.push(jobs);\r\n };\r\n // console.log(form);\r\n let new_request = {\r\n StartDate: form['date_init_work'],\r\n EndDte: form['date_final_work'],\r\n Status: isNumeric(this.userinfo.logon)? \"2\":\"1\",\r\n CreatorUser: this.userinfo['logon'],\r\n CompanyID: this.userinfo.selectedCompanyId,\r\n Risk: form['risk'] || false,\r\n Emergency: form['emergency'] || false,\r\n Commentary: form['comment_emergency'] || '',\r\n Responsable: form['who_responsable'] || '',\r\n Requiredby: form['job_applicant'],\r\n WorkOrder: form['job_order'],\r\n WorkDescription: form['work_description'],\r\n PlantaID: form['level'].split('-')[0],\r\n SeccionID: form['job_area'].split('-')[0],\r\n Requiredbyarea: form['request_area'],\r\n EntryRequestDetails: array_jobs,\r\n EntryRequestId: form['EntryRequestId'],\r\n MailRequiredby: form['email_applicant'],\r\n // UrlATS: form['UrlATS'],\r\n // UrlMAIA: form['UrlMAIA'],\r\n ValidATS: form['ValidATS'],\r\n ValidMAIA: form['ValidMAIA']\r\n }\r\n console.log(new_request);debugger;\r\n\r\n if (this.isSkretting) {\r\n new_request.Status = '2';\r\n if ((new_request.Emergency) && ((new_request.Commentary===null))) {\r\n this.isUpdating = false;\r\n return Swal.fire(this.translations.error, this.translations.msg_set_comments_person, 'error');\r\n }\r\n } else {\r\n new_request.Status = '1';\r\n }\r\n\r\n this.srv.postCall(UPDATE_ADMISSION_REQUEST, new_request).toPromise().then( data =>{\r\n if(data.success){\r\n this.c_obj = {};\r\n this.closeModal(modal);\r\n Swal.fire(this.translations.msg_update, '', 'success');\r\n this.isUpdating = false;\r\n this.getList();\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n }\r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = false;\r\n });\r\n }\r\n\r\n async dowloadRiskEvaluation(row){\r\n // console.log(row)\r\n if (row.Emergency && (row.StatusConfirm===null)) {\r\n return Swal.fire(this.translations.request_emergency_is_null, '' , 'error');\r\n }\r\n\r\n let value = false;\r\n await Swal.fire({title:this.translations.Document_risk,text: this.translations.more_activities, icon: 'info', confirmButtonText: 'OK'})\r\n\r\n //lISTA DE TRABAJADORES\r\n let lista_trabajadores = this.convertDataToRow(row)\r\n const pdf = new PdfMakeWrapper();\r\n // INFORMATION IN TITLE NAV\r\n pdf.info({\r\n title: 'Evaluación de Riesgo',\r\n author: `${row.Lt_Supervisor}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: 10,\r\n alignment:'justify'\r\n });\r\n pdf.pageMargins([ 40, 75, 40, 60]);\r\n //PERMISIONS\r\n // pdf.permissions('Nutreco2021', {\r\n // printing: 'highResolution',\r\n // copying: false,\r\n // modifying: false,\r\n // annotating: true,\r\n // fillingForms: true,\r\n // documentAssembly: true,\r\n // contentAccessibility: true\r\n // })\r\n pdf.header(await\r\n new Img('../../../../assets/images/duragas_logo.svg')\r\n .width('75')\r\n //.alignment(\"right\")\r\n .margin(20)\r\n .build()\r\n )\r\n\r\n // ENCABEZADO DE DOCUMENTO DE EVALUACION DE RIESGO\r\n pdf.add(new Txt('ANALISIS DE TAREAS DE RIESGO').fontSize(14).bold().margin([0,0,0,20]).alignment('center')['end']);\r\n // pdf.add(new Columns([new Columns([ new Txt('Actividad:').bold().end, row.WorkDescription]).end , '' ]).end);\r\n pdf.add(new Columns([ new Txt('Actividad:').bold().width(60).end, row.WorkDescription]).end);\r\n pdf.add(new Columns([new Columns([ new Txt('Elaborado por:').width(75).bold().end, row.Requiredby ]).end , new Columns([ new Txt('Area:').width(60).bold().end, row.SeccionName ]).end ]).end);\r\n pdf.add(new Columns([new Columns([ new Txt('Cargo:').width(60).bold().end, '' ]).end , new Columns([ new Txt('SubArea:').width(60).bold().end, row.Requiredbyarea ]).end ]).end);\r\n pdf.add(new Columns([new Columns([ new Txt('Compañia:').width(60).bold().end, row.CompanyName ]).end , new Columns([ new Txt('Fecha:').width(60).bold().end, row.StartDate.split('T')[0] ]).end ]).end);\r\n\r\n // CUERPO DE DOCUMENTO DE EVALUACION DE RIESGO\r\n pdf.add(\r\n [\r\n new Table([\r\n [\r\n new Cell( new Stack([ new Txt('Paso a paso').bold().end, new Txt('(¿Qué se va a hacer?, Hace una descripción ordenada de todas las actividades que se requieren para realizar correctamente la tarea)').fontSize(7).end]).end ).end,\r\n new Cell( new Stack([ new Txt('Peligro - consecuencia').bold().end, new Txt('(Característica inherente al medio que puede generar una lesión y/ó daño ambiental) ').fontSize(7).end]).end ).end,\r\n new Cell( new Stack([ new Table([[new Cell(new Txt('Evaluación').bold().end).border([false,false,false,true]).end]]).widths([90]).layout({defaultBorder:false}).end ,new Table([[new Cell(new Txt('Pr').end).border([false,false,true,false]).end,new Cell(new Txt('Sv').end).border([false,false,true,false]).end,new Cell(new Txt('Riesgo Pr * Sv').end).end]]).widths([22,22,30]).layout({defaultBorder:false}).end]).end ).end,\r\n new Cell( new Stack([ new Txt('Controles Aplicables').bold().end, new Txt('(Qué medidas se tomaran para evitar que algo salga mal o falle?)').fontSize(7).end]).end ).end,\r\n new Cell( new Stack([ new Txt('EPP').bold().end, new Txt('(Descripción de los equipos de protección aplicables para la actividad a realizar) ').fontSize(7).end]).end ).end\r\n ],\r\n ...this.getRowsTable(5)\r\n\r\n ])\r\n .alignment(\"center\")\r\n .widths([95,95,100,90,90])\r\n .margin([0,20,0,20]).end,\r\n new Columns([new Columns([ new Txt('Elaborado por:').bold().end, '____________________' ]).end , new Columns([ new Txt('Aprobado por (Nutreco):').bold().end, '____________________' ]).end ]).margin([0,0,0,15]).end,\r\n new Columns([new Columns([ new Txt('Fecha:').bold().end, '____________________' ]).end , new Columns([ new Txt('Fecha:').bold().end, '____________________' ]).end ]).end,\r\n\r\n new Table([\r\n [\r\n new Cell( new Stack([ new Txt('Paso a paso').bold().end, new Txt('(¿Qué se va a hacer?, Hace una descripción ordenada de todas las actividades que se requieren para realizar correctamente la tarea)').fontSize(7).end]).end ).end,\r\n new Cell( new Stack([ new Txt('Peligro - consecuencia').bold().end, new Txt('(Característica inherente al medio que puede generar una lesión y/ó daño ambiental) ').fontSize(7).end]).end ).end,\r\n new Cell( new Stack([ new Table([[new Cell(new Txt('Evaluación').bold().end).border([false,false,false,true]).end]]).widths([90]).layout({defaultBorder:false}).end ,new Table([[new Cell(new Txt('Pr').end).border([false,false,true,false]).end,new Cell(new Txt('Sv').end).border([false,false,true,false]).end,new Cell(new Txt('Riesgo Pr * Sv').end).end]]).widths([22,22,30]).layout({defaultBorder:false}).end]).end ).end,\r\n new Cell( new Stack([ new Txt('Controles Aplicables').bold().end, new Txt('(Qué medidas se tomaran para evitar que algo salga mal o falle?)').fontSize(7).end]).end ).end,\r\n new Cell( new Stack([ new Txt('EPP').bold().end, new Txt('(Descripción de los equipos de protección aplicables para la actividad a realizar) ').fontSize(7).end]).end ).end\r\n ],\r\n ...this.getRowsTable(6)\r\n\r\n ])\r\n .pageBreak('before')\r\n .alignment(\"center\")\r\n .widths([95,95,100,90,90])\r\n .margin([0,20,0,20]).end,\r\n new Columns([new Columns([ new Txt('Elaborado por:').bold().end, '____________________' ]).end , new Columns([ new Txt('Aprobado por (Nutreco):').bold().end, '____________________' ]).end ]).margin([0,0,0,15]).end,\r\n new Columns([new Columns([ new Txt('Fecha:').bold().end, '____________________' ]).end , new Columns([ new Txt('Fecha:').bold().end, '____________________' ]).end ]).end\r\n ]\r\n )\r\n\r\n\r\n\r\n pdf.add(\r\n [\r\n new Txt('ANALISIS DE TAREAS DE RIESGO').fontSize(14).bold().margin([0,0,0,20]).alignment('center').pageBreak('before').end,\r\n new Txt('*CONFIRMO HABER LEIDO Y ENTENDIDO LOS PELIGROS Y LOS CONTROLES DEL TRABAJO A REALIZAR*').bold().alignment('left').end,\r\n new Table(\r\n [\r\n [\r\n new Txt('FIRMA DE LOS TRABAJADORES').bold().end, new Txt('CEDULA DE LOS TRABAJADORES').bold().end\r\n ],\r\n ...lista_trabajadores,\r\n // row.Emergency == true ? ['',new Txt('TRABAJADOR POR EMERGENCIA').bold().margin([0,20,0,0]).end]: ['',''],\r\n // row.Emergency == true ? ['',new Txt(row.Commentary).margin([0,10,0,0]).end]: ['','']\r\n ]\r\n )\r\n .margin([0,15,0,15])\r\n .layout('noBorders')\r\n .end,\r\n new Txt('RECOMENDACIONES PARA DESARROLLAR LA EVALUACIÓN DE RIESGOS LABORALES EN TAREAS NO RUTINARIAS Y TAREAS DE ALTO RIESGO')\r\n .fontSize(14)\r\n .bold()\r\n .margin([0,0,0,20])\r\n .alignment('center')\r\n .pageOrientationAndBreak(\"landscape\",\"before\").end,\r\n new Txt([new Txt('Paso a Paso de la tarea : ').margin([0,0,10,0]).width('auto').bold().end, new Txt('Hace una descripción ordenada de todas las actividades que se requieren para realizar correctamente la tarea').end]).end,\r\n new Txt([new Txt('Peligro Consecuencia : ').margin([0,0,10,0]).width('auto').bold().end, new Txt('¿Qué energías potencias estan presentes durante la actividad?, ¿Qué situación o fuente podría desencadenar en una consecuencia potencial?, ¿Qué comportamiento de las personas podrían afectar?').end]).end,\r\n new Txt([new Txt('Grado de Peligro : ').margin([0,0,10,0]).width('auto').bold().end, new Txt('¿Qué resultado (a la persona y/o al Medio ambiente) tenemos si algo sale mal o falla?').end]).end,\r\n new Txt([new Txt('Controles Aplicables Existente : ').margin([0,0,10,0]).width('auto').bold().end, new Txt('¿Qué podemos hacer para evitar que algo salga mal o falle (controles administrativos, señalización, demarcación, cumplimiento de procedimientos operativos, procedimientos)?').end]).end,\r\n new Txt([new Txt('EPP : ').margin([0,0,10,0]).width('auto').bold().end, new Txt('Descripción de los equipos de protección aplicables para la actividad a realizar.').end]).end,\r\n new Table(\r\n [\r\n [\r\n new Cell( new Txt('PROBABILIDAD (Pr)').margin([0,5,0,5]).end).end,\r\n new Cell( new Txt('SEVERIDAD (Sv)').margin([0,5,0,5]).end).end,\r\n new Cell( new Txt('GRADO DE PELIGROSIDAD (GP)').margin([0,5,0,5]).end).end,\r\n ],\r\n [\r\n new Txt([new Txt('ALTO: ').margin([0,0,0,5]).bold().end, new Txt('Para eventos que han ocurrido').end]).margin([0,15,0,15]).alignment('left').end,\r\n new Txt([new Txt('ALTO: ').margin([0,0,0,5]).bold().end, new Txt('Fatalidad o incapacidad permanente, medios de comunicación involucrados y comunidad').end]).margin([0,15,0,15]).alignment('left').end,\r\n new Cell(\r\n await new Img('../../../../assets/images/risk_graph.png').fit([300,350]).build()\r\n )\r\n .rowSpan(2)\r\n .end\r\n ],\r\n [\r\n new Txt([new Txt('MEDIO: ').margin([0,0,0,5]).bold().end, new Txt('Para eventos que no han ocurrido pero es posible que sucedan').end]).margin([0,15,0,15]).alignment('left').end,\r\n new Txt([new Txt('MEDIO: ').margin([0,0,0,5]).bold().end, new Txt('Con incapacidad temporal de un dia o más, casos de tratamiento médico y reubicación laboral.').end]).margin([0,15,0,15]).alignment('left').end\r\n ],\r\n [\r\n new Txt([new Txt('BAJO: ').margin([0,0,0,5]).bold().end, new Txt('Para eventos que nunca han sucedido o que tienen escasa posibilidad de que sucedan').end]).margin([0,15,0,15]).alignment('left').end,\r\n new Txt([new Txt('BAJO: ').margin([0,0,0,5]).bold().end, new Txt('Casos de primeros auxilios (lesiones leves), incidentes(cuasi accidentes y daños materiales)').end]).margin([0,15,0,15]).alignment('left').end,\r\n new Stack(\r\n [\r\n new Txt([ new Txt('Grado de peligrosidad (GP) : ').margin([0,0,0,5]).bold().end, new Txt('Ver tabla de arriba.').margin([0,0,0,5]).end]).end,\r\n new Txt([ new Txt('Bajo (B) : ').margin([0,0,0,5]).bold().end, new Txt('Mantener las medidas de control existentes, se debe hacer comprobaciones periodica para asegurar que el riesgo se mantiene bajo.').margin([0,0,0,5]).end]).end,\r\n new Txt([ new Txt('Alto (A) y Medio (M) : ').margin([0,0,0,5]).bold().end, new Txt('Requiere controles adicionales, caso contrario no se podrá ejecutar la tarea.').margin([0,0,0,5]).end]).end,\r\n ]).margin([0,15,0,15]).alignment('left').end,\r\n ]\r\n ]\r\n )\r\n .margin([0,15,0,0])\r\n .alignment('center')\r\n .widths(['auto', 'auto','auto'])\r\n .end\r\n ]\r\n );\r\n pdf.create().open();\r\n }\r\n\r\n convertDataToRow (data) {\r\n return data.RequestDetails.map((row, index) => ['', new Txt(row.NumberIdentification).margin([0,10,0,0]).end]);\r\n }\r\n\r\n getRowsTable (value) {\r\n let l = [];\r\n for ( let i = 0; i < value; i++) {\r\n let li = [\r\n new Cell(new Txt(' ').margin([0,35,0,35]).end).end,\r\n new Cell(new Txt(' ').margin([0,35,0,35]).end).end,\r\n new Cell(new Table([[new Cell(new Txt('').end).border([false,false,true,false]).end,new Cell(new Txt('').end).border([false,false,true,false]).end,new Cell(new Txt('').end).end]]).heights((row: number) => {return 60}).layout({defaultBorder:false}).widths([22,22,25]).end).end,\r\n new Cell(new Txt(' ').margin([0,35,0,35]).end).end,\r\n new Cell(new Txt(' ').margin([0,35,0,35]).end).end\r\n ]\r\n l.push(li);\r\n }\r\n return l;\r\n }\r\n onEmployeeSelect(employeeId: any) {\r\n const employee = this.workerFilteredHabilitated.find(emp => emp.NumberIdentification === employeeId.NumberIdentification);debugger;\r\n if (employee) {\r\n this.c_obj['NameEmployee'] = employee.Name;\r\n this.c_obj['Email'] = employee.Email;\r\n this.c_obj['position'] = employee.position;\r\n this.c_obj['EmployeeId'] = employee.EmployeeId;\r\n this.c_obj['jobs'] = employee._JobTypeEmployee;\r\n }\r\n this.joblist = this.c_obj['jobs'];\r\n console.log(this.joblist);\r\n }\r\n public handleInputChange(e) {\r\n this.archivos = [];\r\n var file = e.dataTransfer ? e.dataTransfer.files[0] : e.target.files[0];\r\n const archivocapture = e.target.files[0];\r\n this.archivos.push(archivocapture);\r\n this.namefile = file.name;\r\n }\r\n public handleInputChange2(e) {\r\n this.archivos2 = [];\r\n var file = e.dataTransfer ? e.dataTransfer.files[0] : e.target.files[0];\r\n const archivocapture = e.target.files[0];\r\n this.archivos2.push(archivocapture);\r\n this.namefile2 = file.name;\r\n }\r\n public handleInputChange3(e) {\r\n this.archivos3 = [];\r\n var file = e.dataTransfer ? e.dataTransfer.files[0] : e.target.files[0];\r\n const archivocapture = e.target.files[0];\r\n this.archivos3.push(archivocapture);\r\n this.namefile3 = file.name;\r\n }\r\n public async uploadFile(obj, content) {\r\n let formData = new FormData();\r\n formData.append('FileUpload', this.archivos[0]);\r\n formData.append('EntryRequestId', obj.EntryRequestId);\r\n formData.append('FileUpload2', this.archivos2[0]);\r\n\r\n await this.srv.AddFiles(API_UPLOAD_FILE, formData).subscribe(result => {\r\n this.isCreating = false;\r\n if (result.STATUS) {\r\n this.c_obj = {};\r\n this.c_obj['ParamEvalByJob'] = [];\r\n this.confirmDialogWithModal(result.MENSAJE, '', 'success', content);\r\n }\r\n else {\r\n this.c_obj = {};\r\n this.c_obj['ParamEvalByJob'] = [];\r\n this.confirmDialog(result.MENSAJE, '', 'error');\r\n this.archivos = [];\r\n }\r\n });\r\n }\r\n public async uploadFile3(obj, content) {\r\n let formData = new FormData();\r\n formData.append('FileUpload', this.archivos[0]);\r\n formData.append('EntryRequestId', obj.EntryRequestId);\r\n formData.append('FileUpload2', this.archivos2[0]);\r\n\r\n await this.srv.AddFiles(API_UPLOAD_FILE+2, formData).subscribe(result => {\r\n this.isCreating = false;\r\n if (result.STATUS) {\r\n this.c_obj = {};\r\n this.c_obj['ParamEvalByJob'] = [];\r\n this.confirmDialogWithModal(result.MENSAJE, '', 'success', content);\r\n }\r\n else {\r\n this.c_obj = {};\r\n this.c_obj['ParamEvalByJob'] = [];\r\n this.confirmDialog(result.MENSAJE, '', 'error');\r\n this.archivos = [];\r\n }\r\n });\r\n }\r\n public async updateItem3(modal, form) {\r\n this.isUpdating = true;\r\n\r\n // console.log(form);\r\n let new_request = {\r\n StartDate: form['date_init_work'],\r\n EndDte: form['date_final_work'],\r\n Status: isNumeric(this.userinfo.logon)? \"2\":\"1\",\r\n CreatorUser: this.userinfo['logon'],\r\n CompanyID: this.userinfo.selectedCompanyId,\r\n Risk: form['risk'] || false,\r\n Emergency: form['emergency'] || false,\r\n Commentary: form['comment_emergency'] || '',\r\n Responsable: form['who_responsable'] || '',\r\n Requiredby: form['job_applicant'],\r\n WorkOrder: form['job_order'],\r\n WorkDescription: form['work_description'],\r\n PlantaID: form['level'].split('-')[0],\r\n SeccionID: form['job_area'].split('-')[0],\r\n Requiredbyarea: form['request_area'],\r\n\r\n EntryRequestId: form['EntryRequestId'],\r\n MailRequiredby: form['email_applicant'],\r\n // UrlATS: form['UrlATS'],\r\n // UrlMAIA: form['UrlMAIA'],\r\n ValidATS: form['ValidATS'],\r\n ValidMAIA: form['ValidMAIA']\r\n }\r\n\r\n\r\n\r\n await this.srv.postCall(UPDATE_ADMISSION_REQUEST, new_request).toPromise().then( async data =>{\r\n if(data.success){\r\n this.c_obj = {};\r\n await this.uploadFile3(form, modal);\r\n this.closeModal(modal);\r\n Swal.fire(this.translations.msg_update, '', 'success');\r\n this.isUpdating = false;\r\n this.getList();\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n }\r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = false;\r\n });\r\n }\r\n public EventValidATS(obj: any, v: boolean){\r\n // const qst = API_UPDATE_DOCUMENT;\r\n if(obj != null || obj != undefined) {\r\n //this.disableImput = true;\r\n switch (v) {\r\n case true:\r\n if (this.c_obj['ValidATS'] == null) {\r\n this.c_obj['ValidATS'] = v;\r\n this.srv.UpdateValid(API_UPDATE_DOCUMENT, obj).subscribe({\r\n next: (resp) => {\r\n this.SendMail(obj);\r\n window.alert('Aceptado documento con exito...');\r\n this.getList();\r\n },\r\n error: (error) => {\r\n console.log('Error updating');\r\n }\r\n });\r\n } else {\r\n this.disableImput = v;\r\n }\r\n break;\r\n case false:\r\n if (this.c_obj['ValidATS'] == null) {\r\n this.c_obj['ValidATS'] = v;\r\n this.disableImput = v;\r\n this.srv.UpdateValid(API_UPDATE_DOCUMENT, obj).subscribe({\r\n next: (resp) => {\r\n window.alert('Se ha rechazado el documento se notificara mediante correo...');\r\n this.getList();\r\n },\r\n error: (error) => {\r\n console.log('Error updating');\r\n }\r\n });\r\n } else {\r\n this.disableImput = v;\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n public EventValidMAIA(obj: any, v: boolean){\r\n // const qst = API_UPDATE_DOCUMENT;\r\n if(obj != null || obj != undefined) {\r\n //this.disableImput = true;\r\n switch (v) {\r\n case true:\r\n if (this.c_obj['ValidMAIA'] == null) {\r\n this.c_obj['ValidMAIA'] = v;\r\n debugger;\r\n this.srv.UpdateValid(API_UPDATE_DOCUMENT, obj).subscribe({\r\n next: (resp) => {\r\n this.SendMail(obj);\r\n window.alert('Aceptado documento con exito...');\r\n this.getList();\r\n },\r\n error: (error) => {\r\n console.log('Error updating');\r\n }\r\n });\r\n } else {\r\n this.disableImput = v;\r\n }\r\n break;\r\n case false:\r\n if (this.c_obj['ValidMAIA'] == null) {\r\n this.c_obj['ValidMAIA'] = v;\r\n this.disableImput = v;\r\n console.log(this.userinfo);\r\n debugger;\r\n this.srv.UpdateValid(API_UPDATE_DOCUMENT, obj).subscribe({\r\n next: (resp) => {\r\n window.alert('Se ha rechazado el documento se notificara mediante correo...');\r\n this.getList();\r\n },\r\n error: (error) => {\r\n console.log('Error updating');\r\n }\r\n });\r\n } else {\r\n this.disableImput = v;\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n public async updateItemFinal(modal, form) {\r\n this.isUpdating = true;\r\n debugger;\r\n // console.log(form);\r\n let new_request = {\r\n StartDate: form['date_init_work'],\r\n EndDte: form['date_final_work'],\r\n Status: isNumeric(this.userinfo.logon)? \"1\":\"2\",\r\n LastModifierUser: this.userinfo['logon'],\r\n CompanyID: this.userinfo.selectedCompanyId,\r\n Risk: form['risk'] || false,\r\n Emergency: form['emergency'] || false,\r\n Commentary: form['comment_emergency'] || '',\r\n Responsable: form['who_responsable'] || '',\r\n Requiredby: form['job_applicant'],\r\n WorkOrder: form['job_order'],\r\n WorkDescription: form['work_description'],\r\n PlantaID: form['level'].split('-')[0],\r\n SeccionID: form['job_area'].split('-')[0],\r\n Requiredbyarea: form['request_area'],\r\n\r\n EntryRequestId: form['EntryRequestId'],\r\n MailRequiredby: form['email_applicant'],\r\n // UrlATS: form['UrlATS'],\r\n // UrlMAIA: form['UrlMAIA'],\r\n ValidATS: form['ValidATS'],\r\n ValidMAIA: form['ValidMAIA']\r\n }\r\n\r\n await this.srv.postCall(UPDATE_ADMISSION_REQUEST, new_request).toPromise().then(async data =>{\r\n if(data.success){\r\n this.c_obj = {};\r\n await this.uploadFile3(data.val, modal);\r\n this.closeModal(modal);\r\n Swal.fire(this.translations.msg_update, '', 'success');\r\n this.isUpdating = false;\r\n this.getList();\r\n } else {\r\n this.isUpdating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n }\r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isUpdating = false;\r\n });\r\n }\r\n\r\n public EmailsMaia(){\r\n var qst = API_MAIA_EMAILAPPROVE;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.maia_Email = rs;\r\n }else {\r\n this.maia_Email = [];\r\n return;\r\n }\r\n }else {\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
\r\n
{{'entry_request_pending_final' | translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ID\r\n \r\n {{'requested_by'| translate}}\r\n {{'job_order' | translate}}{{'job_to_do' | translate}}{{'date_init' | translate}}{{'date_end' | translate}}{{'emergency' | translate}}{{'habidesa' | translate}}{{'action' | translate}}
{{row.EntryRequestId}}{{row.Requiredby}}{{row.WorkOrder}}{{row.WorkDescription}}{{row.StartDate.split('T')[0]}}{{row.EndDte.split('T')[0]}}{{row.Emergency ? ('emergency' | translate ): ('no_emergency' | translate)}}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'menu_mtrabajador' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'identity_document' | translate}}{{'name' | translate}}{{'status_documents'| translate}}{{'status_reason'| translate}}{{'status_evaluations'| translate}}{{'status_sanctions'| translate}}{{'status' | translate}}
{{row.NumberIdentification}}{{row.Name}}{{row.Status_doc}}\r\n \r\n {{row.Status_evaluation}}{{row.Status_faltas == 'SI' ? 'SANCIONADO': 'NO SANCIONADO'}}{{row.status_Doc_Eval}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'job_data'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{p.Name}}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{p.NameSeccion}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

{{'upload_file'| translate}}

\r\n
\r\n
\r\n
\r\n \r\n Descargar Excel\r\n
\r\n\r\n
\r\n {{ \"comp_max_doc_size\" | translate }}\r\n {{ \"max_doc_size2\" | translate }} MB\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Descargar Excel\r\n
\r\n
\r\n {{ \"comp_max_doc_size\" | translate }}\r\n {{ \"max_doc_size2\" | translate }} MB\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \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_details_request'| translate}}

\r\n
\r\n
**{{'detail_employees'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{p['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

{{'nametype' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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}}{{'ci' | translate}}{{'jobtitle'| translate}}{{'globalparam_typejob' | translate}}{{'action' | translate}}
{{parameter.NameEmployee}}{{parameter.NumberIdentification}}{{parameter.jobtitle}}{{parameter.globalparam_typejob}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'menu_mtrabajador' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'identification' | translate}}{{'name' | translate}}{{'status_documents'| translate}}{{'status_reason'| translate}}{{'status_evaluations'| translate}}{{'status' | translate}}
{{row.NumberIdentification}}{{row.Name}}{{row.Status_doc}}\r\n \r\n {{row.Status_evaluation}}{{row.Status_faltas == 'SI' ? 'SANCIONADO': 'NO SANCIONADO'}}{{row.status_Doc_Eval}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'job_data'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{p.Name}}\r\n \r\n
\r\n
\r\n \r\n \r\n >\r\n {{p.NameSeccion}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

{{'download_file'| translate}}

\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n Descargar Excel\r\n
\r\n\r\n
\r\n {{ \"comp_max_doc_size\" | translate }}\r\n {{ \"max_doc_size2\" | translate }} MB\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {{'download_file' | translate}} ATS\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{'approval' | translate}}\r\n \r\n \r\n {{'rejected' | translate}}\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n Descargar Excel\r\n
\r\n
\r\n {{ \"comp_max_doc_size\" | translate }}\r\n {{ \"max_doc_size2\" | translate }} MB\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {{'download_file' | translate}} MAIA\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{'approval' | translate}}\r\n \r\n \r\n {{'rejected' | translate}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'data_details_request'| translate}}

\r\n
\r\n
**{{'detail_employees'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n >\r\n {{p['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

{{'nametype' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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}}{{'ci' | translate}}{{'jobtitle'| translate}}{{'globalparam_typejob' | translate}}{{'action' | translate}}
{{parameter.NameEmployee}}{{parameter.NumberIdentification}}{{parameter.jobtitle}}{{parameter.globalparam_typejob}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'upload_final_for' | translate}} # {{c_obj['EntryRequestId']}}

\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n {{ \"comp_max_doc_size\" | translate }}\r\n {{ \"max_doc_size2\" | translate }} MB\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {{'download_file' | translate}} \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n {{ \"comp_max_doc_size\" | translate }}\r\n {{ \"max_doc_size2\" | translate }} MB\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {{'download_file' | translate}} \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
{{'notice_empty_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","import { Component, OnInit } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoginService } from '../../../services/authentication/login.service';\r\nimport { PermissionService } from 'src/app/services/authentication/permission.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-prochome',\r\n templateUrl: './prochome.component.html',\r\n styleUrls: ['./prochome.component.css']\r\n})\r\nexport class ProchomeComponent implements OnInit {\r\n\r\n \ttranslations:any;\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n items:any = [];\r\n permissions = [];\r\n\r\n \tconstructor(\r\n \t\tpublic _router: Router,\r\n public translate: TranslateService,\r\n public auth: LoginService,\r\n public permission: PermissionService\r\n \t) { }\r\n\r\n \tngOnInit() { \r\n let id = environment.Global.Menus.Procesos// menu procesos\r\n this.permission.getModulesByMenuId(id).then(x => {\r\n x.forEach(element => {\r\n if (element.principal == 1) {\r\n this.items.push(element)\r\n }\r\n });\r\n })\r\n \r\n this.auth.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n \t}\r\n\r\n hasPermission(str:string){\r\n let flag = false;\r\n this.permissions.forEach(permission => {\r\n if(permission.Permission == str) {\r\n flag = true;\r\n }\r\n })\r\n return flag;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
{{ row.title | translate }}
\r\n
\r\n
\r\n
\r\n
","import { Component} from '@angular/core';\r\nimport { ApiService } from '../../../services/main/api.service';\r\nimport { NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport Swal from 'sweetalert2';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Storage } from '@ionic/storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { of } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { environment } from 'src/environments/environment';\r\n\r\nconst API_GET_JOB_TYPE = environment.Global.API_GET_JOB_TYPE;\r\nconst API_VERIFY_EXIST_EVAL_BY_EMPLOYEE_JOB = environment.Global.API_VERIFY_EXIST_EVAL_BY_EMPLOYEE_JOB;\r\n@Component({\r\n selector: 'app-prorequest',\r\n templateUrl: './prorequest.component.html',\r\n styleUrls: ['./prorequest.component.css']\r\n})\r\nexport class ProrequestComponent extends BaseCrudComponent {\r\n userinfo:any;\r\n row_emp:any = [];\r\n row_plantas:any;\r\n row_typejob:any;\r\n curr_parameter:any;\r\n loadingRequired = false;\r\n habilitar = false;\r\n evaluacion:any;\r\n ID:any;\r\n video;\r\n \r\n pageTotal2 = 0;\r\n page2 = 0;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['RequestId','Ruc','namecompany','WhoRequest','status_eval'];\r\n this.c_obj['Request'] = [];\r\n this.curr_parameter = null;\r\n }\r\n\r\n\r\n async ngOnInit(){\r\n await this.translate.getTranslation(this.translate.currentLang)\r\n .toPromise().then((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n });\r\n this.pageSize = 5;\r\n this.pageSize2 = 5;\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n await this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n console.log(this.userinfo)\r\n this.getList();\r\n });\r\n }\r\n\r\n public getList()\r\n {\r\n var qst =\"\" ;\r\n this.loadingList = true;\r\n if(this.userinfo['ProfileType'] == \"Administrador\" && this.userinfo['ProfileID'] == 1)\r\n { \r\n qst = \"Request/All\";\r\n this.habilitar=false;\r\n }\r\n else{\r\n qst = \"Request/AllByCompany/\"+this.userinfo.selectedCompanyId;\r\n this.habilitar=true;\r\n }\r\n\r\n \r\n this.GetPlantas();\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n this.rawdata = x.val;\r\n var rs = x.val;\r\n this.rows = rs;\r\n this.page = 1;\r\n if( Array.isArray(this.rows) ){\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n // this.messageDialog(x.msg, '','success');\r\n this.closeLoadingMessage();\r\n }else {\r\n // this.messageDialog(x.msg, '','success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n }\r\n }else {\r\n this.messageDialog(x.msg, '','error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n\r\n public GetTrabajadores()\r\n {\r\n var qst = this.read_url;\r\n\r\n if(isNumeric(this.userinfo.logon) )\r\n { \r\n this.read_url = \"Employee/GetEmployeesAndDocumentsByCompany/\"+this.userinfo.selectedCompanyId;\r\n }\r\n else{\r\n this.read_url = \"Employee/GetEmployeesAllCompany\";\r\n }\r\n this.messageShowLoading();\r\n var qst = this.read_url;\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_emp = rs;\r\n this.page2 = 1;\r\n if( Array.isArray(this.row_emp) ){\r\n this.pageTotal2 = this.row_emp.length;\r\n }\r\n this.messageDialog(x.msg, '' ,'success');\r\n }else {\r\n this.row_emp = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n public updateItem(content:any, form:any){\r\n var validated = true;\r\n this.isUpdating = true;\r\n var qst = \"Request/Update\";//this.update_url;\r\n \r\n if( form == undefined ){\r\n form = {};\r\n }\r\n \r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n // if (form.PlantaID==\"\" || form.PlantaID==null || form.PlantaID==undefined)\r\n // {\r\n // Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n // return;\r\n // }\r\n var to:any; \r\n to = {};\r\n\r\n form.CompanyID=this.userinfo.selectedCompanyId;\r\n //form.CreatorUser = this.userinfo['userId'];//this.userinfo['logon'];\r\n // form.Status =\"A\";\r\n form.LastModifierUserID = this.userinfo['userId'];\r\n to = form;\r\n //to.durationtime=form.durationtime;\r\n \r\n \r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isUpdating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n this.closeModal('update1');\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n \r\n } \r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n \r\n }\r\n\r\n\r\n\r\n openUpdateModal(content:any, obj:any){\r\n this.GetTrabajadores();\r\n this.curr_parameter = 0;\r\n super.openUpdateModal(content, obj,'lg');\r\n this.loadingRequired = true;\r\n this.GetTypeJob().subscribe(x => {\r\n this.loadingRequired = false;\r\n if(x != false){\r\n this.row_typejob = x;\r\n }\r\n });\r\n }\r\n\r\n openUpdateModal2(content:any, obj:any){\r\n this.curr_parameter = 0;\r\n super.openUpdateModal(content, obj,'lg');\r\n this.loadingRequired = true;\r\n this.GetEvaluation().subscribe(x => {\r\n this.loadingRequired = false;\r\n if(x != false){\r\n this.evaluacion = x;\r\n }\r\n });\r\n }\r\n\r\n public openCreateModal(content: any) {\r\n this.GetTrabajadores();\r\n this.curr_parameter = null;\r\n this.c_obj = {};\r\n this.c_obj['RequestDetails'] = [];\r\n this.modalService.open(content, { backdrop: 'static', keyboard: false, size: 'lg', centered:true });\r\n this.loadingRequired = true;\r\n this.GetTypeJob().subscribe(x => {\r\n this.loadingRequired = false;\r\n if(x != false){\r\n this.row_typejob = x;\r\n }\r\n });\r\n }\r\n\r\n public async createItem(content:any, form:any){\r\n this.create_url=\"Request/Create\";\r\n var validated = true;\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n validated = this.validateCreateInfo(form);\r\n if( !validated ){\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n \r\n return;\r\n }\r\n\r\n let to = {\r\n CompanyID: this.userinfo.selectedCompanyId,\r\n WhoRequest: form.WhoRequest,\r\n CreatorUserID: this.userinfo['userId'],\r\n RequestDetails: form.RequestDetails,\r\n Status: \"A\"\r\n }\r\n \r\n\r\n var qst = this.create_url;\r\n this.isCreating = true;\r\n // console.log(to);\r\n await this.srv.postCall(qst, to).toPromise().then( async data =>{\r\n if (data.val != null) {\r\n this.confirmDialog(data.msg, '','success'); \r\n await this.AssigneItem(content,data.val[\"RequestId\"]);\r\n }\r\n },catchError =>{\r\n catchError.message;\r\n \r\n });\r\n\r\n }\r\n\r\n public async AssigneItem(content:any, form:any){\r\n var qst = \"Request/Assigne\";\r\n var to:any; \r\n to = {\r\n RequestId : form,\r\n AssignedUser : \"Automatic\",\r\n CompanyID : this.userinfo.selectedCompanyId\r\n };\r\n await this.srv.postCall(qst, to).toPromise().then(async x => {\r\n if (x.success) {\r\n this.c_obj = {};\r\n this.curr_parameter = 0;\r\n // this.confirmDialog(x.msg, '','success'); \r\n await this.SendMail(to, content);\r\n }\r\n }); \r\n }\r\n\r\n public async SendMail(data:any, content){\r\n var qst = \"Request/SenMail\"; \r\n var to:any; \r\n to = {};\r\n to = data; \r\n await this.srv.postCall(qst, to).toPromise().then(x => {\r\n this.isCreating = false;\r\n if (x.success) { \r\n this.confirmDialogWithModal(x.msg, '','success', content);\r\n } \r\n }, err => {\r\n this.isCreating = false;\r\n this.confirmDialogWithModal(err, '','error', content);\r\n });\r\n }\r\n \r\n\r\n \r\n toggleEditable(event, id) {\r\n if ( event.target.checked ) {\r\n this.ActivarItem(id,1);\r\n }else {\r\n this.ActivarItem(id,2);\r\n \r\n }\r\n }\r\n\r\n ActivarItem(id:any, accion:any)\r\n {\r\n var to:any;\r\n to = {};\r\n to.RequestId = id;\r\n to.Status = accion;\r\n to.LastModifierUserID=this.userinfo['userId'];\r\n var qst = \"Request/UpdateStatus\";\r\n this.srv.postCall(qst, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n GetPlantas() \r\n {\r\n var qst = \"ConsultasGenerales/ConsultaPlantasActivas\";\r\n this.srv.getCall(qst).subscribe(x => {\r\n this.loadingList = false; \r\n if(x.success){\r\n if(x.val != null){\r\n var rs = x.val;\r\n this.row_plantas = rs;\r\n }else {\r\n this.row_plantas = [];\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n GetTypeJob() \r\n {\r\n var qst = API_GET_JOB_TYPE;\r\n return this.srv.getCall(qst).pipe( \r\n mergeMap(data => { \r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n if(mydata.success == true ){\r\n return of(mydata.val);\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n catchError(data => of(false))\r\n );\r\n }\r\n\r\n onlyNumberKey(event) {\r\n return (event.charCode == 8 || event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57;\r\n }\r\n\r\n\r\n\r\n async addParameter(obj:any)\r\n {\r\n if (obj['NumberIdentification']==undefined || obj['EmployeeId']==undefined){\r\n return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n }\r\n let flag = false;\r\n let job = 0;\r\n if (obj.typeEmployeeName == \"Conductor\") {\r\n job = 6;\r\n } else {\r\n job = this.curr_parameter;\r\n }\r\n await this.srv.postCall(API_VERIFY_EXIST_EVAL_BY_EMPLOYEE_JOB, {JobTypeID: job})\r\n .toPromise().then(x => {\r\n if (!x.success) {\r\n flag = false;\r\n } else {\r\n flag = true;\r\n }\r\n }) \r\n if (!flag) {\r\n this.messageDialog(this.translations.not_eval_job,'','error');\r\n this.emptyFields();\r\n return\r\n }\r\n if (obj.typeEmployeeName == \"Trabajador\") {\r\n if( this.curr_parameter == 0 || this.curr_parameter == null ){\r\n return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n }\r\n else{\r\n let exists = obj['RequestDetails'].filter(f => {\r\n return f.NumberIdentification == obj['NumberIdentification'];\r\n });\r\n let newList = [];\r\n for (let l of obj['listWorksIdEmp']) {\r\n newList.push(Number(l.split('-')[0]));\r\n }\r\n // console.log(newList)\r\n if (newList.indexOf(this.curr_parameter) === -1) {\r\n if (newList.length === 1) {\r\n return Swal.fire(this.translations.Error_Type_Job, this.translations.Type_job_habilitate + `:
${obj['listWorksIdEmp'][0].split('-')[1]}`, 'error')\r\n } else {\r\n let works = '';\r\n for (let x of obj['listWorksIdEmp']) {\r\n works = works + x.split('-')[1] + ',';\r\n }\r\n return Swal.fire(this.translations.Error_Type_Job, this.translations.Type_job_habilitate + `:
${works.slice(0, -1)}`, 'error')\r\n }\r\n }\r\n if(exists.length>0)\r\n {\r\n return Swal.fire(this.translations.error, this.translations.identificaction_repeated,'error');;\r\n }\r\n let parm = this.row_typejob.filter(f => {\r\n return f.JobTypeID == this.curr_parameter;\r\n });\r\n \r\n if (parm.length > 0){\r\n let parameter = parm[0];\r\n obj['RequestDetails'].push(\r\n {\r\n NumberIdentification: obj['NumberIdentification'],\r\n NameEmployee:obj['NameEmployee'],\r\n position:obj['position'],\r\n EmployeeId:obj['EmployeeId'],\r\n JobTypeID:parameter['JobTypeID'],\r\n JobtypeName:parameter['Name']\r\n }\r\n );\r\n }\r\n this.emptyFields();\r\n }\r\n } else {\r\n let exists = obj['RequestDetails'].filter(f => {\r\n return f.NumberIdentification == obj['NumberIdentification'];\r\n });\r\n if(exists.length>0)\r\n {\r\n return Swal.fire(this.translations.error, this.translations.identificaction_repeated,'error');;\r\n }\r\n obj['RequestDetails'].push(\r\n {\r\n NumberIdentification: obj['NumberIdentification'],\r\n NameEmployee:obj['NameEmployee'],\r\n position:obj['position'],\r\n EmployeeId:obj['EmployeeId'],\r\n JobTypeID:6,\r\n JobtypeName:obj['position']\r\n }\r\n );\r\n this.emptyFields();\r\n \r\n }\r\n \r\n\r\n \r\n }\r\n\r\n public emptyFields() {\r\n this.c_obj['NumberIdentification']= undefined;\r\n this.c_obj['NameEmployee']=undefined;\r\n this.c_obj['position']=undefined;\r\n this.c_obj['EmployeeId']=undefined;\r\n this.c_obj['typeEmployeeName'] = undefined;\r\n this.c_obj['JobTypeID']=undefined;\r\n this.c_obj['JobtypeName']=undefined;\r\n this.curr_parameter = null;\r\n }\r\n\r\n public delParameter(obj:any, position:number){\r\n obj['RequestDetails'].splice(position, 1);\r\n }\r\n\r\n public delParameter2(obj:any, position:number){\r\n obj['RequestEvualuation'].splice(position, 1);\r\n }\r\n\r\n GetEmployeeforIdentification(obj:any,val:any) \r\n {\r\n var qst = \"Employee/GetIdentification/\"+obj;\r\n\r\n if (obj==\"\")\r\n {\r\n return;\r\n }\r\n this.c_obj['listWorksIdEmp'] = [];\r\n this.u_obj['listWorksIdEmp'] = [];\r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => {\r\n Swal.close();\r\n this.loadingList = false;\r\n if(x.success){\r\n if(x.val != null){\r\n if (x.val[0]['Status_doc']!='VALIDADO')\r\n {\r\n Swal.fire(this.translations.error, this.translations.msg_hability_request+\" \"+ x.val[0]['Status_doc'], 'error');\r\n this.c_obj['NumberIdentification']=\"\";\r\n this.u_obj['NumberIdentification']=\"\";\r\n return;\r\n }\r\n if (val == 1){\r\n this.c_obj['NameEmployee'] = x.val[0]['Name'];\r\n this.c_obj['typeEmployeeName'] = x.val[0]['typeEmployeeName'];\r\n this.c_obj['position'] = x.val[0]['position'];\r\n this.c_obj['EmployeeId'] = x.val[0]['EmployeeId'];\r\n this.c_obj['Status_doc'] = x.val[0]['Status_doc'];\r\n // console.log(this.c_obj)\r\n // console.log(x.val[0])\r\n }\r\n else{\r\n this.u_obj['NameEmployee']=x.val[0]['Name'];\r\n this.u_obj['typeEmployeeName']=x.val[0]['typeEmployeeName'];\r\n this.u_obj['position']=x.val[0]['position'];\r\n this.u_obj['EmployeeId']=x.val[0]['EmployeeId'];\r\n this.u_obj['Status_doc']=x.val[0]['Status_doc'];\r\n }\r\n for (let object of x.val[0]['_JobTypeEmployee']) {\r\n this.c_obj['listWorksIdEmp'].push(object.JobTypeID.toString() + '-'+ object.Name);\r\n this.u_obj['listWorksIdEmp'].push(object.JobTypeID.toString() + '-'+ object.Name);\r\n };\r\n }else {\r\n return;\r\n }\r\n }else {\r\n return;\r\n }\r\n });\r\n }\r\n\r\n validateCreateInfo(fields:any){\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'WhoRequest': new FormControl(fields.WhoRequest, [Validators.required])\r\n });\r\n \r\n return mygroup.valid;\r\n }\r\n \r\n GetEvaluation() \r\n {\r\n var qst = \"Evaluation/AllActive\";\r\n\r\n return this.srv.getCall(qst).pipe( \r\n mergeMap(data => { \r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n //console.log(\"data:\",data);\r\n //console.log(\"mydata:\",mydata);\r\n \r\n if(mydata.success == true ){\r\n return of(mydata.val);\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'code' | translate}}\r\n {{'date_creation' | translate}}{{'worker_quantity' | translate}}{{'habidesa' | translate}}\r\n {{'status_assign_evaluation' | translate}}\r\n {{'actions' | translate}}
{{row.RequestId}}{{row.CreationTime.split('T')[0]}}   {{row.CreationTime.split('T')[1].split('.')[0]}}{{row.listRequestdetail.length}}
\r\n \r\n
\r\n
\r\n \r\n {{row.status_eval}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'menu_mtrabajador' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'identification' | translate}}{{'name' | translate}}{{'employee_type' | translate}}{{'status_documents'| translate}}
{{row.NumberIdentification}}{{row.Name}}{{row.typeEmployeeName}}{{row.Status_doc}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'data_head_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

{{'data_details_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 {{p['Name']}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n

{{'employee' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'identification' | translate}}{{'name' | translate}}{{'jobtitle' | translate}}{{'globalparam_typejob'| translate}}{{'action' | translate}}
{{parameter.NumberIdentification}}{{parameter.NameEmployee}}{{parameter.position}}{{parameter.JobtypeName}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'edit_item' | translate}}: {{u_obj['RequestId']}}

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

{{'data_head_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

{{'employee' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'identification' | translate}}{{'name' | translate}}{{'jobtitle' | translate}}{{'globalparam_typejob'| translate}}
{{parameter.NumberIdentification}}{{parameter.NameEmployee}}{{parameter.position}}{{parameter.JobtypeName}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\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 Swal from 'sweetalert2';\r\n\r\nimport { Storage } from '@ionic/storage';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { environment } from 'src/environments/environment';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport {saveAs as importedSaveAs } from \"file-saver\";\r\n\r\nconst GET_REQUEST_BY_ID = environment.Global.API_GET_REQUEST_BY_ID;\r\nconst CREATE_WORK_AUTH = environment.Global.API_CREATE_WORK_AUTH;\r\nconst GET_BY_ID_COMPANY_WORK_AUTH = environment.Global.API_GET_BY_ID_COMPANY_WORK_AUTH;\r\nconst UPDATE_STATUS_WORK_AUTH = environment.Global.API_UPDATE_STATUS_WORK_AUTH;\r\nconst UPDATE_WORK_AUTH = environment.Global.API_UPDATE_WORK_AUTH;\r\nconst GET_WORK_AUTH_BY_ID = environment.Global.API_GET_WORK_AUTH_BY_ID;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\n\r\n@Component({\r\n selector: 'app-repocreator',\r\n templateUrl: './repocreator.component.html',\r\n styleUrls: ['./repocreator.component.css']\r\n})\r\nexport class RepocreatorComponent extends BaseCrudComponent implements OnInit {\r\n userinfo:any;\r\n loadingRequired = false;\r\n id;\r\n isSkretting = false;\r\n date_doc:any;\r\n habilitar = false;\r\n statusWork = false;\r\n date;\r\n company:any;\r\n mostarselectemp;\r\n entryRequestId;\r\n objectEntryRequest;\r\n archivos=[];\r\n namefile:any;\r\n tipotrabajo=[];\r\n mensaje=\"\";\r\n size_max= 3145728;//3mb\r\n diffDate; // diferencia de dias en las fechas\r\n lista;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService\r\n ) { \r\n super(srv, modalService, storage, router);\r\n this.id = route.snapshot.params.id;\r\n\r\n // this.create_url = API_CREATE_TOOLS;\r\n // this.read_url = API_GET_TOOLS;\r\n // this.update_url = API_UPDATE_TOOLS;\r\n this.date_doc = new Date();\r\n this.search_fields = ['WorkAuthId','Area'];\r\n\r\n this.reload.subscribe(val => {\r\n if( val ){\r\n super.clearData();\r\n this.getList();\r\n }\r\n });\r\n // this.crearFormEmp();\r\n }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n //console.log(this.date)\r\n this.company =[];\r\n //this.u_obj=[];\r\n this.route.queryParams.subscribe(params => {\r\n this.entryRequestId = params['id'];\r\n });\r\n //debugger;\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n super.ngOnInit();\r\n // this.getList();\r\n });\r\n this.pageSize = 5;\r\n this.userinfo = [];\r\n this.userinfo['name'] = '';\r\n this.userinfo['emailAddress'] = '';\r\n\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n this.c_obj['CompanyID'] = this.userinfo['selectedCompanyId'];\r\n if( isNumeric( this.userinfo.logon) ) {\r\n this.mostarselectemp = false;\r\n this.habilitar=true;\r\n this.isSkretting = false;\r\n } \r\n this.getList();\r\n });\r\n\r\n }\r\n\r\n public getList() {\r\n let qst = '';\r\n // console.log(this.isSkretting)\r\n if (this.isSkretting) {\r\n qst = GET_BY_ID_COMPANY_WORK_AUTH + this.userinfo['selectedCompanyId'];\r\n this.c_obj['CompanyID'] = this.userinfo['selectedCompanyId'];\r\n } else {\r\n qst = GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\n }\r\n // console.log(qst)\r\n // Swal.fire(\r\n // {\r\n // title: this.translations['loading'],\r\n // html: '',\r\n // icon: 'info',\r\n // }\r\n // );\r\n // Swal.showLoading();\r\n this.loadingList = true;\r\n this.rows = [];\r\n \r\n this.messageShowLoading();\r\n this.srv.getCall(qst).subscribe(x => { \r\n if(x.success){\r\n if(x.val != null){\r\n // console.log(x.val)\r\n let contador = 0;\r\n this.rawdata = x.val;\r\n this.rows = x.val;\r\n this.rows.forEach(element => {\r\n if (element['CloseWorkerAuth'] === 'A') {\r\n contador += 1;\r\n }\r\n });\r\n // if (contador === 1) {\r\n // Swal.fire(this.translations.information_message, this.translations.have + ' 1 ' + this.translations.request_Work_open, 'warning');\r\n // } else if (contador > 1) {\r\n // Swal.fire(this.translations.information_message, this.translations.have + ` ${contador.toString()} ` + this.translations.request_Works_open, 'warning');\r\n // }\r\n this.rows = x.val;\r\n // console.log(this.rows)\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.loadingList = false;\r\n this.closeLoadingMessage();\r\n // Swal.close()\r\n } else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.closeLoadingMessage();\r\n this.rows = [];\r\n return;\r\n } \r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n \r\n }\r\n public openCreateModal(content: NgbModal) {\r\n\r\n\r\n let qst = GET_REQUEST_BY_ID + this.entryRequestId;\r\n this.srv.getCall(qst).subscribe(x => { \r\n if(x.success){\r\n if(x.val != null){\r\n this.c_obj['date_init'] = x.val['StartDate'].split('T')[0];\r\n this.c_obj['date_end'] = x.val['EndDte'].split('T')[0];\r\n this.c_obj['work_area'] = x.val['Requiredbyarea'];\r\n this.c_obj['work_person_number'] = x.val['RequestDetails'].length;\r\n this.c_obj['work_description'] = x.val['WorkDescription'];\r\n this.c_obj['workers'] = x.val['RequestDetails'];\r\n this.c_obj['work_sub_description'] = '';\r\n this.c_obj['WorkOrder'] = x.val['WorkOrder'];\r\n // console.log(this.c_obj)\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.c_obj = {} ;\r\n return;\r\n } \r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n this.modalService.open(content, { backdrop: 'static', size: 'lg' });\r\n }\r\n\r\n public verifyDateEnd() {\r\n if (this.c_obj['date_init'] === undefined ) {\r\n this.c_obj['date_end'] = null;\r\n return Swal.fire(this.translations.error,this.translations.msg_not_found_date_init, 'error');\r\n }\r\n const date_init = new Date(this.c_obj['date_init']);\r\n const date_end = new Date(this.c_obj['date_end']);\r\n this.diffDate = (date_end.getTime() - date_init.getTime()) / 86400000;\r\n // console.log(this.c_obj['date_init']);\r\n if (this.diffDate > 7 ){\r\n return Swal.fire(this.translations.error,this.translations.msg_max_ranges_dates, 'error');\r\n }\r\n\r\n if (date_init > date_end ){\r\n ( document.getElementById(\"fechaFinal\")).value = \"\";\r\n return Swal.fire(this.translations.error,this.translations.msg_date_end_max, 'error');\r\n }\r\n \r\n \r\n }\r\n\r\n public validateCreateInfo(fields:any): boolean {\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n 'date_init': new FormControl(fields.date_init, [Validators.required]),\r\n 'date_end': new FormControl(fields.date_end, [Validators.required]),\r\n 'date_hour': new FormControl(fields.date_hour, [Validators.required]),\r\n 'work_area': new FormControl(fields.work_area, [Validators.required]),\r\n 'work_person_number': new FormControl(fields.work_person_number, [Validators.required]),\r\n 'work_description': new FormControl(fields.work_description, [Validators.required]),\r\n 'work_sub_description':new FormControl(fields.work_sub_description, [Validators.required]),\r\n });\r\n return mygroup.valid;\r\n }\r\n\r\n\r\n public createItem(content:any, form:any): any{\r\n // console.log(form)\r\n // console.log(this.objectEntryRequest);\r\n var validated = true;\r\n this.isCreating = false;\r\n if( form == undefined ){\r\n form = {};\r\n }\r\n\r\n validated = this.validateCreateInfo(form); \r\n // if (this.diffDate > 7 ){ \r\n // this.isCreating = false;\r\n // return Swal.fire(this.translations.error,this.translations.msg_max_ranges_dates, 'error');\r\n // }\r\n\r\n let new_workerAuth = {\r\n Wa_DateBegin: form['date_init'],\r\n Wa_DaTeend: form['date_end'],\r\n Area: form['work_area'],\r\n QuantityWorker: form['work_person_number'],\r\n DescriptionWorker: form['work_description'],\r\n Hour: form['date_hour'],\r\n CompanyID: form['CompanyID'],\r\n EntryRequestId: this.entryRequestId,\r\n CreatorUser:this.userinfo.logon,\r\n WorkSubDescription: form ['work_sub_description'],\r\n FileName: null,\r\n PathFile: null\r\n }\r\n\r\n // console.log(new_workerAuth);\r\n\r\n if( !validated ){\r\n this.isCreating = false;\r\n Swal.fire(this.translations['msg_all_required'], '', 'error');\r\n return;\r\n }\r\n\r\n let url_create = CREATE_WORK_AUTH;\r\n this.srv.postCall(url_create, new_workerAuth).toPromise().then( data =>{\r\n if(data.success){\r\n this.closeModal(content);\r\n this.getList();\r\n Swal.fire(this.translations.msg_create, '', 'success');\r\n this.isCreating = false;\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n } \r\n },catchError =>{\r\n Swal.fire(catchError.message, '', 'error');\r\n this.isCreating = false;\r\n });\r\n\r\n \r\n\r\n }\r\n\r\n toggleEditable(event: any, id: Number): void {\r\n if ( event.target.checked ) {\r\n this.ActivarItem(id,1);\r\n }else {\r\n this.ActivarItem(id,2);\r\n \r\n }\r\n }\r\n\r\n public ActivarItem(id:any, accion:any): void\r\n {\r\n var to:any;\r\n to = {};\r\n to.WorkAuthId = id;\r\n to.Status = accion;\r\n to.LastModifierUser = this.userinfo['logon'];\r\n // console.log(to)\r\n this.srv.postCall(UPDATE_STATUS_WORK_AUTH, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if(x.success){\r\n this.reload.next(true);\r\n Swal.fire(this.translations['MENSAJE'], x.msg, 'success');\r\n this.getList();\r\n }\r\n else{\r\n Swal.fire(x.msg, '', 'error');\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n openCloseWork(content, row, size) {\r\n // console.log(row)\r\n \r\n this.c_obj['WorkAuthId'] = row.WorkAuthId;\r\n this.c_obj['date_init'] = row['Wa_DateBegin'].split('T')[0];\r\n this.c_obj['date_end'] = row['Wa_DaTeend'].split('T')[0];\r\n this.c_obj['work_area'] = row['Requiredbyarea'];\r\n this.c_obj['work_person_number'] = row['QuantityWorker'];\r\n this.c_obj['work_description'] = row['DescriptionWorker'];\r\n this.c_obj['CloseWorkerAuth'] = row['CloseWorkerAuth'] === 'C' ? true:false;\r\n this.c_obj['work_sub_description'] = row['WorkSubDescription'];\r\n this.c_obj['WorkOrder'] = row['WorkOrder'];\r\n this.c_obj['date_hour'] = row['Hour'] !== undefined ? row['Hour'] : null;\r\n let qst = '';\r\n if ( this.c_obj['CloseWorkerAuth'] === false) {\r\n this.statusWork = true;\r\n } else {\r\n this.statusWork = false;\r\n }\r\n if(this.isSkretting) {\r\n qst = GET_REQUEST_BY_ID + this.entryRequestId;\r\n } else {\r\n qst = GET_REQUEST_BY_ID + row['EntryRequestId'];\r\n }\r\n this.srv.getCall(qst).subscribe(x => { \r\n if(x.success){\r\n if(x.val != null){\r\n this.c_obj['workers'] = x.val['RequestDetails'];\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.c_obj = {} ;\r\n return;\r\n } \r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n this.modalService.open(content, { backdrop: 'static', size: size });\r\n }\r\n\r\n\r\n handleInputChange(e) {\r\n this.archivos=[];\r\n var file = e.dataTransfer ? e.dataTransfer.files[0] : e.target.files[0];\r\n const archivocapture=e.target.files[0];\r\n this.archivos.push(archivocapture);\r\n this.namefile=file.name;\r\n }\r\n\r\n closeItem(content, row) {\r\n // console.log(row);\r\n if (this.archivos.length === 0) {\r\n return Swal.fire(this.translations.error, this.translations.must_upload_document, 'error');\r\n } \r\n\r\n if (row['CloseWorkerAuth'] === undefined) {\r\n return Swal.fire(this.translations.error, this.translations['msg_all_required'], 'error');\r\n }\r\n this.isUpdating = true;\r\n let formData = new FormData();\r\n formData.append('FileUpload', this.archivos[0]);\r\n formData.append('CompanyID', this.userinfo.selectedCompanyId);\r\n formData.append('WorkDocumentID', row.WorkAuthId);\r\n formData.append('CreatorUser', this.userinfo.logon);\r\n this.srv.AddFileWorkerAuth(formData).subscribe(result => {\r\n if (result==\"OK\") {\r\n this.reload.next(true);\r\n this.closeModal(content);\r\n this.uploadDataBase(row);\r\n this.archivos=[];\r\n this.getList();\r\n this.isUpdating = false;\r\n }\r\n else{\r\n Swal.fire(this.translations.document, result, 'success');\r\n this.archivos=[];\r\n this.getList();\r\n }\r\n });\r\n }\r\n\r\n public uploadDataBase(row:any){\r\n\r\n var par_url = UPDATE_WORK_AUTH;\r\n\r\n var to:any;\r\n to={};\r\n to.LastModifierUser = this.userinfo.logon;\r\n to.Wa_DateBegin = row['date_init'] ;\r\n to.Wa_DaTeend = row['date_end'];\r\n to.CloseWorkerAuth = 'C',\r\n to.WorkAuthId = row['WorkAuthId'];\r\n to.CompanyID = row['CompanyID'];\r\n to.FileName = this.namefile;\r\n to.WorkSubDescription = row['work_sub_description'];\r\n console.log(to);\r\n\r\n this.srv.postCall(par_url, to).subscribe(x => {\r\n this.isCreating = false;\r\n Swal.close();\r\n if (x.success) {\r\n this.reload.next(true);\r\n Swal.fire(this.translations.updated, x.msg, 'success');\r\n this.getList();\r\n\r\n }\r\n }, err => {\r\n Swal.close();\r\n Swal.fire('Error');\r\n });\r\n }\r\n\r\n deleteItem(row) {\r\n this.ActivarItem(row.WorkAuthId,3);\r\n }\r\n\r\n downloadWork(idPermisoTrabajo){\r\n console.log(idPermisoTrabajo)\r\n const url = 'WorkAuth/GeneratePdfWork/' + idPermisoTrabajo;\r\n \r\n Swal.fire(\r\n {\r\n title: 'DESCARGANDO PDF',\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n this.srv.downloadFiles(url).subscribe( x => {\r\n console.log('Descarga correcta', x);\r\n importedSaveAs(x, 'PERMISO DE TRABAJO' + idPermisoTrabajo);\r\n Swal.close();\r\n });\r\n\r\n }\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ID{{'job_area' | translate}}{{'date_init' | translate}}{{'date_end' | translate}}{{'status' | translate}}\r\n {{'habidesa' | translate}}\r\n {{'action' | translate}}
{{row.WorkAuthId}}{{row.Area}}{{row.Wa_DateBegin.split('T')[0]}}{{row.Wa_DaTeend.split('T')[0]}}{{row.CloseWorkerAuth === 'A'? 'ABIERTO':'CERRADO'}}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'create_item' | translate}}

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

{{'head_work_permit'| translate}}

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

{{'detail_work_permit'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\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_details_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
{{'identification' | translate}}{{'worker' | translate}}{{'jobtitle'| translate}}{{'globalparam_typejob' | translate}}
{{row.NumberIdentification}}{{row.EmployeeName}}{{row.position}}{{row.JobtypeName}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'edit_item' | translate}}: {{c_obj['WorkAuthId']}}

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

{{'head_work_permit'| translate}}

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

{{'detail_work_permit'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\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_details_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
{{'identification' | translate}}{{'worker' | translate}}{{'jobtitle'| translate}}{{'globalparam_typejob' | translate}}
{{row.NumberIdentification}}{{row.EmployeeName}}{{row.position}}{{row.JobtypeName}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'must_enter_signed_permiss' | translate}} - {{'format_file_png_img' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\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 { AfterViewInit, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Storage } from '@ionic/storage';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Swal from 'sweetalert2';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n//import { isNull } from 'util';\r\nimport { Canvas, Cell, Columns, Ellipse, Img, Item, Line, PageReference, PdfMakeWrapper, Polyline, Rect, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\n\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_ALL_ENTRY_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_INDUCTION = environment.Global.API_GET_ALL_REQUEST_INDUCTION;\r\nconst GET_ALL_REQUEST_INDUCTION_BY_ID = environment.Global.API_GET_ALL_REQUEST_INDUCTION_BY_ID;\r\nconst GET_BY_ID_COMPANY_WORK_AUTH = environment.Global.API_GET_BY_ID_COMPANY_WORK_AUTH;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_DOCUMENTS_BY_ID = environment.Global.API_GET_DOCUMENTS_BY_ID;\r\n\r\nconst GET_REPORT_ENTRY_REQUEST = environment.Global.API_REPORT_ENTRY_REQUEST;\r\nconst GET_REPORT_REQUEST = environment.Global.API_REPORT_REQUEST;\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\n\r\n\r\n@Component({\r\n selector: 'app-reporting',\r\n templateUrl: './reporting.component.html',\r\n styleUrls: ['./reporting.component.css']\r\n})\r\n\r\n\r\nexport class ReportingComponent extends BaseCrudComponent implements OnInit {\r\n @ViewChild('thead', { static: true }) thead: ElementRef;\r\n userInfo;\r\n option_processes = null;\r\n date_init = null;\r\n date_end = null;\r\n list_processes = [{ title: 'induction_soli', id: 1 }, { title: 'request_soli', id: 2 }, { title: 'work_sol', id: 3 }]\r\n translations;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n request_selected = false;\r\n isSkretting = false;\r\n isClean = false;\r\n pageSize = 10;\r\n flag = false;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n col_value = 0;\r\n url_report_ = '';\r\n l = [];\r\n cantidadDeEvaluaciones = 0;\r\n private workbook: Workbook;\r\n private lista_titulos;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['Requiredby', 'CompanyName', 'WhoRequest', 'Name', 'WorkAuthId'];\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n // console.log(this.userInfo)\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n });\r\n this.getCompanies();\r\n if (this.request_selected) {\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledCompany = true;\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n selectRequest() {\r\n this.request_selected = true;\r\n this.rows = [];\r\n this.page = 0;\r\n this.pageTotal = 0;\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n this.url_report_ = '';\r\n if (this.isSkretting) {\r\n if (this.option_processes == 1) {\r\n this.col_value = 7\r\n } else if (this.option_processes == 2) {\r\n this.col_value = 8\r\n } else if (this.option_processes == 3) {\r\n this.col_value = 8\r\n }\r\n } else {\r\n if (this.option_processes == 1) {\r\n this.col_value = 6\r\n } else if (this.option_processes == 2) {\r\n this.col_value = 7\r\n } else if (this.option_processes == 3) {\r\n this.col_value = 8\r\n }\r\n }\r\n\r\n if (this.option_processes == 1) {\r\n this.url_report_ = GET_REPORT_REQUEST;\r\n } else if (this.option_processes == 2) {\r\n this.url_report_ = GET_REPORT_ENTRY_REQUEST;\r\n }\r\n // if (this.option_processes !== null) {\r\n // if (this.options_company !== null || this.options_company != -1) {\r\n // this.disabledRuc = true;\r\n // }\r\n // if (this.options_ruc !== null || this.options_ruc != -1) {\r\n // this.disabledCompany = true;\r\n // }\r\n // }\r\n\r\n\r\n this.options_ruc = null;\r\n this.options_company = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n }\r\n\r\n clearFilters() {\r\n\r\n this.option_processes = null;\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.url_report_ = '';\r\n this.disabledCompany = true;\r\n this.disabledRuc = true;\r\n // console.log(this.options_company);\r\n // console.log(this.options_ruc);\r\n }\r\n\r\n dataToFind() {\r\n this.isFind = true;\r\n\r\n if (this.option_processes === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n }\r\n\r\n if (this.date_end < this.date_init) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_error_date, this.translations.msg_error_date_end, 'error');\r\n }\r\n if (this.date_init !== null && this.date_end === null) {\r\n // this.date_init = null;\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_end_select, '', 'error');\r\n }\r\n if (this.date_end !== null && this.date_init === null) {\r\n // this.date_end = null;\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_init_select, '', 'error');\r\n }\r\n this.setUrlToFindData();\r\n }\r\n\r\n\r\n setUrlToFindData() {\r\n let url = '';\r\n // console.log(this.option_processes)\r\n switch (Number(this.option_processes)) {\r\n case 1:\r\n // console.log('entro aqui 1')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_REQUEST_INDUCTION_BY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_REQUEST_INDUCTION;\r\n this.isSkretting = true;\r\n }\r\n break;\r\n case 2:\r\n // console.log('entro aqui 2')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n url = GET_ALL_ENTRY_REQUEST;\r\n }\r\n break;\r\n default:\r\n // console.log('entro aqui 3')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_BY_ID_COMPANY_WORK_AUTH + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\n this.isSkretting = true;\r\n }\r\n break;\r\n }\r\n // console.log(url);\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n\r\n getListFromApi(url) {\r\n // console.log(this.option_processes)\r\n\r\n this.isFind = true;\r\n // console.log(url)\r\n let list_tmp = [];\r\n // console.log( this.date_init, this.date_end, this.option_processes,this.options_ruc, this.options_company);\r\n this.srv.getCall(url).subscribe(x => {\r\n // console.log(x.val)\r\n if (x.success) {\r\n if (x.val != null) {\r\n // console.log(x.val)\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((!(this.date_init===null) && !(this.date_end===null)) && (this.options_ruc == -1 || this.options_ruc == null) && (this.options_company == -1 || this.options_company == null) && this.option_processes !== null) {\r\n // console.log('Primer filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.CreationTime = this.formatOnlyDate(new Date(tmp.CreationTime));\r\n if (tmp.CreationTime >= this.date_init && tmp.CreationTime <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n } else if (this.option_processes == 2) {\r\n list_tmp.forEach(tmp => {\r\n tmp.StartDate = this.formatOnlyDate(new Date(tmp.StartDate));\r\n if (tmp.StartDate >= this.date_init && tmp.StartDate <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n } else if (this.option_processes == 3) {\r\n list_tmp.forEach(tmp => {\r\n tmp.Wa_DateBegin = this.formatOnlyDate(new Date(tmp.Wa_DateBegin));\r\n if (tmp.Wa_DateBegin >= this.date_init && tmp.Wa_DateBegin <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc != -1 || this.options_company != -1) && (!(this.date_init===null) && !(this.date_end===null))) {\r\n // console.log('Segundo filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.CreationTime = this.formatOnlyDate(new Date(tmp.CreationTime));\r\n if (tmp.CreationTime >= this.date_init && tmp.CreationTime <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n } else if (this.option_processes == 2) {\r\n list_tmp.forEach(tmp => {\r\n tmp.StartDate = this.formatOnlyDate(new Date(tmp.StartDate));\r\n if (tmp.StartDate >= this.date_init && tmp.StartDate <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n } else if (this.option_processes == 3) {\r\n list_tmp.forEach(tmp => {\r\n tmp.Wa_DateBegin = this.formatOnlyDate(new Date(tmp.Wa_DateBegin));\r\n if (tmp.Wa_DateBegin >= this.date_init && tmp.Wa_DateBegin <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc != -1 || this.options_company != -1) && ((this.date_init===null) && (this.date_end===null))) {\r\n if (this.isSkretting) {\r\n // console.log('SKRETTING')\r\n // console.log(this.options_company, this.options_ruc, this.option_processes);\r\n if (this.option_processes == 1 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro induccion')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if (this.option_processes == 2 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro ingreso')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if (this.option_processes == 3 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro trabajo')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.option_processes == 1 || this.option_processes == 2 || this.option_processes == 3) && ((this.options_ruc == null || this.options_ruc == -1) || (this.options_company == null || this.options_company == -1))) {\r\n // console.log('Tercer filtro cualquiera sin ruc o compañia skretting')\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n } else {\r\n if ((this.option_processes == 1 || this.option_processes == 2 || this.option_processes == 3) && ((this.options_ruc == null || this.options_ruc == -1) || (this.options_company == null || this.options_company == -1))) {\r\n // console.log('Tercer filtro cualquiera sin ruc o compañia contratista')\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n }\r\n }\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n // console.log(this.rows)\r\n\r\n this.filterAll();\r\n this.isFind = false;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1 || this.options_ruc == null) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n // console.log(this.options_company);\r\n if (this.options_company == -1 || this.options_company == null) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n let listInReport = this.rows;\r\n const pdf = new PdfMakeWrapper();\r\n let nameDoc = '';\r\n let title = '';\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n\r\n if (this.option_processes == 1) {\r\n nameDoc = 'Solicitud de inducción';\r\n title = this.translations.msg_rep_induction;\r\n } else if (this.option_processes == 2) {\r\n nameDoc = 'Solicitud de ingreso';\r\n title = this.translations.msg_rep_entry_request;\r\n } else if (this.option_processes == 3) {\r\n nameDoc = 'Permiso de trabajo';\r\n title = this.translations.msg_rep_worker_auth;\r\n }\r\n\r\n if (this.isSkretting) {\r\n if (this.option_processes == 1) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.theme_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.duration_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.calification_inducton_evaluation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_repeat_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n } else if (this.option_processes == 2) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_docs).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_eval).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_sanct).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.habilitation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.colors).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.asist).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n } else if (this.option_processes == 3) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_risk).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_auths).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_open).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_closed).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n }\r\n } else {\r\n if (this.option_processes == 1) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.theme_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.duration_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.calification_inducton_evaluation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_repeat_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n } else if (this.option_processes == 2) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_docs).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_eval).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_sanct).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.habilitation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.colors).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.asist).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n } else if (this.option_processes == 3) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.level).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_risk).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_open).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_closed).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', '*', '*', '*', '*', '*', '*', '*'\r\n ]\r\n }\r\n\r\n }\r\n // INFORMATION IN TITLE NAV\r\n pdf.info({\r\n title: `${nameDoc}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: 10,\r\n alignment: 'justify'\r\n });\r\n\r\n pdf.pageMargins([40, 110, 40, 110]);\r\n pdf.pageOrientation(\"landscape\");\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n\r\n // pdf.background(\r\n // await new Img('../../../../assets/images/Skretting-footer.png').absolutePosition(0, 515).width(900).build() //505\r\n // )\r\n // console.log(lista_titulos)\r\n // console.log(await this.converDataToRow(listInReport))\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userInfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userInfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...await this.converDataToRow(listInReport)\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n // .widths('*')\r\n .alignment('center')\r\n .end,\r\n ]\r\n )\r\n\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n let nombre = '';\r\n if (this.option_processes == 1) {\r\n nombre = 'Reporte de Solicitudes de Inducción';\r\n } else if (this.option_processes == 2) {\r\n nombre = 'Reporte de Solicitudes de Ingreso';\r\n } else if (this.option_processes == 3) {\r\n nombre = 'Reporte de Permisos de Trabajo';\r\n }\r\n pdf.create().download(nombre);\r\n Swal.close();\r\n }\r\n\r\n async converDataToRow(list) {\r\n let nueva_lista = [];\r\n this.l = [];\r\n if (this.url_report_ !== '' && this.url_report_ !== ' ') {\r\n await this.srv.getCall(this.url_report_).toPromise().then(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n x.val.forEach(element => {\r\n if (this.option_processes == 1) {\r\n if (element.RequestDetails.length > 0) {\r\n element.RequestDetails.forEach(emp => {\r\n if (emp.evaluations.length > 0) {\r\n emp.evaluations.forEach(evals => {\r\n let obj = ['', '', '', '', '', '', 0, '', 0, 0, '']\r\n obj[0] = emp.Name;\r\n obj[1] = emp.NumberIdentification;\r\n obj[2] = element.Name;\r\n obj[3] = element.Ruc;\r\n obj[4] = evals.nameEval;\r\n obj[5] = evals.lastregistereval.creationtime.split('T')[0];\r\n obj[7] = evals.lastregistereval.score;\r\n if (evals.status_end == 'AP') {\r\n obj[8] = 'APROBADO';\r\n } else if (evals.status_end == 'RP') {\r\n obj[8] = 'REPROBADO';\r\n }\r\n obj[6] = Number((evals.timeEval / 60).toFixed(2));\r\n obj[9] = evals.repeticiones;\r\n obj[10] = element.RequestId;\r\n this.l.push(obj)\r\n });\r\n } else {\r\n let obj = ['', '', '', '', '', '', 0, '', 0, 0, '']\r\n obj[0] = emp.Name;\r\n obj[1] = emp.NumberIdentification;\r\n obj[2] = element.Name;\r\n obj[3] = element.Ruc;\r\n obj[10] = element.RequestId;\r\n this.l.push(obj);\r\n }\r\n });\r\n } else {\r\n let obj = ['', '', '', '', '', '', '', 0, '', 0, 0, '']\r\n obj[2] = element.Name;\r\n obj[3] = element.Ruc;\r\n obj[11] = element.RequestId;\r\n this.l.push(obj);\r\n }\r\n } else if (this.option_processes == 2) {\r\n if (element._employee_status.length > 0) {\r\n element._employee_status.forEach(emp => {\r\n let obj = ['', '', '', '', '', '', '', '', '', '', '', {}, ''];\r\n obj[0] = emp.Name;\r\n obj[1] = emp.NumberIdentification;\r\n obj[2] = element.NameCompany;\r\n obj[3] = element.RucCompany;\r\n obj[4] = element.EntryRequestId;\r\n obj[5] = element.StartDate.split('T')[0];\r\n obj[6] = element.EndDte.split('T')[0];\r\n obj[7] = emp.Status_Document;\r\n obj[8] = emp.Status_Evaluation;\r\n obj[9] = (emp.Status_Faltas == 'SI' ? 'Sancionado' : 'No sancionado')\r\n obj[10] =\r\n (emp.Status_Document == 'Validado' && emp.Status_Evaluation == 'Aprobado' && emp.Status_Faltas == 'NO')\r\n ? 'Habilitado' : 'No Habilitado';\r\n obj[11] = obj[10] == 'Habilitado' ? new Cell(new Txt('').end).fillColor('green').end : new Cell(new Txt('').end).fillColor('red').end;\r\n obj[12] = obj[10] == 'Habilitado' ? 'Si' : 'No';\r\n this.l.push(obj);\r\n });\r\n }\r\n }\r\n })\r\n list.forEach(element => {\r\n this.l.forEach(worker => {\r\n if (this.option_processes == 1) {\r\n if (element.RequestId == worker[10]) {\r\n if (this.isSkretting) {\r\n nueva_lista.push(\r\n [worker[0], worker[1], worker[2], worker[3], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9]]\r\n )\r\n } else {\r\n nueva_lista.push(\r\n [worker[0], worker[1], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9]]\r\n )\r\n }\r\n }\r\n } else if (this.option_processes == 2) {\r\n if (element.EntryRequestId == worker[4]) {\r\n if (this.isSkretting) {\r\n nueva_lista.push(\r\n [worker[0], worker[1], worker[2], worker[3], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9], worker[10], worker[11], worker[12]]\r\n )\r\n } else {\r\n nueva_lista.push(\r\n [worker[0], worker[1], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9], worker[10], worker[11], worker[12]]\r\n )\r\n }\r\n }\r\n }\r\n });\r\n });\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n return nueva_lista;\r\n } else {\r\n if (this.option_processes == 3) {\r\n let map = new Map();\r\n list.forEach(element => {\r\n if (this.isSkretting) {\r\n if (!map.has(element.CompanyID)) {\r\n map.set(element.CompanyID, [\r\n element.Name,\r\n element.Ruc,\r\n element.Risk ? 1 : 0,\r\n 1,\r\n element.CloseWorkerAuth == 'A' ? 1 : 0,\r\n element.CloseWorkerAuth == 'C' ? 1 : 0,\r\n element.QuantityWorker\r\n ])\r\n } else {\r\n let tmp = map.get(element.CompanyID);\r\n tmp[2] = element.Risk ? tmp[2] + 1 : tmp[2];\r\n tmp[3] = tmp[3] + 1;\r\n tmp[4] = element.CloseWorkerAuth == 'A' ? tmp[4] + 1 : tmp[4];\r\n tmp[5] = element.CloseWorkerAuth == 'C' ? tmp[5] + 1 : tmp[5];\r\n tmp[6] = tmp[6] + element.QuantityWorker;\r\n }\r\n } else {\r\n if (!map.has(element.CompanyID)) {\r\n map.set(element.CompanyID, [\r\n element.WorkAuthId,\r\n element.Wa_DateBegin.split('T')[0],\r\n element.Wa_DaTeend.split('T')[0],\r\n element.PlantaName,\r\n element.Risk ? 1 : 0,\r\n element.QuantityWorker,\r\n element.CloseWorkerAuth == 'C' ? 1 : 0,\r\n element.CloseWorkerAuth == 'A' ? 1 : 0,\r\n ])\r\n } else {\r\n let tmp = map.get(element.CompanyID);\r\n tmp[4] = element.Risk ? tmp[4] + 1 : tmp[4];\r\n tmp[5] = tmp[5] + element.QuantityWorker;\r\n tmp[6] = element.CloseWorkerAuth == 'C' ? tmp[6] + 1 : tmp[6];\r\n tmp[7] = element.CloseWorkerAuth == 'A' ? tmp[7] + 1 : tmp[7];\r\n }\r\n }\r\n });\r\n for (let [key, value] of map) {\r\n nueva_lista.push(value)\r\n }\r\n return nueva_lista\r\n }\r\n }\r\n }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n downloadExcel() {\r\n\r\n this.workbook = new Workbook();\r\n let nombreXLSX = \"Reporte de Ordenes de compra.xlsx\";\r\n if (this.option_processes == 1) {\r\n nombreXLSX = \"Documentos de trabajadores externos.xlsx\";\r\n\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.job_applicant,\r\n this.translations.company,\r\n this.translations.level,\r\n this.translations.date_creation,\r\n this.translations.worker_quantity,\r\n this.translations.request_induction_quantity,\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.job_applicant,\r\n this.translations.level,\r\n this.translations.date_creation,\r\n this.translations.worker_quantity,\r\n this.translations.request_induction_quantity,\r\n\r\n ];\r\n\r\n }\r\n } else if (this.option_processes == 2) {\r\n nombreXLSX = \"Trabajadores de los contratistas registrados.xlsx\";\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.company,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.emergency\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.emergency\r\n\r\n ];\r\n\r\n }\r\n\r\n } else if (this.option_processes == 3) {\r\n nombreXLSX = \"Trabajadores de los contratistas registrados.xlsx\";\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.company,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.work_status,\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.work_status,\r\n\r\n ];\r\n\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n this.ContainsExcel();\r\n this.workbook.creator = \"Comex\";\r\n this.workbook.xlsx.writeBuffer().then((data) => {\r\n const blob = new Blob([data]);\r\n fs.saveAs(blob, nombreXLSX);\r\n })\r\n }\r\n private ContainsExcel() {\r\n const sheet = this.workbook.addWorksheet('Sheet');\r\n\r\n sheet.getColumn(\"A\").width = 8;\r\n sheet.getColumn(\"B\").width = 20;\r\n sheet.getColumn(\"C\").width = 20;\r\n sheet.getColumn(\"D\").width = 20;\r\n sheet.getColumn(\"E\").width = 20;\r\n sheet.getColumn(\"F\").width = 20;\r\n sheet.getColumn(\"G\").width = 20;\r\n sheet.getColumn(\"H\").width = 20;\r\n sheet.getColumn(\"I\").width = 20;\r\n sheet.getColumn(\"J\").width = 20;\r\n sheet.getColumn(\"K\").width = 20;\r\n sheet.getColumn(\"L\").width = 20;\r\n sheet.getColumn(\"M\").width = 20;\r\n sheet.getColumn(\"N\").width = 20;\r\n sheet.getColumn(\"O\").width = 20;\r\n sheet.getColumn(\"P\").width = 20;\r\n sheet.getColumn(\"Q\").width = 20;\r\n sheet.getColumn(\"R\").width = 20;\r\n sheet.getColumn(\"S\").width = 20;\r\n sheet.getColumn(\"T\").width = 20;\r\n sheet.getColumn(\"U\").width = 20;\r\n sheet.getColumn(\"V\").width = 20;\r\n sheet.getColumn(\"W\").width = 20;\r\n sheet.getColumn(\"X\").width = 20;\r\n sheet.getColumn(\"Y\").width = 20;\r\n sheet.getColumn(\"Z\").width = 20;\r\n // ALINEAR COLUMNAS\r\n sheet.columns.forEach((column) => {\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n });\r\n\r\n\r\n\r\n // establecer los valores de las columnas y del header\r\n\r\n //establecer los header\r\n const headerRow = sheet.getRow(1);\r\n // console.log(\"Lista de titulos:\", this.lista_titulos);\r\n headerRow.values = this.lista_titulos;\r\n // headerRow.values = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];\r\n headerRow.font = { bold: true, size: 12 };\r\n\r\n // agregar los datos a las filas\r\n const rowsToInsert = sheet.getRows(2, this.rows.length);\r\n\r\n for (let index = 0; index < rowsToInsert.length; index++) {\r\n const itemData = this.rows[index]; //obtenemos el item segun el index de la iteraciòn(recorrido)\r\n const row = rowsToInsert[index]; //obtenemos la primera fila segun el index de la iteraciòn(recorrido)\r\n // los valores de itemData seran asignados a row (fila actual en la iteraciòn)\r\n\r\n if (this.option_processes == 1) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n itemData.RequestId,\r\n itemData.WhoRequest,\r\n itemData.namecompany,\r\n itemData.plantaname,\r\n itemData.CreationTime == null ? \"\" : itemData.CreationTime.split('T')[0].split('T')[0],\r\n itemData.listRequestdetail.length,\r\n itemData.contadorEvaluations,\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.EmployeeName,\r\n itemData.Name,\r\n itemData.NameDoc,\r\n itemData.status_name\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.RequestId,\r\n itemData.WhoRequest,\r\n itemData.plantaname,\r\n itemData.CreationTime == null ? \"\" : itemData.CreationTime.split('T')[0].split('T')[0],\r\n itemData.listRequestdetail.length,\r\n itemData.contadorEvaluations,\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.EmployeeName,\r\n itemData.Name,\r\n itemData.NameDoc,\r\n itemData.status_name\r\n ];\r\n\r\n }\r\n } else if (this.option_processes == 2) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n\r\n itemData.EntryRequestId,\r\n itemData.Requiredby,\r\n itemData.CompanyName,\r\n itemData.PlantaName,\r\n itemData.StartDate == null ? \"\" : itemData.StartDate.split('T')[0],\r\n itemData.EndDte.split('T')[0],\r\n itemData.RequestDetails.length,\r\n itemData.Emergency\r\n\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.EntryRequestId,\r\n itemData.Requiredby,\r\n itemData.PlantaName,\r\n itemData.StartDate == null ? \"\" : itemData.StartDate.split('T')[0],\r\n itemData.EndDte.split('T')[0],\r\n itemData.RequestDetails.length,\r\n itemData.Emergency\r\n\r\n ];\r\n\r\n }\r\n\r\n } else if (this.option_processes == 3) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n\r\n itemData.WorkAuthId,\r\n itemData.Requiredby,\r\n itemData.Name,\r\n itemData.PlantaName,\r\n itemData.Wa_DateBegin == null ? \"\" : itemData.Wa_DateBegin.split('T')[0],\r\n itemData.Wa_DaTeend == null ? \"\" : itemData.Wa_DaTeend.split('T')[0],\r\n itemData.QuantityWorker,\r\n itemData.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto',\r\n\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.WorkAuthId,\r\n itemData.Requiredby,\r\n itemData.PlantaName,\r\n itemData.Wa_DateBegin == null ? \"\" : itemData.Wa_DateBegin.split('T')[0],\r\n itemData.Wa_DaTeend == null ? \"\" : itemData.Wa_DaTeend.split('T')[0],\r\n itemData.QuantityWorker,\r\n itemData.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto',\r\n\r\n ];\r\n\r\n }\r\n\r\n }\r\n }\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'job_applicant' | translate}}{{'company' | translate}}{{'level' | translate}} {{'date_creation' | translate}}{{'worker_quantity' | translate}}{{'request_induction_quantity' | translate}}
{{row.RequestId}}{{row.WhoRequest}}{{row.namecompany}}{{row.plantaname}}{{row.CreationTime.split('T')[0]}}{{row.listRequestdetail.length}}{{row.contadorEvaluations}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'requested_by' | translate}}{{'company' | translate}}{{'level' | translate}} {{'date_init' | translate}}{{'date_end' | translate}}{{'worker_quantity' | translate}}{{'emergency' | translate}}
{{row.EntryRequestId}}{{row.Requiredby}}{{row.CompanyName}}{{row.PlantaName}}{{row.StartDate.split('T')[0]}}{{row.EndDte.split('T')[0]}}{{row.RequestDetails.length}}{{row.Emergency ? ('emergency' | translate ): ('no_emergency' | translate)}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'requested_by' | translate}}{{'company' | translate}}{{'level' | translate}} {{'date_init' | translate}}{{'date_end' | translate}}{{'worker_quantity' | translate}}{{'work_status' | translate}}
{{row.WorkAuthId}}{{row.Requiredby}}{{row.Name}}{{row.PlantaName}}{{row.Wa_DateBegin.split('T')[0]}}{{row.Wa_DaTeend.split('T')[0]}}{{row.QuantityWorker}}{{row.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto'}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, ElementRef, OnInit } from '@angular/core';\r\nimport {FormControl, FormGroup, NgForm, Validators} from '@angular/forms';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport {Storage} from \"@ionic/storage\";\r\nimport {BaseCrudComponent} from \"../base-crud/base-crud.component\";\r\nimport {DEBUG} from \"@angular/compiler-cli/src/ngtsc/logging/src/console_logger\";\r\n//import { isNull } from 'util';\r\n\r\nconst GET_ALL_EMPLOYEE = environment.Global.API_ALLEMPLOYEE;\r\nconst API_ALLEMPLOYEEBYID = environment.Global.API_ALLEMPLOYEEBYID;\r\nconst GET_ENTER_OUT_WORK_BY_ID = environment.Global.API_GET_ENTER_OUT_WORK_BY_ID;\r\nconst GET_ALL_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst CREATE_ENTER_OUT_WORK = environment.Global.API_CREATE_ENTER_OUT_WORK;\r\nconst UPDATE_ENTER_OUT_WORK = environment.Global.API_UPDATE_ENTER_OUT_WORK;\r\nconst VALIDATE_QR_EMPLOYEE = environment.Global.API_VALIDATE_QR_EMPLOYEE;\r\nconst API_CREATE_ALCOHOLCHECK = environment.Global.API_CREATE_ALCOHOLCHECK;\r\n@Component({\r\n selector: 'app-qrcode-validation',\r\n templateUrl: './qrcode-validation.component.html',\r\n styleUrls: ['./qrcode-validation.component.css']\r\n})\r\nexport class QrcodeValidationComponent extends BaseCrudComponent implements OnInit, AfterViewInit {\r\n containData = false;\r\n form: FormGroup;\r\n title_button;\r\n entryRequestId = '';\r\n qrValid = false;\r\n isCreating;\r\n workerId = '';\r\n worker;\r\n entryRequest;\r\n entryRequestValidDate = false;\r\n endOutWorker;\r\n translations;\r\n listTools = [];\r\n listCars = [];\r\n newWorkerInDb;\r\n listaRazones = [];\r\n estadoDcumentos = \"\";\r\n havedata = null;\r\n detalleDocumentos = [];\r\n userinfo: any;\r\n\r\n constructor(private elementRef: ElementRef,\r\n private apiService: ApiService,\r\n public translate: TranslateService,\r\n private route: ActivatedRoute, srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,) {\r\n super(srv, modalService, storage, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.createForm();\r\n this.route.queryParams.subscribe(params => {\r\n this.entryRequestId = params['id'];\r\n this.workerId = params['worker']\r\n });\r\n this.getWorkerById();\r\n this.getEntryRequest();\r\n this.endOutWorker = {};\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.elementRef.nativeElement.ownerDocument\r\n .body.style.backgroundColor = '#E4E3E3'; // D0314B rojo skretting\r\n }\r\n\r\n createForm() {\r\n this.form = new FormGroup({\r\n 'worker': new FormControl({value: null, disabled: true}, [Validators.required]),\r\n 'typeEmployeeName': new FormControl({value: null, disabled: true}, [Validators.required]),\r\n 'company': new FormControl({value: null, disabled: true}, [Validators.required]),\r\n 'fromDateWork': new FormControl({value: null, disabled: true}, [Validators.required]),\r\n 'toDateWork': new FormControl({value: null, disabled: true}, [Validators.required]),\r\n 'work': new FormControl({value: null, disabled: true}, [Validators.required]),\r\n 'NumberIdentification': new FormControl({value: null, disabled: true}, [Validators.required])\r\n });\r\n }\r\n\r\n\r\n\r\n async getEntryRequest() {\r\n let validateUrl = VALIDATE_QR_EMPLOYEE + this.workerId + '-'+ this.entryRequestId;\r\n await this.apiService.getCall(validateUrl).toPromise().then(x => {\r\n //console.log(x.val)\r\n if (x.val != null) {\r\n let empleado: any = x.val;\r\n this.containData = true;\r\n this.endOutWorker['CompanyName'] = empleado.namecompany;\r\n this.endOutWorker['EmployeeId'] = empleado.EmployeeId;\r\n this.endOutWorker['EmployeeName'] = empleado.Name;\r\n this.endOutWorker['typeEmployeeName'] = empleado.typeEmployeeName;\r\n this.endOutWorker['CompanyId'] = empleado.CompanyID;\r\n this.endOutWorker['StartDate'] = empleado.startDateRequest.split('T')[0];\r\n this.endOutWorker['EndDte'] = empleado.endDateRequest.split('T')[0];\r\n this.endOutWorker['ImageProfile'] = empleado.Picture;\r\n this.endOutWorker['WorkDescription'] = empleado.WorkDescription;\r\n this.endOutWorker['PlantaId'] = empleado.PlantaId;\r\n this.endOutWorker['Status_doc'] = empleado.Status_doc == \"VALIDADO\" ? \"Validado\" : \"Pendiente\";\r\n this.endOutWorker['Status_evaluation'] = empleado.Status_evaluation == \"APROBADO\" ? \"Aprobado\" : \"Pendiente\";\r\n this.endOutWorker['Status_faltas'] = empleado.Status_faltas;\r\n this.endOutWorker['statusIngresoFecha'] = empleado.statusIngresoFecha;\r\n this.endOutWorker['ListsToolsDetails'] = empleado._ListsToolsDetails;\r\n this.endOutWorker['VehicleByEmployee'] = empleado._VehicleByEmployee;\r\n this.endOutWorker['NumberIdentification'] = empleado.NumberIdentification;\r\n if (empleado.statusGeneral == \"Ingreso válido\") {\r\n this.qrValid = true;\r\n } else {\r\n if (empleado.emergency) {\r\n if (this.endOutWorker['statusIngresoFecha'] == \"DF\") {\r\n this.qrValid = true;\r\n } else {\r\n this.listaRazones.push(\r\n {\r\n name: \"Estado de documentos\",\r\n status : this.endOutWorker['Status_doc'],\r\n color: this.endOutWorker['Status_doc'] == \"Validado\" ? 'green' : 'red'\r\n },\r\n {\r\n name: \"Estado de evaluaciones\",\r\n status : this.endOutWorker['Status_evaluation'],\r\n color: this.endOutWorker['Status_evaluation'] != \"Pendiente\" ? 'green' : 'red'\r\n },\r\n {\r\n name: \"Estado de faltas\",\r\n status : this.endOutWorker['Status_faltas'] == 'S'? 'Tiene Falta' : 'Sin falta',\r\n color: this.endOutWorker['Status_faltas'] == 'S'? 'red' : 'green'\r\n },\r\n {\r\n name: \"Fecha de ingreso\",\r\n status : this.endOutWorker['statusIngresoFecha'] == \"DF\" ? 'Fecha Válida' : 'Fecha Inválida',\r\n color: this.endOutWorker['statusIngresoFecha'] == \"DF\" ? 'green' : 'red'\r\n },\r\n )\r\n this.qrValid = false;\r\n }\r\n } else {\r\n this.qrValid = false;\r\n this.listaRazones.push(\r\n {\r\n name: \"Estado de documentos\",\r\n status : this.endOutWorker['Status_doc'],\r\n color: this.endOutWorker['Status_doc'] == \"Validado\" ? 'green' : 'red'\r\n },\r\n {\r\n name: \"Estado de evaluaciones\",\r\n status : this.endOutWorker['Status_evaluation'],\r\n color: this.endOutWorker['Status_evaluation'] != \"Pendiente\" ? 'green' : 'red'\r\n },\r\n {\r\n name: \"Estado de faltas\",\r\n status : this.endOutWorker['Status_faltas'] == 'S'? 'Tiene Falta' : 'Sin falta',\r\n color: this.endOutWorker['Status_faltas'] == 'S'? 'red' : 'green'\r\n },\r\n {\r\n name: \"Fecha de ingreso\",\r\n status : this.endOutWorker['statusIngresoFecha'] == \"DF\" ? 'Fecha Válida' : 'Fecha Inválida',\r\n color: this.endOutWorker['statusIngresoFecha'] == \"DF\" ? 'green' : 'red'\r\n },\r\n )\r\n }\r\n }\r\n } else {\r\n this.containData = false;\r\n }\r\n });\r\n }\r\n\r\n async getWorkerById() {\r\n let urlWorker = GET_ENTER_OUT_WORK_BY_ID + this.workerId + '-' + this.entryRequestId;\r\n await this.apiService.getCall(urlWorker).toPromise().then(x => {\r\n if(x.success){\r\n if(x.val != null){\r\n this.newWorkerInDb = x.val;\r\n } else {\r\n this.newWorkerInDb = [];\r\n return;\r\n }\r\n } else {\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n confirmAdmission() {\r\n this.isCreating = true;\r\n let fechaEnLista = this.formatDate(new Date());\r\n if (this.newWorkerInDb.length == 0) {\r\n let obj = {\r\n EmployeeId: this.workerId,\r\n CompanyId: this.endOutWorker['CompanyId'],\r\n DateEnter: fechaEnLista,\r\n PlantaID: this.endOutWorker['PlantaId'],\r\n EntryRequestId : this.entryRequestId\r\n }\r\n this.apiService.postCall(CREATE_ENTER_OUT_WORK, obj).toPromise().then( data =>{\r\n if(data.success){\r\n this.isCreating = false;\r\n Swal.fire(this.translations.msg_create, '', 'success');\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n }\r\n },catchError =>{\r\n this.isCreating = false;\r\n Swal.fire(catchError.message, '', 'error');\r\n });\r\n } else {\r\n let fechasEntrada = '';\r\n let fechasSalida = '';\r\n fechasEntrada = this.newWorkerInDb[0]['DateEnter'] !== null ? this.newWorkerInDb[0]['DateEnter'] : '';\r\n fechasSalida = this.newWorkerInDb[0]['DateOut'] !== null ? this.newWorkerInDb[0]['DateOut'] : '';\r\n\r\n let listaIEntradas = [];\r\n let listaFSalidas = [];\r\n if (fechasEntrada !== ''){\r\n listaIEntradas = fechasEntrada.split(',');\r\n }\r\n if (fechasSalida !== ''){\r\n listaFSalidas = fechasSalida.split(',');\r\n }\r\n let estado = 'Entro';\r\n if (listaIEntradas.length > listaFSalidas.length) {\r\n estado = 'Salio';\r\n } else if (listaIEntradas.length < listaFSalidas.length) {\r\n estado = 'Entro';\r\n } else if (listaIEntradas.length === listaFSalidas.length) {\r\n estado = 'Entro';\r\n }\r\n\r\n if ( estado === 'Entro') {\r\n listaIEntradas.push(fechaEnLista);\r\n } else {\r\n listaFSalidas.push(fechaEnLista);\r\n }\r\n let stringFechasEntradas = listaIEntradas.length > 1 ? listaIEntradas.join(',') : listaIEntradas[0];\r\n let stringFechasSalidas = listaFSalidas.length > 1 ? listaFSalidas.join(',') : listaFSalidas[0];\r\n\r\n let obj = {\r\n EmployeeId : this.workerId,\r\n CompanyId : this.endOutWorker['CompanyId'],\r\n DateEnter : stringFechasEntradas,\r\n DateOut : stringFechasSalidas,\r\n Status : estado,\r\n }\r\n this.apiService.postCall(UPDATE_ENTER_OUT_WORK, obj).toPromise().then( data =>{\r\n if(data.success){\r\n this.isCreating = false;\r\n Swal.fire(this.translations.msg_update, '', 'success');\r\n } else {\r\n this.isCreating = false;\r\n Swal.fire(data.msg, '', 'error');\r\n }\r\n },catchError =>{\r\n this.isCreating = false;\r\n Swal.fire(catchError.message, '', 'error');\r\n });\r\n }\r\n }\r\n\r\n public openToolsModal (content) {\r\n this.listTools = this.endOutWorker['ListsToolsDetails'];\r\n if (this.listTools.length == 0) {\r\n Swal.fire(this.translations.dont_have_tools, '','info');\r\n } else {\r\n this.modalService.open(content, { backdrop: 'static', keyboard : false, size: 'lg' });\r\n }\r\n }\r\n\r\n public openCarsModal (content) {\r\n this.listCars = this.endOutWorker['VehicleByEmployee'];\r\n this.havedata = null;\r\n if (this.listCars.length == 0) {\r\n Swal.fire(this.translations.dont_have_vehicle, '','info');\r\n } else {\r\n this.listCars.forEach( car => {\r\n let cont = 0;\r\n let contador = 0;\r\n if (car._DocumentsVehicle.length > 0) {\r\n car._DocumentsVehicle.forEach(documento => {\r\n if (documento.Obligatorio == true) {\r\n contador ++;\r\n }\r\n if (documento.Status == \"V\" && documento.Obligatorio == true) {\r\n cont ++;\r\n }\r\n })\r\n } else {\r\n cont --;\r\n }\r\n if (contador == cont) {\r\n car.estadoGeneral = \"Aprobado\";\r\n } else {\r\n car.estadoGeneral = \"Rechazado\";\r\n }\r\n });\r\n this.modalService.open(content, { backdrop: 'static', keyboard : false, size: 'lg' });\r\n }\r\n }\r\n\r\n\r\n public seeDetailDocument(document) {\r\n this.detalleDocumentos = document;\r\n if (this.detalleDocumentos.length > 0) {\r\n this.havedata = true;\r\n } else {\r\n this.havedata = false;\r\n }\r\n // console.log(this.detalleDocumentos)\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}`: (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}`: date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}`: (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}`: date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}`: date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}`: date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}`: date.getSeconds().toString());\r\n }\r\n async openUpdateModal( content: any) {\r\n this.modalService.open( content ,{ backdrop: 'static', keyboard: true, size: 'm', centered: true });\r\n\r\n }\r\n public closeModal(content: any) {\r\n this.modalService.dismissAll(content);\r\n }\r\n public createAlcoholCheck(modal:any){\r\n debugger\r\n\r\n if(this.validForm(this.c_obj)){\r\n Swal.fire(this.translations.msg_all_required, '', 'error');\r\n return;\r\n }\r\n\r\n this.c_obj[\"EmployeeId\"]=this.endOutWorker.EmployeeId;\r\n this.c_obj[\"VerificateUser\"]=this.userinfo[\"name\"];\r\n this.srv.postCall(API_CREATE_ALCOHOLCHECK, this.c_obj).subscribe(resp=>{\r\n if(resp.success){\r\n Swal.fire(this.translations.AlcoholCheck, '', 'success');\r\n this.closeModal(modal)\r\n }\r\n })\r\n }\r\n public validForm(form:any):boolean{\r\n let mygroup:any = {};\r\n mygroup = new FormGroup({\r\n //'Observation': new FormControl(form.Observation, [Validators.required]),\r\n //'Photo': new FormControl(form.Photo, [Validators.required]),\r\n 'StatusId': new FormControl(form.StatusId, [Validators.required]),\r\n\r\n });\r\n return mygroup.invalid;\r\n }\r\n public getImage({ target }) {\r\n let image = target.files;\r\n const reader = new FileReader();\r\n reader.readAsDataURL(image[0]);\r\n reader.onload = (_event) => {\r\n // cambia la foto cuando se va a editar\r\n if (this.c_obj.Photo !== undefined) {\r\n this.c_obj.Photo = reader.result;\r\n }\r\n\r\n }\r\n }\r\n}\r\n","\r\n
\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_details_request' | translate}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n   {{'company' | translate}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n   {{'worker' | translate}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n   {{'ci' | translate}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n   {{'jobtitle' | translate}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n   {{'init_work' | translate}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n   {{'end_work' | translate}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n   {{'job_to_do' | translate}}\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n

{{'msg_worker_in' | translate}}

\r\n

{{'msg_worker_out' | translate}}

\r\n
\r\n

0\" style=\"text-align: left;\">{{'reasons' | translate}}

\r\n
    0\">\r\n
  • \r\n {{item.name}} : {{item.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

AlcoholCheck

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n Aprobado para el ingreso\r\n Negado para el ingreso\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\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 Swal from 'sweetalert2';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoginService } from '../../../services/authentication/login.service';\r\nimport { PermissionService } from 'src/app/services/authentication/permission.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport {isNumeric} from \"rxjs/util/isNumeric\";\r\nimport {Storage} from \"@ionic/storage\";\r\n\r\n@Component({\r\n selector: 'app-reportshome',\r\n templateUrl: './reportshome.component.html',\r\n styleUrls: ['./reportshome.component.css']\r\n})\r\nexport class ReportshomeComponent implements OnInit {\r\n\r\n translations:any;\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n items = [];\r\n permissions = [];\r\n userinfo: any;\r\n \r\n constructor(\r\n public _router: Router,\r\n public translate: TranslateService,\r\n public auth: LoginService,\r\n public permission: PermissionService,\r\n private storage: Storage,\r\n ) { }\r\n\r\n ngOnInit() {\r\n let id = environment.Global.Menus.Reportes // menu reportes\r\n this.permission.getModulesByMenuId(id).then(x => {\r\n x.forEach(element => {\r\n if (element.principal == 1) {\r\n this.items.push(element)\r\n }\r\n });\r\n })\r\n this.storage.get('userinfo').then(x => {\r\n this.userinfo = x;\r\n });\r\n this.auth.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n }\r\n\r\n hasPermission(str:string){\r\n let flag = false;\r\n this.permissions.forEach(permission => {\r\n if(permission.Permission == str) {\r\n flag = true;\r\n }\r\n })\r\n return flag;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
{{ row.title | translate }}
\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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\n\r\nimport { Storage } from '@ionic/storage';\r\nimport Swal from 'sweetalert2';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\n//import { isNull } from 'util';\r\n\r\nimport { Cell, Columns, Img, Item, Line, PageReference, PdfMakeWrapper, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\nimport { List } from 'pdfmake-wrapper/lib/definitions/list/list';\r\nimport { element } from 'protractor';\r\nimport {blobToB64} from \"../../docs/approvedocumentsbase/approvedocumentsbase.component\";\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_ALL_ENTRY_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_INDUCTION = environment.Global.API_GET_ALL_REQUEST_INDUCTION;\r\nconst GET_ALL_REQUEST_INDUCTION_BY_ID = environment.Global.API_GET_ALL_REQUEST_INDUCTION_BY_ID;\r\nconst GET_WORK_AUTH_BY_ID = environment.Global.API_GET_WORK_AUTH_BY_ID;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\nconst GET_DOCUMENTS_BY_ID = environment.Global.API_GET_DOCUMENTS_BY_ID;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_DOCUMENTS_ALL_PARAM = environment.Global.API_GET_DOCUMENTS_ALL;\r\nconst GET_DOCUMENTS_ALL_BY_COMPANYID = environment.Global.API_GET_DOCUMENTS_ALL_BY_COMPANYID;\r\nconst API_GET_REPORTS_EMPLOYEES_BY_COMPANY = environment.Global.API_GET_REPORTS_EMPLOYEES_BY_COMPANY;\r\nconst API_GET_REPORTS_VEHICLES_BY_COMPANY = environment.Global.API_REPORTS_VEHICLE_COMPANY;\r\nconst API_GET_DOCUMENTS_BY_ID_RPT= environment.Global.API_GET_DOCUMENTS_BY_ID_RPT;\r\nconst API_GET_FILE_COMPANY_ID = environment.Global.API_GET_FILE_COMPANY_ID;\r\n\r\n@Component({\r\n selector: 'app-rptcompany',\r\n templateUrl: './rptcompany.component.html',\r\n styleUrls: ['./rptcompany.component.css']\r\n})\r\nexport class RptcompanyComponent extends BaseCrudComponent implements OnInit {\r\n translations;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n request_selected = true;\r\n isSkretting = false;\r\n isClean = false;\r\n pageSize = 10;\r\n userInfo;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n private workbook: Workbook;\r\n mostrar:number=-1;\r\n isPDF = true;\r\n isImage = false;\r\n pdfSrc = \"\";\r\n row2: any = [];\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['Name', 'NumberIdentification', 'EmployeeName'];\r\n }\r\n\r\n async ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n await this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n // console.log(this.userInfo)\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n });\r\n this.getCompanies();\r\n }\r\n\r\n\r\n dataToFind() {\r\n let url = '';\r\n this.isFind = true;\r\n console.log(this.options_company)\r\n console.log(this.options_ruc)\r\n\r\n if (!this.validateSelectedCompany()) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n }\r\n\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n url = API_GET_DOCUMENTS_BY_ID_RPT + this.userInfo.selectedCompanyId;\r\n } else {\r\n this.isSkretting = true;\r\n let id = this.options_company;\r\n id ??= this.options_ruc;\r\n url = API_GET_DOCUMENTS_BY_ID_RPT + id;\r\n }\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n validateSelectedCompany(): boolean {\r\n if (this.options_company === null && this.options_ruc === null) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n getListFromApi(url) {\r\n this.isFind = true;\r\n let list_tmp = [];\r\n // console.log(url);\r\n this.srv.getCall(url).subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((this.options_ruc !== -1 || this.options_company !== -1)) {\r\n\r\n } else if ((this.options_ruc !== -1 || this.options_company !== -1)) {\r\n if (this.isSkretting) {\r\n if ((this.options_ruc !== null || this.options_company !== null)) {\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n if (new_list.length === 0) {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n } else {\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n }\r\n } else {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n }\r\n // this.rows=list_tmp;\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.isFind = false;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n let listInReport = this.rows;\r\n let mapaTitles = new Map();\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n // console.log(...this.rows);\r\n console.log(listInReport)\r\n // debugger\r\n listInReport.forEach(element => {\r\n var listaDocumentos=\"\";\r\n element._DocumentsEmployees.forEach(documentos => {\r\n let documento=documentos.NameDoc;\r\n let status=documentos.Status\r\n listaDocumentos+=documento+\"(\"+status+\"); \"\r\n });\r\n var cursos=\"\";\r\n element._ListsCourses.forEach(estado=>\r\n {\r\n cursos+=estado+\"; \"\r\n }\r\n );\r\n if(cursos==\"\"){\r\n cursos=\"No cuenta con cursos realizados\"\r\n }\r\n //console.log(element)\r\n let obj = [];\r\n if (this.isSkretting) {\r\n obj = [\r\n element.EmployeeId,\r\n element.NumberIdentification,\r\n element.Name,\r\n // element.Birth_date != null ? element.Birth_date.split('T')[0] : \"\",\r\n element.ruccompany,\r\n element.namecompany,\r\n element.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n element.Email,\r\n element.address,\r\n element.position,\r\n element.telephone,\r\n // element.telephone2,\r\n // element.nationality,\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n cursos,\r\n listaDocumentos\r\n ]\r\n // console.log(obj)\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', \"auto\"\r\n ]\r\n } else {\r\n obj = [\r\n element.EmployeeId,\r\n element.NumberIdentification,\r\n element.Name,\r\n // element.Birth_date != null ? element.Birth_date.split('T')[0] : \"\",\r\n element.Email,\r\n element.address,\r\n element.position,\r\n element.telephone,\r\n // element.telephone2,\r\n // element.nationality,\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n cursos,\r\n listaDocumentos\r\n ]\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', \"auto\"\r\n ]\r\n\r\n }\r\n\r\n if (this.isSkretting) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.identification).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.birth_date).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.email).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.address).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.position).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.phone).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.phone2).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.nationality).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.course).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.menu_docs).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n } else {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.identification).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.birth_date).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.email).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.address).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.position).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.phone).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.phone2).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.nationality).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n }\r\n\r\n nueva_lista_reportes.push(obj);\r\n\r\n if (!mapaTitles.has(element.NameDoc)) {\r\n mapaTitles.set(element.NameDoc, element.NameDoc);\r\n }\r\n\r\n });\r\n\r\n\r\n\r\n\r\n const pdf = new PdfMakeWrapper();\r\n // INFORMATION IN TITLE NAV\r\n let title = 'Reporte de trabajadores de los contratistas registrados'\r\n\r\n pdf.info({\r\n // title: `${this.translations.msg_doc_Ext}`,\r\n // title: `${title}`,\r\n title: `${title}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n\r\n var fontSize: 0;\r\n fontSize: 10\r\n fontSize: 8\r\n\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: fontSize,\r\n alignment: 'justify'\r\n });\r\n pdf.pageMargins([40, 110, 40, 75]);\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.pageOrientation('landscape');\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userInfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userInfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...nueva_lista_reportes\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n .alignment('center')\r\n .end\r\n ]\r\n );\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n\r\n\r\n pdf.create().download(title);\r\n Swal.close();\r\n }\r\n\r\n\r\n clearFilters() {\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.pageTotal = 0;\r\n }\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1 || this.options_ruc == null) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n if (this.options_company == -1) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n selectRequest() {\r\n this.request_selected = true;\r\n this.rows = [];\r\n this.page = 0;\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n openViewModal(modal, object){\r\n const DocFileName = object.ParamDocumentID;\r\n this.row2 = object;\r\n\r\n this.srv.donwloadAnyFileByUserExt(API_GET_FILE_COMPANY_ID, object.CompanyID, DocFileName)\r\n .subscribe({\r\n next: async (blob) => {\r\n if (blob) {\r\n var extension = blob.type;\r\n if (extension == 'application/pdf') {\r\n this.isPDF = true;\r\n this.isImage = false;\r\n } else if (\r\n extension == 'image/jpeg' ||\r\n extension == 'image/jpg' ||\r\n extension == 'image/png'\r\n ) {\r\n this.isPDF = false;\r\n this.isImage = true;\r\n } else {\r\n this.messageDialog('Formato de archivo incorrecto!', '', 'error');\r\n return;\r\n }\r\n this.pdfSrc = await blobToB64(blob);\r\n this.modalService.open(modal, { backdrop: 'static', keyboard: false, size: 'xl', centered: true });\r\n } else {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n },\r\n error: (error) => {\r\n Swal.fire(\r\n 'No se pudo obtener documento',\r\n 'Contacte con el administrador',\r\n 'error'\r\n );\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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_upload\" | translate }}{{ \"name_archive\" | translate }}{{ \"emition_date\" | translate }}{{ \"expiration_date\" | translate }}{{ \"status\" | translate }}{{ \"action\" | translate }}
\r\n {{ row1.NameDoc }}\r\n \r\n {{ row1.ImageFileName }}\r\n \r\n {{ row1.DateDocument | date: \"y-MM-dd\" }}\r\n \r\n {{ row1.ExpirationTime | date: \"y-MM-dd\" }}\r\n {{ row1.status_name }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{'preview' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\n\r\nimport { Storage } from '@ionic/storage';\r\nimport Swal from 'sweetalert2';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\n//import { isNull } from 'util';\r\n\r\nimport { Cell, Columns, Img, Item, Line, PageReference, PdfMakeWrapper, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_ALL_ENTRY_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_INDUCTION = environment.Global.API_GET_ALL_REQUEST_INDUCTION;\r\nconst GET_ALL_REQUEST_INDUCTION_BY_ID = environment.Global.API_GET_ALL_REQUEST_INDUCTION_BY_ID;\r\nconst GET_WORK_AUTH_BY_ID = environment.Global.API_GET_WORK_AUTH_BY_ID;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\nconst GET_DOCUMENTS_BY_ID = environment.Global.API_GET_DOCUMENTS_BY_ID;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_DOCUMENTS_ALL_PARAM = environment.Global.API_GET_DOCUMENTS_ALL;\r\nconst GET_DOCUMENTS_ALL_BY_COMPANYID = environment.Global.API_GET_DOCUMENTS_ALL_BY_COMPANYID;\r\nconst API_GET_REPORTS_EMPLOYEES_BY_COMPANY = environment.Global.API_GET_REPORTS_EMPLOYEES_BY_COMPANY;\r\nconst API_GET_REPORTS_VEHICLES_BY_COMPANY = environment.Global.API_REPORTS_VEHICLE_COMPANY;\r\n\r\n@Component({\r\n selector: 'app-rptdocumentexternalworker',\r\n templateUrl: './rptdocumentexternalworker.component.html',\r\n styleUrls: ['./rptdocumentexternalworker.component.css']\r\n})\r\nexport class RptdocumentexternalworkerComponent extends BaseCrudComponent implements OnInit {\r\n date_init = null;\r\n date_end = null;\r\n translations;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n request_selected = true;\r\n isSkretting = false;\r\n isClean = false;\r\n pageSize = 10;\r\n userInfo;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n private workbook: Workbook;\r\n private lista_titulos;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['Name', 'NumberIdentification', 'EmployeeName'];\r\n }\r\n\r\n async ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n await this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n console.log(this.userInfo)\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n });\r\n this.getCompanies();\r\n }\r\n\r\n\r\n dataToFind() {\r\n let url = '';\r\n this.isFind = true;\r\n\r\n if (this.date_end < this.date_init) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_error_date, this.translations.msg_error_date_end, 'error');\r\n }\r\n if (this.date_init !== null && this.date_end === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_end_select, '', 'error');\r\n }\r\n if (this.date_end !== null && this.date_init === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_init_select, '', 'error');\r\n }\r\n\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n url = GET_DOCUMENTS_ALL_BY_COMPANYID + this.userInfo.selectedCompanyId;\r\n } else {\r\n this.isSkretting = true;\r\n url = GET_DOCUMENTS_ALL_PARAM;\r\n }\r\n\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n getListFromApi(url) {\r\n this.isFind = true;\r\n let list_tmp = [];\r\n // console.log(url);\r\n this.srv.getCall(url).subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((!(this.date_init === null) && !(this.date_end === null)) && (this.options_ruc == -1 || this.options_ruc == null) && (this.options_company == -1 || this.options_company == null)) {\r\n // console.log('Primer filtro')\r\n list_tmp.forEach(tmp => {\r\n tmp.DateDocument = this.formatOnlyDate(new Date(tmp.DateDocument));\r\n if (tmp.DateDocument >= this.date_init && tmp.DateDocument <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc !== -1 || this.options_company !== -1) && (!(this.date_init === null) && !(this.date_end === null))) {\r\n // console.log('Segundo filtro')\r\n list_tmp.forEach(tmp => {\r\n tmp.DateDocument = this.formatOnlyDate(new Date(tmp.DateDocument));\r\n if (tmp.DateDocument >= this.date_init && tmp.DateDocument <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc !== -1 || this.options_company !== -1) && ((this.date_init === null) && (this.date_end === null))) {\r\n console.log('Tercer filtro')\r\n if (this.isSkretting) {\r\n if (this.options_ruc !== null || this.options_company !== null) {\r\n // console.log('entro aqui if')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n console.log(list_tmp)\r\n if (new_list.length === 0) {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n } else {\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n }\r\n } else {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n }\r\n // console.log(this.rows)\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.isFind = false;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n let listInReport = this.rows;\r\n let mapaTitles = new Map();\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n listInReport.forEach(element => {\r\n let obj = [];\r\n if (this.isSkretting) {\r\n obj = [\r\n element.EmployeeName,\r\n element.NumberIdentification,\r\n element.Name,\r\n element.Ruc,\r\n element.NameDoc,\r\n element.ExpirationTime != null ? element.ExpirationTime.split('T')[0] : \"\",\r\n element.status_name,\r\n ]\r\n // console.log(obj)\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', '*', 'auto', 'auto'\r\n ]\r\n } else {\r\n obj = [\r\n element.EmployeeName,\r\n element.NumberIdentification,\r\n element.NameDoc,\r\n element.ExpirationTime != null ? element.ExpirationTime.split('T')[0] : \"\",\r\n element.status_name,\r\n element.status_name,\r\n ]\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', 'auto'\r\n ]\r\n }\r\n if (this.isSkretting) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.doc_worker).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.doc_vige).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n } else {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.doc_worker).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.doc_vige).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n }\r\n\r\n nueva_lista_reportes.push(obj);\r\n\r\n if (!mapaTitles.has(element.NameDoc)) {\r\n mapaTitles.set(element.NameDoc, element.NameDoc);\r\n }\r\n\r\n });\r\n\r\n const pdf = new PdfMakeWrapper();\r\n // INFORMATION IN TITLE NAV\r\n let title = 'Reporte de Documentos de trabajadores externos'\r\n\r\n pdf.info({\r\n // title: `${this.translations.msg_doc_Ext}`,\r\n // title: `${title}`,\r\n title: `${title}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n\r\n var fontSize: 0;\r\n fontSize: 10\r\n fontSize: 8\r\n\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: fontSize,\r\n alignment: 'justify'\r\n });\r\n pdf.pageMargins([40, 110, 40, 110]);\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.pageOrientation('landscape');\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userInfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userInfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...nueva_lista_reportes\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n .alignment('center')\r\n .end\r\n ]\r\n );\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n\r\n\r\n pdf.create().download(title);\r\n Swal.close();\r\n }\r\n\r\n\r\n clearFilters() {\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.pageTotal = 0;\r\n }\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n if (this.options_company == -1) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n selectRequest() {\r\n this.request_selected = true;\r\n this.rows = [];\r\n this.page = 0;\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n downloadExcel() {\r\n\r\n this.workbook = new Workbook();\r\n let nombreXLSX = \"Documentos de trabajadores externos.xlsx\";\r\n\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.ci,\r\n this.translations.worker,\r\n this.translations.menu_mycompanies,\r\n this.translations.name_archive,\r\n this.translations.status,\r\n this.translations.date_emision,\r\n this.translations.expiration_date\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.Code,\r\n this.translations.ci,\r\n this.translations.menu_mycompanies,\r\n this.translations.name_archive,\r\n this.translations.status,\r\n this.translations.date_emision,\r\n this.translations.expiration_date\r\n\r\n ];\r\n\r\n }\r\n console.log(this.lista_titulos);\r\n\r\n this.ContainsExcel();\r\n this.workbook.creator = \"GesCon\";\r\n this.workbook.xlsx.writeBuffer().then((data) => {\r\n const blob = new Blob([data]);\r\n fs.saveAs(blob, nombreXLSX);\r\n })\r\n }\r\n private ContainsExcel() {\r\n const sheet = this.workbook.addWorksheet('Sheet');\r\n\r\n sheet.getColumn(\"A\").width = 8;\r\n sheet.getColumn(\"B\").width = 20;\r\n sheet.getColumn(\"C\").width = 20;\r\n sheet.getColumn(\"D\").width = 20;\r\n sheet.getColumn(\"E\").width = 20;\r\n sheet.getColumn(\"F\").width = 20;\r\n sheet.getColumn(\"G\").width = 20;\r\n sheet.getColumn(\"H\").width = 20;\r\n sheet.getColumn(\"I\").width = 20;\r\n sheet.getColumn(\"J\").width = 20;\r\n sheet.getColumn(\"K\").width = 20;\r\n sheet.getColumn(\"L\").width = 20;\r\n sheet.getColumn(\"M\").width = 20;\r\n sheet.getColumn(\"N\").width = 20;\r\n sheet.getColumn(\"O\").width = 20;\r\n sheet.getColumn(\"P\").width = 20;\r\n sheet.getColumn(\"Q\").width = 20;\r\n sheet.getColumn(\"R\").width = 20;\r\n sheet.getColumn(\"S\").width = 20;\r\n sheet.getColumn(\"T\").width = 20;\r\n sheet.getColumn(\"U\").width = 20;\r\n sheet.getColumn(\"V\").width = 20;\r\n sheet.getColumn(\"W\").width = 20;\r\n sheet.getColumn(\"X\").width = 20;\r\n sheet.getColumn(\"Y\").width = 20;\r\n sheet.getColumn(\"Z\").width = 20;\r\n // ALINEAR COLUMNAS\r\n sheet.columns.forEach((column) => {\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n });\r\n\r\n\r\n\r\n // establecer los valores de las columnas y del header\r\n\r\n //establecer los header\r\n const headerRow = sheet.getRow(1);\r\n // console.log(\"Lista de titulos:\", this.lista_titulos);\r\n headerRow.values = this.lista_titulos;\r\n // headerRow.values = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];\r\n headerRow.font = { bold: true, size: 12 };\r\n\r\n // agregar los datos a las filas\r\n const rowsToInsert = sheet.getRows(2, this.rows.length);\r\n\r\n for (let index = 0; index < rowsToInsert.length; index++) {\r\n const itemData = this.rows[index]; //obtenemos el item segun el index de la iteraciòn(recorrido)\r\n const row = rowsToInsert[index]; //obtenemos la primera fila segun el index de la iteraciòn(recorrido)\r\n // los valores de itemData seran asignados a row (fila actual en la iteraciòn)\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.EmployeeName,\r\n itemData.Name,\r\n itemData.NameDoc,\r\n itemData.status_name,\r\n itemData.DateDocument == null ? \"\" : itemData.DateDocument.split('T')[0],\r\n itemData.ExpirationTime == null ? \"\" : itemData.ExpirationTime.split('T')[0]\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.Name,\r\n itemData.NameDoc,\r\n itemData.status_name,\r\n itemData.DateDocument == null ? \"\" : itemData.DateDocument.split('T')[0],\r\n itemData.ExpirationTime == null ? \"\" : itemData.ExpirationTime.split('T')[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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'ci' | translate}} {{'worker' | translate}}{{'menu_mycompanies' | translate}}{{'name_archive' | translate}}{{'status' | translate}}{{'date_emision' | translate}}{{'expiration_date' | translate}}
{{row.EmployeeId}}{{row.NumberIdentification}}{{row.EmployeeName}}{{row.Name}}{{row.NameDoc}}{{row.status_name}}{{row.DateDocument.split('T')[0]}}{{row.ExpirationTime.split('T')[0]}}
\r\n \r\n
\r\n
\r\n
\r\n
","import { AfterViewInit, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Storage } from '@ionic/storage';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Swal from 'sweetalert2';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n//import { isNull } from 'util';\r\nimport { Canvas, Cell, Columns, Ellipse, Img, Item, Line, PageReference, PdfMakeWrapper, Polyline, Rect, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\n\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_ALL_ENTRY_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_INDUCTION = environment.Global.API_GET_ALL_REQUEST_INDUCTION;\r\nconst GET_ALL_REQUEST_INDUCTION_BY_ID = environment.Global.API_GET_ALL_REQUEST_INDUCTION_BY_ID;\r\nconst GET_BY_ID_COMPANY_WORK_AUTH = environment.Global.API_GET_BY_ID_COMPANY_WORK_AUTH;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_DOCUMENTS_BY_ID = environment.Global.API_GET_DOCUMENTS_BY_ID;\r\n\r\nconst GET_REPORT_ENTRY_REQUEST = environment.Global.API_REPORT_ENTRY_REQUEST;\r\nconst GET_REPORT_REQUEST = environment.Global.API_REPORT_REQUEST;\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\nimport { element } from 'protractor';\r\n\r\n@Component({\r\n selector: 'app-rptentryrequest',\r\n templateUrl: './rptentryrequest.component.html',\r\n styleUrls: ['./rptentryrequest.component.css']\r\n})\r\nexport class RptentryrequestComponent extends BaseCrudComponent implements OnInit {\r\n @ViewChild('thead', { static: true }) thead: ElementRef;\r\n userInfo;\r\n option_processes = 2;\r\n date_init = null;\r\n date_end = null;\r\n list_processes = [{ title: 'induction_soli', id: 1 }, { title: 'request_soli', id: 2 }, { title: 'work_sol', id: 3 }]\r\n translations;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n request_selected = false;\r\n isSkretting = false;\r\n isClean = false;\r\n pageSize = 10;\r\n flag = false;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n col_value = 0;\r\n url_report_ = '';\r\n l = [];\r\n cantidadDeEvaluaciones = 0;\r\n private workbook: Workbook;\r\n private lista_titulos;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['Requiredby', 'CompanyName', 'WhoRequest', 'Name', 'WorkAuthId'];\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n // console.log(this.userInfo)\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n });\r\n this.getCompanies();\r\n // if (this.request_selected) {\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n // } else {\r\n // this.disabledCompany = true;\r\n // this.disabledRuc = true;\r\n // }\r\n }\r\n\r\n selectRequest() {\r\n this.request_selected = true;\r\n this.rows = [];\r\n this.page = 0;\r\n this.pageTotal = 0;\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n this.url_report_ = '';\r\n if (this.isSkretting) {\r\n if (this.option_processes == 1) {\r\n this.col_value = 7\r\n } else if (this.option_processes == 2) {\r\n this.col_value = 8\r\n } else if (this.option_processes == 3) {\r\n this.col_value = 8\r\n }\r\n } else {\r\n if (this.option_processes == 1) {\r\n this.col_value = 6\r\n } else if (this.option_processes == 2) {\r\n this.col_value = 7\r\n } else if (this.option_processes == 3) {\r\n this.col_value = 8\r\n }\r\n }\r\n\r\n if (this.option_processes == 1) {\r\n this.url_report_ = GET_REPORT_REQUEST;\r\n } else if (this.option_processes == 2) {\r\n this.url_report_ = GET_REPORT_ENTRY_REQUEST;\r\n }\r\n // if (this.option_processes !== null) {\r\n // if (this.options_company !== null || this.options_company != -1) {\r\n // this.disabledRuc = true;\r\n // }\r\n // if (this.options_ruc !== null || this.options_ruc != -1) {\r\n // this.disabledCompany = true;\r\n // }\r\n // }\r\n\r\n\r\n this.options_ruc = null;\r\n this.options_company = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n }\r\n\r\n clearFilters() {\r\n\r\n this.option_processes = null;\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.url_report_ = '';\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n // console.log(this.options_company);\r\n // console.log(this.options_ruc);\r\n }\r\n\r\n dataToFind() {\r\n let url = '';\r\n this.isFind = true;\r\n\r\n // if (this.option_processes === null) {\r\n // this.isFind = false;\r\n // return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n // }\r\n\r\n if (this.date_end < this.date_init) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_error_date, this.translations.msg_error_date_end, 'error');\r\n }\r\n if (this.date_init !== null && this.date_end === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_end_select, '', 'error');\r\n }\r\n if (this.date_end !== null && this.date_init === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_init_select, '', 'error');\r\n }\r\n\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n url = GET_ALL_ENTRY_REQUEST;\r\n }\r\n\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n // this.setUrlToFindData();\r\n }\r\n\r\n\r\n setUrlToFindData() {\r\n let url = '';\r\n // console.log(this.option_processes)\r\n switch (Number(this.option_processes)) {\r\n case 1:\r\n // console.log('entro aqui 1')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_REQUEST_INDUCTION_BY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_REQUEST_INDUCTION;\r\n this.isSkretting = true;\r\n }\r\n break;\r\n case 2:\r\n // console.log('entro aqui 2')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n url = GET_ALL_ENTRY_REQUEST;\r\n }\r\n break;\r\n default:\r\n // console.log('entro aqui 3')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_BY_ID_COMPANY_WORK_AUTH + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\n this.isSkretting = true;\r\n }\r\n break;\r\n }\r\n // console.log(url);\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n\r\n getListFromApi(url) {\r\n // console.log(this.option_processes)\r\n\r\n this.isFind = true;\r\n // console.log(url)\r\n let list_tmp = [];\r\n // console.log( this.date_init, this.date_end, this.option_processes,this.options_ruc, this.options_company);\r\n this.srv.getCall(url).subscribe(x => {\r\n // console.log(x.val)\r\n if (x.success) {\r\n if (x.val != null) {\r\n // console.log(x.val)\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((!(this.date_init===null) && !(this.date_end===null)) && (this.options_ruc == -1 || this.options_ruc == null) && (this.options_company == -1 || this.options_company == null) && this.option_processes !== null) {\r\n // console.log('Primer filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.CreationTime = this.formatOnlyDate(new Date(tmp.CreationTime));\r\n if (tmp.CreationTime >= this.date_init && tmp.CreationTime <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n } else if (this.option_processes == 2) {\r\n list_tmp.forEach(tmp => {\r\n tmp.StartDate = this.formatOnlyDate(new Date(tmp.StartDate));\r\n if (tmp.StartDate >= this.date_init && tmp.StartDate <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n } else if (this.option_processes == 3) {\r\n list_tmp.forEach(tmp => {\r\n tmp.Wa_DateBegin = this.formatOnlyDate(new Date(tmp.Wa_DateBegin));\r\n if (tmp.Wa_DateBegin >= this.date_init && tmp.Wa_DateBegin <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc != -1 || this.options_company != -1) && (!(this.date_init===null) && !(this.date_end===null))) {\r\n // console.log('Segundo filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.CreationTime = this.formatOnlyDate(new Date(tmp.CreationTime));\r\n if (tmp.CreationTime >= this.date_init && tmp.CreationTime <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n } else if (this.option_processes == 2) {\r\n list_tmp.forEach(tmp => {\r\n tmp.StartDate = this.formatOnlyDate(new Date(tmp.StartDate));\r\n if (tmp.StartDate >= this.date_init && tmp.StartDate <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n } else if (this.option_processes == 3) {\r\n list_tmp.forEach(tmp => {\r\n tmp.Wa_DateBegin = this.formatOnlyDate(new Date(tmp.Wa_DateBegin));\r\n if (tmp.Wa_DateBegin >= this.date_init && tmp.Wa_DateBegin <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc != -1 || this.options_company != -1) && ((this.date_init===null) && (this.date_end===null))) {\r\n if (this.isSkretting) {\r\n // console.log('SKRETTING')\r\n // console.log(this.options_company, this.options_ruc, this.option_processes);\r\n if (this.option_processes == 1 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro induccion')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if (this.option_processes == 2 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro ingreso')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if (this.option_processes == 3 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro trabajo')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.option_processes == 1 || this.option_processes == 2 || this.option_processes == 3) && ((this.options_ruc == null || this.options_ruc == -1) || (this.options_company == null || this.options_company == -1))) {\r\n // console.log('Tercer filtro cualquiera sin ruc o compañia skretting')\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n } else {\r\n if ((this.option_processes == 1 || this.option_processes == 2 || this.option_processes == 3) && ((this.options_ruc == null || this.options_ruc == -1) || (this.options_company == null || this.options_company == -1))) {\r\n // console.log('Tercer filtro cualquiera sin ruc o compañia contratista')\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n }\r\n }\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n // console.log(this.rows)\r\n\r\n this.filterAll();\r\n this.isFind = false;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1 || this.options_ruc == null) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n // console.log(this.options_company);\r\n if (this.options_company == -1 || this.options_company == null) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n let listInReport = this.rows;\r\n const pdf = new PdfMakeWrapper();\r\n let nameDoc = '';\r\n let title = '';\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n\r\n //if (this.option_processes == 1) {\r\n // nameDoc = 'Solicitud de inducción';\r\n // title = this.translations.msg_rep_induction;\r\n //} else if (this.option_processes == 2) {\r\n nameDoc = 'Solicitud de ingreso';\r\n title = this.translations.msg_rep_entry_request;\r\n //} else if (this.option_processes == 3) {\r\n // nameDoc = 'Permiso de trabajo';\r\n // title = this.translations.msg_rep_worker_auth;\r\n //}\r\n listInReport.forEach(element=>{\r\n let obj=[];\r\n if(this.isSkretting){\r\n obj=[\r\n element.EntryRequestId,\r\n element.Requiredby,\r\n element.CompanyName,\r\n element.PlantaName, \r\n element.StartDate.split('T')[0],\r\n element.EndDte.split('T')[0],\r\n element.RequestDetails.length,\r\n element.Emergency\r\n ]\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n }else{\r\n obj=[\r\n element.EntryRequestId,\r\n element.Requiredby,\r\n element.PlantaName, \r\n element.StartDate.split('T')[0],\r\n element.EndDte.split('T')[0],\r\n element.RequestDetails.length,\r\n element.Emergency\r\n ]\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n }\r\n if(this.isSkretting){\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.requested_by).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.level).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_end).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.emergency).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n }else{\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.requested_by).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.level).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_end).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.emergency).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n }\r\n nueva_lista_reportes.push(obj)\r\n })\r\n //if (this.isSkretting) {\r\n //if (this.option_processes == 1) {\r\n // lista_titulos = [\r\n // new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.theme_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.duration_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.calification_inducton_evaluation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.status_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_repeat_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // ];\r\n // lista_widths = [\r\n // '*', 'auto', '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n // ]\r\n //} else if (this.option_processes == 2) {\r\n// lista_titulos = [\r\n// new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.status_docs).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.status_eval).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.status_sanct).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.habilitation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.colors).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.asist).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// ];\r\n// lista_widths = [\r\n// '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n// ]\r\n //} else if (this.option_processes == 3) {\r\n // lista_titulos = [\r\n // new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_risk).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_auths).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_open).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_closed).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // ];\r\n // lista_widths = [\r\n // '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n // ]\r\n //}\r\n //} else {\r\n //if (this.option_processes == 1) {\r\n // lista_titulos = [\r\n // new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.theme_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.duration_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.calification_inducton_evaluation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.status_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_repeat_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // ];\r\n // lista_widths = [\r\n // '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n // ]\r\n //} else if (this.option_processes == 2) {\r\n // lista_titulos = [\r\n // new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.status_docs).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.status_eval).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.status_sanct).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.habilitation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.colors).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.asist).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // ];\r\n // lista_widths = [\r\n // '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n // ]\r\n //} else if (this.option_processes == 3) {\r\n // lista_titulos = [\r\n // new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.level).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_risk).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_open).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_closed).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // ];\r\n // lista_widths = [\r\n // '*', '*', '*', '*', '*', '*', '*', '*'\r\n // ]\r\n //}\r\n\r\n //}\r\n // INFORMATION IN TITLE NAV\r\n pdf.info({\r\n title: `${nameDoc}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: 10,\r\n alignment: 'justify'\r\n });\r\n\r\n pdf.pageMargins([40, 110, 40, 110]);\r\n pdf.pageOrientation(\"landscape\");\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n\r\n // pdf.background(\r\n // await new Img('../../../../assets/images/Skretting-footer.png').absolutePosition(0, 515).width(900).build() //505\r\n // )\r\n // console.log(lista_titulos)\r\n // console.log(await this.converDataToRow(listInReport))\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userInfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userInfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...nueva_lista_reportes\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n // .widths('*')\r\n .alignment('center')\r\n .end,\r\n ]\r\n )\r\n\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n let nombre = '';\r\n // if (this.option_processes == 1) {\r\n // nombre = 'Reporte de Solicitudes de Inducción';\r\n // } else if (this.option_processes == 2) {\r\n nombre = 'Reporte de Solicitudes de Ingreso';\r\n // } else if (this.option_processes == 3) {\r\n // nombre = 'Reporte de Permisos de Trabajo';\r\n // }\r\n pdf.create().download(nombre);\r\n Swal.close();\r\n }\r\n\r\n // async converDataToRow(list) {\r\n // let nueva_lista = [];\r\n // this.l = [];\r\n // if (this.url_report_ !== '' && this.url_report_ !== ' ') {\r\n // await this.srv.getCall(this.url_report_).toPromise().then(x => {\r\n // if (x.success) {\r\n // if (x.val != null) {\r\n // x.val.forEach(element => {\r\n // if (this.option_processes == 1) {\r\n // if (element.RequestDetails.length > 0) {\r\n // element.RequestDetails.forEach(emp => {\r\n // if (emp.evaluations.length > 0) {\r\n // emp.evaluations.forEach(evals => {\r\n // let obj = ['', '', '', '', '', '', 0, '', 0, 0, '']\r\n // obj[0] = emp.Name;\r\n // obj[1] = emp.NumberIdentification;\r\n // obj[2] = element.Name;\r\n // obj[3] = element.Ruc;\r\n // obj[4] = evals.nameEval;\r\n // obj[5] = evals.lastregistereval.creationtime.split('T')[0];\r\n // obj[7] = evals.lastregistereval.score;\r\n // if (evals.status_end == 'AP') {\r\n // obj[8] = 'APROBADO';\r\n // } else if (evals.status_end == 'RP') {\r\n // obj[8] = 'REPROBADO';\r\n // }\r\n // obj[6] = Number((evals.timeEval / 60).toFixed(2));\r\n // obj[9] = evals.repeticiones;\r\n // obj[10] = element.RequestId;\r\n // this.l.push(obj)\r\n // });\r\n // } else {\r\n // let obj = ['', '', '', '', '', '', 0, '', 0, 0, '']\r\n // obj[0] = emp.Name;\r\n // obj[1] = emp.NumberIdentification;\r\n // obj[2] = element.Name;\r\n // obj[3] = element.Ruc;\r\n // obj[10] = element.RequestId;\r\n // this.l.push(obj);\r\n // }\r\n // });\r\n // } else {\r\n // let obj = ['', '', '', '', '', '', '', 0, '', 0, 0, '']\r\n // obj[2] = element.Name;\r\n // obj[3] = element.Ruc;\r\n // obj[11] = element.RequestId;\r\n // this.l.push(obj);\r\n // }\r\n // } else if (this.option_processes == 2) {\r\n // if (element._employee_status.length > 0) {\r\n // element._employee_status.forEach(emp => {\r\n // let obj = ['', '', '', '', '', '', '', '', '', '', '', {}, ''];\r\n // obj[0] = emp.Name;\r\n // obj[1] = emp.NumberIdentification;\r\n // obj[2] = element.NameCompany;\r\n // obj[3] = element.RucCompany;\r\n // obj[4] = element.EntryRequestId;\r\n // obj[5] = element.StartDate.split('T')[0];\r\n // obj[6] = element.EndDte.split('T')[0];\r\n // obj[7] = emp.Status_Document;\r\n // obj[8] = emp.Status_Evaluation;\r\n // obj[9] = (emp.Status_Faltas == 'SI' ? 'Sancionado' : 'No sancionado')\r\n // obj[10] =\r\n // (emp.Status_Document == 'Validado' && emp.Status_Evaluation == 'Aprobado' && emp.Status_Faltas == 'NO')\r\n // ? 'Habilitado' : 'No Habilitado';\r\n // obj[11] = obj[10] == 'Habilitado' ? new Cell(new Txt('').end).fillColor('green').end : new Cell(new Txt('').end).fillColor('red').end;\r\n // obj[12] = obj[10] == 'Habilitado' ? 'Si' : 'No';\r\n // this.l.push(obj);\r\n // });\r\n // }\r\n // }\r\n // })\r\n // list.forEach(element => {\r\n // this.l.forEach(worker => {\r\n // if (this.option_processes == 1) {\r\n // if (element.RequestId == worker[10]) {\r\n // if (this.isSkretting) {\r\n // nueva_lista.push(\r\n // [worker[0], worker[1], worker[2], worker[3], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9]]\r\n // )\r\n // } else {\r\n // nueva_lista.push(\r\n // [worker[0], worker[1], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9]]\r\n // )\r\n // }\r\n // }\r\n // } else if (this.option_processes == 2) {\r\n // if (element.EntryRequestId == worker[4]) {\r\n // if (this.isSkretting) {\r\n // nueva_lista.push(\r\n // [worker[0], worker[1], worker[2], worker[3], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9], worker[10], worker[11], worker[12]]\r\n // )\r\n // } else {\r\n // nueva_lista.push(\r\n // [worker[0], worker[1], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9], worker[10], worker[11], worker[12]]\r\n // )\r\n // }\r\n // }\r\n // }\r\n // });\r\n // });\r\n // } else {\r\n // Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n // this.isFind = false;\r\n // return;\r\n // }\r\n // } else {\r\n // this.isFind = false;\r\n // Swal.fire(x.msg, '', 'error');\r\n // return;\r\n // }\r\n // });\r\n // return nueva_lista;\r\n // } else {\r\n // if (this.option_processes == 3) {\r\n // let map = new Map();\r\n // list.forEach(element => {\r\n // if (this.isSkretting) {\r\n // if (!map.has(element.CompanyID)) {\r\n // map.set(element.CompanyID, [\r\n // element.Name,\r\n // element.Ruc,\r\n // element.Risk ? 1 : 0,\r\n // 1,\r\n // element.CloseWorkerAuth == 'A' ? 1 : 0,\r\n // element.CloseWorkerAuth == 'C' ? 1 : 0,\r\n // element.QuantityWorker\r\n // ])\r\n // } else {\r\n // let tmp = map.get(element.CompanyID);\r\n // tmp[2] = element.Risk ? tmp[2] + 1 : tmp[2];\r\n // tmp[3] = tmp[3] + 1;\r\n // tmp[4] = element.CloseWorkerAuth == 'A' ? tmp[4] + 1 : tmp[4];\r\n // tmp[5] = element.CloseWorkerAuth == 'C' ? tmp[5] + 1 : tmp[5];\r\n // tmp[6] = tmp[6] + element.QuantityWorker;\r\n // }\r\n // } else {\r\n // if (!map.has(element.CompanyID)) {\r\n // map.set(element.CompanyID, [\r\n // element.WorkAuthId,\r\n // element.Wa_DateBegin.split('T')[0],\r\n // element.Wa_DaTeend.split('T')[0],\r\n // element.PlantaName,\r\n // element.Risk ? 1 : 0,\r\n // element.QuantityWorker,\r\n // element.CloseWorkerAuth == 'C' ? 1 : 0,\r\n // element.CloseWorkerAuth == 'A' ? 1 : 0,\r\n // ])\r\n // } else {\r\n // let tmp = map.get(element.CompanyID);\r\n // tmp[4] = element.Risk ? tmp[4] + 1 : tmp[4];\r\n // tmp[5] = tmp[5] + element.QuantityWorker;\r\n // tmp[6] = element.CloseWorkerAuth == 'C' ? tmp[6] + 1 : tmp[6];\r\n // tmp[7] = element.CloseWorkerAuth == 'A' ? tmp[7] + 1 : tmp[7];\r\n // }\r\n // }\r\n // });\r\n // for (let [key, value] of map) {\r\n // nueva_lista.push(value)\r\n // }\r\n // return nueva_lista\r\n // }\r\n // }\r\n // }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n downloadExcel() {\r\n\r\n this.workbook = new Workbook();\r\n // let nombreXLSX = \"Reporte de Ordenes de compra.xlsx\";\r\n // if (this.option_processes == 1) {\r\n // nombreXLSX = \"Documentos de trabajadores externos.xlsx\";\r\n\r\n // if (this.isSkretting == true) {\r\n // this.lista_titulos = [\r\n // this.translations.code,\r\n // this.translations.job_applicant,\r\n // this.translations.company,\r\n // this.translations.level,\r\n // this.translations.date_creation,\r\n // this.translations.worker_quantity,\r\n // this.translations.request_induction_quantity,\r\n//\r\n // ];\r\n//\r\n // } else {\r\n // this.lista_titulos = [\r\n // this.translations.code,\r\n // this.translations.job_applicant,\r\n // this.translations.level,\r\n // this.translations.date_creation,\r\n // this.translations.worker_quantity,\r\n // this.translations.request_induction_quantity,\r\n//\r\n // ];\r\n//\r\n // }\r\n // } else if (this.option_processes == 2) {\r\n let nombreXLSX = \"Reporte de Solicitudes de Ingreso .xlsx\";\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.company,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.emergency\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.emergency\r\n\r\n ];\r\n }\r\n\r\n// } else if (this.option_processes == 3) {\r\n// nombreXLSX = \"Trabajadores de los contratistas registrados.xlsx\";\r\n// if (this.isSkretting == true) {\r\n// this.lista_titulos = [\r\n// this.translations.code,\r\n// this.translations.requested_by,\r\n// this.translations.company,\r\n// this.translations.level,\r\n// this.translations.date_init,\r\n// this.translations.date_end,\r\n// this.translations.worker_quantity,\r\n// this.translations.work_status,\r\n//\r\n// ];\r\n//\r\n// } else {\r\n// this.lista_titulos = [\r\n// this.translations.code,\r\n// this.translations.requested_by,\r\n// this.translations.level,\r\n// this.translations.date_init,\r\n// this.translations.date_end,\r\n// this.translations.worker_quantity,\r\n// this.translations.work_status,\r\n//\r\n// ];\r\n//\r\n// }\r\n//\r\n// }\r\n\r\n\r\n\r\n this.ContainsExcel();\r\n this.workbook.creator = \"Comex\";\r\n this.workbook.xlsx.writeBuffer().then((data) => {\r\n const blob = new Blob([data]);\r\n fs.saveAs(blob, nombreXLSX);\r\n })\r\n }\r\n private ContainsExcel() {\r\n const sheet = this.workbook.addWorksheet('Sheet');\r\n\r\n sheet.getColumn(\"A\").width = 8;\r\n sheet.getColumn(\"B\").width = 20;\r\n sheet.getColumn(\"C\").width = 20;\r\n sheet.getColumn(\"D\").width = 20;\r\n sheet.getColumn(\"E\").width = 20;\r\n sheet.getColumn(\"F\").width = 20;\r\n sheet.getColumn(\"G\").width = 20;\r\n sheet.getColumn(\"H\").width = 20;\r\n sheet.getColumn(\"I\").width = 20;\r\n sheet.getColumn(\"J\").width = 20;\r\n sheet.getColumn(\"K\").width = 20;\r\n sheet.getColumn(\"L\").width = 20;\r\n sheet.getColumn(\"M\").width = 20;\r\n sheet.getColumn(\"N\").width = 20;\r\n sheet.getColumn(\"O\").width = 20;\r\n sheet.getColumn(\"P\").width = 20;\r\n sheet.getColumn(\"Q\").width = 20;\r\n sheet.getColumn(\"R\").width = 20;\r\n sheet.getColumn(\"S\").width = 20;\r\n sheet.getColumn(\"T\").width = 20;\r\n sheet.getColumn(\"U\").width = 20;\r\n sheet.getColumn(\"V\").width = 20;\r\n sheet.getColumn(\"W\").width = 20;\r\n sheet.getColumn(\"X\").width = 20;\r\n sheet.getColumn(\"Y\").width = 20;\r\n sheet.getColumn(\"Z\").width = 20;\r\n // ALINEAR COLUMNAS\r\n sheet.columns.forEach((column) => {\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n });\r\n\r\n\r\n\r\n // establecer los valores de las columnas y del header\r\n\r\n //establecer los header\r\n const headerRow = sheet.getRow(1);\r\n // console.log(\"Lista de titulos:\", this.lista_titulos);\r\n headerRow.values = this.lista_titulos;\r\n // headerRow.values = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];\r\n headerRow.font = { bold: true, size: 12, color:{ argb: 'FFFFFF' }};\r\n //HeaderRow.Fill=BackgroundColor\r\n headerRow.fill={\r\n type: 'pattern',\r\n pattern:'solid',\r\n fgColor:{argb:'003d6a'},\r\n bgColor:{argb:'F38230'}\r\n }\r\n\r\n // agregar los datos a las filas\r\n const rowsToInsert = sheet.getRows(2, this.rows.length);\r\n\r\n for (let index = 0; index < rowsToInsert.length; index++) {\r\n const itemData = this.rows[index]; //obtenemos el item segun el index de la iteraciòn(recorrido)\r\n const row = rowsToInsert[index]; //obtenemos la primera fila segun el index de la iteraciòn(recorrido)\r\n // los valores de itemData seran asignados a row (fila actual en la iteraciòn)\r\n\r\n //if (this.option_processes == 1) {\r\n//\r\n // if (this.isSkretting == true) {\r\n // row.values = [\r\n//\r\n // itemData.RequestId,\r\n // itemData.WhoRequest,\r\n // itemData.namecompany,\r\n // itemData.plantaname,\r\n // itemData.CreationTime == null ? \"\" : itemData.CreationTime.split('T')[0].split('T')[0],\r\n // itemData.listRequestdetail.length,\r\n // itemData.contadorEvaluations,\r\n // itemData.EmployeeId,\r\n // itemData.NumberIdentification,\r\n // itemData.EmployeeName,\r\n // itemData.Name,\r\n // itemData.NameDoc,\r\n // itemData.status_name\r\n//\r\n // ];\r\n//\r\n // } else {\r\n // row.values = [\r\n // itemData.RequestId,\r\n // itemData.WhoRequest,\r\n // itemData.plantaname,\r\n // itemData.CreationTime == null ? \"\" : itemData.CreationTime.split('T')[0].split('T')[0],\r\n // itemData.listRequestdetail.length,\r\n // itemData.contadorEvaluations,\r\n // itemData.EmployeeId,\r\n // itemData.NumberIdentification,\r\n // itemData.EmployeeName,\r\n // itemData.Name,\r\n // itemData.NameDoc,\r\n // itemData.status_name\r\n // ];\r\n//\r\n // }\r\n //} else if (this.option_processes == 2) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n itemData.EntryRequestId,\r\n itemData.Requiredby,\r\n itemData.CompanyName,\r\n itemData.PlantaName,\r\n itemData.StartDate == null ? \"\" : itemData.StartDate.split('T')[0],\r\n itemData.EndDte.split('T')[0],\r\n itemData.RequestDetails.length,\r\n itemData.Emergency\r\n\r\n\r\n ];\r\n } else {\r\n row.values = [\r\n itemData.EntryRequestId,\r\n itemData.Requiredby,\r\n itemData.PlantaName,\r\n itemData.StartDate == null ? \"\" : itemData.StartDate.split('T')[0],\r\n itemData.EndDte.split('T')[0],\r\n itemData.RequestDetails.length,\r\n itemData.Emergency\r\n ];\r\n }\r\n\r\n ////} else if (this.option_processes == 3) {\r\n//\r\n // if (this.isSkretting == true) {\r\n // row.values = [\r\n//\r\n//\r\n // itemData.WorkAuthId,\r\n // itemData.Requiredby,\r\n // itemData.Name,\r\n // itemData.PlantaName,\r\n // itemData.Wa_DateBegin == null ? \"\" : itemData.Wa_DateBegin.split('T')[0],\r\n // itemData.Wa_DaTeend == null ? \"\" : itemData.Wa_DaTeend.split('T')[0],\r\n // itemData.QuantityWorker,\r\n // itemData.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto',\r\n//\r\n//\r\n // ];\r\n//\r\n // } else {\r\n // row.values = [\r\n // itemData.WorkAuthId,\r\n // itemData.Requiredby,\r\n // itemData.PlantaName,\r\n // itemData.Wa_DateBegin == null ? \"\" : itemData.Wa_DateBegin.split('T')[0],\r\n // itemData.Wa_DaTeend == null ? \"\" : itemData.Wa_DaTeend.split('T')[0],\r\n // itemData.QuantityWorker,\r\n // itemData.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto',\r\n//\r\n // ];\r\n//\r\n // }\r\n//\r\n //}\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'requested_by' | translate}}{{'company' | translate}}{{'level' | translate}} {{'date_init' | translate}}{{'date_end' | translate}}{{'worker_quantity' | translate}}{{'emergency' | translate}}
{{row.EntryRequestId}}{{row.Requiredby}}{{row.CompanyName}}{{row.PlantaName}}{{row.StartDate.split('T')[0]}}{{row.EndDte.split('T')[0]}}{{row.RequestDetails.length}}{{row.Emergency ? ('emergency' | translate ): ('no_emergency' | translate)}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Storage } from '@ionic/storage';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Swal from 'sweetalert2';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n//import { isNull } from 'util';\r\nimport { Canvas, Cell, Columns, Ellipse, Img, Item, Line, PageReference, PdfMakeWrapper, Polyline, Rect, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\n\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_ALL_ENTRY_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_INDUCTION = environment.Global.API_GET_ALL_REQUEST_INDUCTION;\r\nconst GET_ALL_REQUEST_INDUCTION_BY_ID = environment.Global.API_GET_ALL_REQUEST_INDUCTION_BY_ID;\r\nconst GET_BY_ID_COMPANY_WORK_AUTH = environment.Global.API_GET_BY_ID_COMPANY_WORK_AUTH;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_DOCUMENTS_BY_ID = environment.Global.API_GET_DOCUMENTS_BY_ID;\r\n\r\nconst GET_REPORT_ENTRY_REQUEST = environment.Global.API_REPORT_ENTRY_REQUEST;\r\nconst GET_REPORT_REQUEST = environment.Global.API_REPORT_REQUEST;\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\nimport { ConsoleLogger } from '@angular/compiler-cli/ngcc';\r\nimport { element } from 'protractor';\r\n\r\n@Component({\r\n selector: 'app-rptevaluationrequest',\r\n templateUrl: './rptevaluationrequest.component.html',\r\n styleUrls: ['./rptevaluationrequest.component.css']\r\n})\r\n\r\nexport class RptevaluationrequestComponent extends BaseCrudComponent implements OnInit {\r\n @ViewChild('thead', { static: true }) thead: ElementRef;\r\n userInfo;\r\n option_processes = 1;\r\n date_init = null;\r\n date_end = null;\r\n list_processes = [{ title: 'induction_soli', id: 1 }, { title: 'request_soli', id: 2 }, { title: 'work_sol', id: 3 }]\r\n translations;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n request_selected = false;\r\n isSkretting = false;\r\n isClean = false;\r\n pageSize = 10;\r\n flag = false;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n col_value = 0;\r\n url_report_ = '';\r\n l = [];\r\n cantidadDeEvaluaciones = 0;\r\n private workbook: Workbook;\r\n private lista_titulos;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['Requiredby', 'CompanyName', 'WhoRequest', 'Name', 'WorkAuthId'];\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n // console.log(this.userInfo)\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n });\r\n this.getCompanies();\r\n // console.log(this.request_selected);\r\n // if (this.request_selected) {\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n // } else {\r\n // this.disabledCompany = true;\r\n // this.disabledRuc = true;\r\n // }\r\n }\r\n\r\n clearFilters() {\r\n this.option_processes = null;\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.url_report_ = '';\r\n this.disabledCompany = true;\r\n this.disabledRuc = true;\r\n // console.log(this.options_company);\r\n // console.log(this.options_ruc);\r\n }\r\n\r\n dataToFind() {\r\n let url = '';\r\n this.isFind = true;\r\n\r\n // if (this.option_processes === null) {\r\n // this.isFind = false;\r\n // return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n // }\r\n\r\n if (this.date_end < this.date_init) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_error_date, this.translations.msg_error_date_end, 'error');\r\n }\r\n if (this.date_init !== null && this.date_end === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_end_select, '', 'error');\r\n }\r\n if (this.date_end !== null && this.date_init === null) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_init_select, '', 'error');\r\n }\r\n\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_REQUEST_INDUCTION_BY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_REQUEST_INDUCTION;\r\n this.isSkretting = true;\r\n }\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n\r\n setUrlToFindData() {\r\n let url = '';\r\n // console.log(this.option_processes)\r\n switch (Number(this.option_processes)) {\r\n case 1:\r\n // console.log('entro aqui 1')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_REQUEST_INDUCTION_BY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_REQUEST_INDUCTION;\r\n this.isSkretting = true;\r\n }\r\n break;\r\n case 2:\r\n // console.log('entro aqui 2')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n url = GET_ALL_ENTRY_REQUEST;\r\n }\r\n break;\r\n default:\r\n // console.log('entro aqui 3')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_BY_ID_COMPANY_WORK_AUTH + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\n this.isSkretting = true;\r\n }\r\n break;\r\n }\r\n // console.log(url);\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n\r\n getListFromApi(url) {\r\n // console.log(this.option_processes)\r\n\r\n this.isFind = true;\r\n // console.log(url)\r\n let list_tmp = [];\r\n // console.log( this.date_init, this.date_end, this.option_processes,this.options_ruc, this.options_company);\r\n this.srv.getCall(url).subscribe(x => {\r\n // console.log(x.val)\r\n if (x.success) {\r\n if (x.val != null) {\r\n // console.log(x.val)\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((!(this.date_init===null) && !(this.date_end===null)) && (this.options_ruc == -1 || this.options_ruc == null) && (this.options_company == -1 || this.options_company == null) && this.option_processes !== null) {\r\n // console.log('Primer filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.CreationTime = this.formatOnlyDate(new Date(tmp.CreationTime));\r\n if (tmp.CreationTime >= this.date_init && tmp.CreationTime <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n } else if (this.option_processes == 2) {\r\n list_tmp.forEach(tmp => {\r\n tmp.StartDate = this.formatOnlyDate(new Date(tmp.StartDate));\r\n if (tmp.StartDate >= this.date_init && tmp.StartDate <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n } else if (this.option_processes == 3) {\r\n list_tmp.forEach(tmp => {\r\n tmp.Wa_DateBegin = this.formatOnlyDate(new Date(tmp.Wa_DateBegin));\r\n if (tmp.Wa_DateBegin >= this.date_init && tmp.Wa_DateBegin <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc != -1 || this.options_company != -1) && (!(this.date_init===null) && !(this.date_end===null))) {\r\n // console.log('Segundo filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.CreationTime = this.formatOnlyDate(new Date(tmp.CreationTime));\r\n if (tmp.CreationTime >= this.date_init && tmp.CreationTime <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n } else if (this.option_processes == 2) {\r\n list_tmp.forEach(tmp => {\r\n tmp.StartDate = this.formatOnlyDate(new Date(tmp.StartDate));\r\n if (tmp.StartDate >= this.date_init && tmp.StartDate <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n } else if (this.option_processes == 3) {\r\n list_tmp.forEach(tmp => {\r\n tmp.Wa_DateBegin = this.formatOnlyDate(new Date(tmp.Wa_DateBegin));\r\n if (tmp.Wa_DateBegin >= this.date_init && tmp.Wa_DateBegin <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc != -1 || this.options_company != -1) && ((this.date_init===null) && (this.date_end===null))) {\r\n if (this.isSkretting) {\r\n // console.log('SKRETTING')\r\n // console.log(this.options_company, this.options_ruc, this.option_processes);\r\n if (this.option_processes == 1 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro induccion')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if (this.option_processes == 2 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro ingreso')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if (this.option_processes == 3 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro trabajo')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.option_processes == 1 || this.option_processes == 2 || this.option_processes == 3) && ((this.options_ruc == null || this.options_ruc == -1) || (this.options_company == null || this.options_company == -1))) {\r\n // console.log('Tercer filtro cualquiera sin ruc o compañia skretting')\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n } else {\r\n if ((this.option_processes == 1 || this.option_processes == 2 || this.option_processes == 3) && ((this.options_ruc == null || this.options_ruc == -1) || (this.options_company == null || this.options_company == -1))) {\r\n // console.log('Tercer filtro cualquiera sin ruc o compañia contratista')\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n }\r\n }\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n // console.log(this.rows)\r\n\r\n this.filterAll();\r\n this.isFind = false;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1 || this.options_ruc == null) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n // console.log(this.options_company);\r\n if (this.options_company == -1 || this.options_company == null) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n console.log(this.option_processes)\r\n let listInReport = this.rows;\r\n const pdf = new PdfMakeWrapper();\r\n let nameDoc = '';\r\n let title = '';\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n\r\n //if (this.option_processes == 1) {\r\n nameDoc = 'Solicitud de inducción';\r\n title = this.translations.msg_rep_induction;\r\n //} else if (this.option_processes == 2) {\r\n // nameDoc = 'Solicitud de ingreso';\r\n // title = this.translations.msg_rep_entry_request;\r\n //} else if (this.option_processes == 3) {\r\n // nameDoc = 'Permiso de trabajo';\r\n // title = this.translations.msg_rep_worker_auth;\r\n //}\r\n listInReport.forEach(element=>{\r\n let obj=[];\r\n if(this.isSkretting){\r\n obj=[\r\n\r\n element.RequestId,\r\n element.WhoRequest,\r\n element.namecompany,\r\n //element.plantaname==null?\"No cuenta con Planta\":element.plantaname,\r\n element.CreationTime.split('T')[0],\r\n element.listRequestdetail.length,\r\n element.contadorEvaluations,\r\n ]\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', \r\n ]\r\n }else{\r\n obj=[\r\n element.RequestId,\r\n element.WhoRequest,\r\n //element.plantaname==null?\"No cuenta con Planta\":element.plantaname,\r\n element.CreationTime.split('T')[0],\r\n element.listRequestdetail.length,\r\n element.contadorEvaluations,\r\n ]\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', \r\n ]\r\n }\r\n if (this.isSkretting) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.job_applicant).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.level).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_creation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.request_induction_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ];\r\n\r\n }else{\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.job_applicant).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.level).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_creation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.request_induction_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ];\r\n\r\n }\r\n nueva_lista_reportes.push(obj);\r\n });\r\n// if (this.isSkretting) {\r\n// if (this.option_processes == 1) {\r\n// lista_titulos = [\r\n// new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end, \r\n// new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.theme_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.date_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.duration_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.calification_inducton_evaluation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.status_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.quantity_repeat_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// ];\r\n// lista_widths = [\r\n// '*', 'auto', '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n// ]\r\n// } else if (this.option_processes == 2) {\r\n// lista_titulos = [\r\n// new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.status_docs).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.status_eval).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.status_sanct).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.habilitation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.colors).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.asist).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// ];\r\n// lista_widths = [\r\n// '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n// ]\r\n// } else if (this.option_processes == 3) {\r\n// lista_titulos = [\r\n// new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.quantity_w_risk).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.quantity_w_auths).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.quantity_w_open).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.quantity_w_closed).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// ];\r\n// lista_widths = [\r\n// '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n// ]\r\n// }\r\n// } else {\r\n //if (this.option_processes == 1) {\r\n// lista_titulos = [\r\n// new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.theme_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.date_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.duration_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.calification_inducton_evaluation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.status_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// new Cell(new Txt(this.translations.quantity_repeat_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n// ];\r\n// lista_widths = [\r\n// '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n// ]\r\n //} else if (this.option_processes == 2) {\r\n // lista_titulos = [\r\n // new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.status_docs).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.status_eval).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.status_sanct).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.habilitation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.colors).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.asist).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // ];\r\n // lista_widths = [\r\n // '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n // ]\r\n //} else if (this.option_processes == 3) {\r\n // lista_titulos = [\r\n // new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.level).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_risk).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_open).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.quantity_w_closed).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // ];\r\n // lista_widths = [\r\n // '*', '*', '*', '*', '*', '*', '*', '*'\r\n // ]\r\n //}\r\n\r\n // }\r\n // INFORMATION IN TITLE NAV\r\n pdf.info({\r\n title: `${nameDoc}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: 10,\r\n alignment: 'justify'\r\n });\r\n\r\n pdf.pageMargins([40, 110, 40, 110]);\r\n pdf.pageOrientation(\"landscape\");\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n\r\n // pdf.background(\r\n // await new Img('../../../../assets/images/Skretting-footer.png').absolutePosition(0, 515).width(900).build() //505\r\n // )\r\n // console.log(lista_titulos)\r\n // console.log(await this.converDataToRow(listInReport))\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userInfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userInfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...nueva_lista_reportes\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n // .widths('*')\r\n .alignment('center')\r\n .end,\r\n ]\r\n )\r\n\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n let nombre = '';\r\n //if (this.option_processes == 1) {\r\n nombre = 'Reporte de Solicitudes de Inducción';\r\n //} else if (this.option_processes == 2) {\r\n // nombre = 'Reporte de Solicitudes de Ingreso';\r\n //} else if (this.option_processes == 3) {\r\n // nombre = 'Reporte de Permisos de Trabajo';\r\n //}\r\n pdf.create().download(nombre);\r\n Swal.close();\r\n }\r\n\r\n// async converDataToRow(list) {\r\n// let nueva_lista = [];\r\n// this.l = [];\r\n// debugger\r\n// console.log(this.url_report_)\r\n// if (this.url_report_ !== '' && this.url_report_ !== ' ') {\r\n// await this.srv.getCall(this.url_report_).toPromise().then(x => {\r\n// if (x.success) {\r\n// if (x.val != null) {\r\n// x.val.forEach(element => {\r\n// if (this.option_processes == 1) {\r\n// if (element.RequestDetails.length > 0) {\r\n// element.RequestDetails.forEach(emp => {\r\n// if (emp.evaluations.length > 0) {\r\n// emp.evaluations.forEach(evals => {\r\n// let obj = ['', '', '', '', '', '', 0, '', 0, 0, '']\r\n// obj[0] = emp.Name;\r\n// obj[1] = emp.NumberIdentification;\r\n// obj[2] = element.Name;\r\n// obj[3] = element.Ruc;\r\n// obj[4] = evals.nameEval;\r\n// obj[5] = evals.lastregistereval.creationtime.split('T')[0];\r\n// obj[7] = evals.lastregistereval.score;\r\n// if (evals.status_end == 'AP') {\r\n// obj[8] = 'APROBADO';\r\n// } else if (evals.status_end == 'RP') {\r\n// obj[8] = 'REPROBADO';\r\n// }\r\n// obj[6] = Number((evals.timeEval / 60).toFixed(2));\r\n// obj[9] = evals.repeticiones;\r\n// obj[10] = element.RequestId;\r\n// this.l.push(obj)\r\n// });\r\n// } else {\r\n// let obj = ['', '', '', '', '', '', 0, '', 0, 0, '']\r\n// obj[0] = emp.Name;\r\n// obj[1] = emp.NumberIdentification;\r\n// obj[2] = element.Name;\r\n// obj[3] = element.Ruc;\r\n// obj[10] = element.RequestId;\r\n// this.l.push(obj);\r\n// }\r\n// });\r\n// } else {\r\n// let obj = ['', '', '', '', '', '', '', 0, '', 0, 0, '']\r\n// obj[2] = element.Name;\r\n// obj[3] = element.Ruc;\r\n// obj[11] = element.RequestId;\r\n// this.l.push(obj);\r\n// }\r\n// } else if (this.option_processes == 2) {\r\n// if (element._employee_status.length > 0) {\r\n// element._employee_status.forEach(emp => {\r\n// let obj = ['', '', '', '', '', '', '', '', '', '', '', {}, ''];\r\n// obj[0] = emp.Name;\r\n// obj[1] = emp.NumberIdentification;\r\n// obj[2] = element.NameCompany;\r\n// obj[3] = element.RucCompany;\r\n// obj[4] = element.EntryRequestId;\r\n// obj[5] = element.StartDate.split('T')[0];\r\n// obj[6] = element.EndDte.split('T')[0];\r\n// obj[7] = emp.Status_Document;\r\n// obj[8] = emp.Status_Evaluation;\r\n// obj[9] = (emp.Status_Faltas == 'SI' ? 'Sancionado' : 'No sancionado')\r\n// obj[10] =\r\n// (emp.Status_Document == 'Validado' && emp.Status_Evaluation == 'Aprobado' && emp.Status_Faltas == 'NO')\r\n// ? 'Habilitado' : 'No Habilitado';\r\n// obj[11] = obj[10] == 'Habilitado' ? new Cell(new Txt('').end).fillColor('green').end : new Cell(new Txt('').end).fillColor('red').end;\r\n// obj[12] = obj[10] == 'Habilitado' ? 'Si' : 'No';\r\n// this.l.push(obj);\r\n// });\r\n// }\r\n// }\r\n// })\r\n// list.forEach(element => {\r\n// this.l.forEach(worker => {\r\n// if (this.option_processes == 1) {\r\n// if (element.RequestId == worker[10]) {\r\n// if (this.isSkretting) {\r\n// nueva_lista.push(\r\n// [worker[0], worker[1], worker[2], worker[3], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9]]\r\n// )\r\n// } else {\r\n// nueva_lista.push(\r\n// [worker[0], worker[1], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9]]\r\n// )\r\n// }\r\n// }\r\n// } else if (this.option_processes == 2) {\r\n// if (element.EntryRequestId == worker[4]) {\r\n// if (this.isSkretting) {\r\n// nueva_lista.push(\r\n// [worker[0], worker[1], worker[2], worker[3], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9], worker[10], worker[11], worker[12]]\r\n// )\r\n// } else {\r\n// nueva_lista.push(\r\n// [worker[0], worker[1], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9], worker[10], worker[11], worker[12]]\r\n// )\r\n// }\r\n// }\r\n// }\r\n// });\r\n// });\r\n// } else {\r\n// Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n// this.isFind = false;\r\n// return;\r\n// }\r\n// } else {\r\n// this.isFind = false;\r\n// Swal.fire(x.msg, '', 'error');\r\n// return;\r\n// }\r\n// });\r\n// return nueva_lista;\r\n// } else {\r\n// if (this.option_processes == 3) {\r\n// let map = new Map();\r\n// list.forEach(element => {\r\n// if (this.isSkretting) {\r\n// if (!map.has(element.CompanyID)) {\r\n// map.set(element.CompanyID, [\r\n// element.Name,\r\n// element.Ruc,\r\n// element.Risk ? 1 : 0,\r\n// 1,\r\n// element.CloseWorkerAuth == 'A' ? 1 : 0,\r\n// element.CloseWorkerAuth == 'C' ? 1 : 0,\r\n// element.QuantityWorker\r\n// ])\r\n// } else {\r\n// let tmp = map.get(element.CompanyID);\r\n// tmp[2] = element.Risk ? tmp[2] + 1 : tmp[2];\r\n// tmp[3] = tmp[3] + 1;\r\n// tmp[4] = element.CloseWorkerAuth == 'A' ? tmp[4] + 1 : tmp[4];\r\n// tmp[5] = element.CloseWorkerAuth == 'C' ? tmp[5] + 1 : tmp[5];\r\n// tmp[6] = tmp[6] + element.QuantityWorker;\r\n// }\r\n// } else {\r\n// if (!map.has(element.CompanyID)) {\r\n// map.set(element.CompanyID, [\r\n// element.WorkAuthId,\r\n// element.Wa_DateBegin.split('T')[0],\r\n// element.Wa_DaTeend.split('T')[0],\r\n// element.PlantaName,\r\n// element.Risk ? 1 : 0,\r\n// element.QuantityWorker,\r\n// element.CloseWorkerAuth == 'C' ? 1 : 0,\r\n// element.CloseWorkerAuth == 'A' ? 1 : 0,\r\n// ])\r\n// } else {\r\n// let tmp = map.get(element.CompanyID);\r\n// tmp[4] = element.Risk ? tmp[4] + 1 : tmp[4];\r\n// tmp[5] = tmp[5] + element.QuantityWorker;\r\n// tmp[6] = element.CloseWorkerAuth == 'C' ? tmp[6] + 1 : tmp[6];\r\n// tmp[7] = element.CloseWorkerAuth == 'A' ? tmp[7] + 1 : tmp[7];\r\n// }\r\n// }\r\n// });\r\n// for (let [key, value] of map) {\r\n// nueva_lista.push(value)\r\n// }\r\n// return nueva_lista\r\n// }\r\n// }\r\n// }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n downloadExcel() {\r\n\r\n this.workbook = new Workbook();\r\n //let nombreXLSX = \"Reporte de Ordenes de compra.xlsx\";\r\n // if (this.option_processes == 1) {\r\n let nombreXLSX = \"Reporte de Solicitudes de Inducción.xlsx\";\r\n\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.job_applicant,\r\n this.translations.company,\r\n //this.translations.level,\r\n this.translations.date_creation,\r\n this.translations.worker_quantity,\r\n this.translations.request_induction_quantity,\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.job_applicant,\r\n //this.translations.level,\r\n this.translations.date_creation,\r\n this.translations.worker_quantity,\r\n this.translations.request_induction_quantity,\r\n\r\n ];\r\n\r\n }\r\n //} else if (this.option_processes == 2) {\r\n // nombreXLSX = \"Trabajadores de los contratistas registrados.xlsx\";\r\n // if (this.isSkretting == true) {\r\n // this.lista_titulos = [\r\n // this.translations.code,\r\n // this.translations.requested_by,\r\n // this.translations.company,\r\n // this.translations.level,\r\n // this.translations.date_init,\r\n // this.translations.date_end,\r\n // this.translations.worker_quantity,\r\n // this.translations.emergency\r\n//\r\n // ];\r\n//\r\n // } else {\r\n // this.lista_titulos = [\r\n // this.translations.code,\r\n // this.translations.requested_by,\r\n // this.translations.level,\r\n // this.translations.date_init,\r\n // this.translations.date_end,\r\n // this.translations.worker_quantity,\r\n // this.translations.emergency\r\n//\r\n // ];\r\n//\r\n // }\r\n//\r\n //} else if (this.option_processes == 3) {\r\n // nombreXLSX = \"Trabajadores de los contratistas registrados.xlsx\";\r\n // if (this.isSkretting == true) {\r\n // this.lista_titulos = [\r\n // this.translations.code,\r\n // this.translations.requested_by,\r\n // this.translations.company,\r\n // this.translations.level,\r\n // this.translations.date_init,\r\n // this.translations.date_end,\r\n // this.translations.worker_quantity,\r\n // this.translations.work_status,\r\n//\r\n // ];\r\n//\r\n // } else {\r\n // this.lista_titulos = [\r\n // this.translations.code,\r\n // this.translations.requested_by,\r\n // this.translations.level,\r\n // this.translations.date_init,\r\n // this.translations.date_end,\r\n // this.translations.worker_quantity,\r\n // this.translations.work_status,\r\n//\r\n // ];\r\n//\r\n // }\r\n//\r\n //}\r\n this.ContainsExcel();\r\n this.workbook.creator = \"Comex\";\r\n this.workbook.xlsx.writeBuffer().then((data) => {\r\n const blob = new Blob([data]);\r\n fs.saveAs(blob, nombreXLSX);\r\n })\r\n }\r\n\r\n\r\n private ContainsExcel() {\r\n const sheet = this.workbook.addWorksheet('Sheet');\r\n\r\n sheet.getColumn(\"A\").width = 8;\r\n sheet.getColumn(\"B\").width = 20;\r\n sheet.getColumn(\"C\").width = 20;\r\n sheet.getColumn(\"D\").width = 20;\r\n sheet.getColumn(\"E\").width = 20;\r\n sheet.getColumn(\"F\").width = 20;\r\n sheet.getColumn(\"G\").width = 20;\r\n sheet.getColumn(\"H\").width = 20;\r\n sheet.getColumn(\"I\").width = 20;\r\n sheet.getColumn(\"J\").width = 20;\r\n sheet.getColumn(\"K\").width = 20;\r\n sheet.getColumn(\"L\").width = 20;\r\n sheet.getColumn(\"M\").width = 20;\r\n sheet.getColumn(\"N\").width = 20;\r\n sheet.getColumn(\"O\").width = 20;\r\n sheet.getColumn(\"P\").width = 20;\r\n sheet.getColumn(\"Q\").width = 20;\r\n sheet.getColumn(\"R\").width = 20;\r\n sheet.getColumn(\"S\").width = 20;\r\n sheet.getColumn(\"T\").width = 20;\r\n sheet.getColumn(\"U\").width = 20;\r\n sheet.getColumn(\"V\").width = 20;\r\n sheet.getColumn(\"W\").width = 20;\r\n sheet.getColumn(\"X\").width = 20;\r\n sheet.getColumn(\"Y\").width = 20;\r\n sheet.getColumn(\"Z\").width = 20;\r\n // ALINEAR COLUMNAS\r\n sheet.columns.forEach((column) => {\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n });\r\n\r\n\r\n\r\n // establecer los valores de las columnas y del header\r\n\r\n //establecer los header\r\n const headerRow = sheet.getRow(1);\r\n // console.log(\"Lista de titulos:\", this.lista_titulos);\r\n headerRow.values = this.lista_titulos;\r\n // headerRow.values = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];\r\n headerRow.font = { bold: true, size: 12, color:{ argb: 'FFFFFF' }};\r\n //HeaderRow.Fill=BackgroundColor\r\n headerRow.fill={\r\n type: 'pattern',\r\n pattern:'solid',\r\n fgColor:{argb:'003d6a'},\r\n bgColor:{argb:'F38230'}\r\n }\r\n // agregar los datos a las filas\r\n const rowsToInsert = sheet.getRows(2, this.rows.length);\r\n\r\n for (let index = 0; index < rowsToInsert.length; index++) {\r\n const itemData = this.rows[index]; //obtenemos el item segun el index de la iteraciòn(recorrido)\r\n const row = rowsToInsert[index]; //obtenemos la primera fila segun el index de la iteraciòn(recorrido)\r\n // los valores de itemData seran asignados a row (fila actual en la iteraciòn)\r\n\r\n //if (this.option_processes == 1) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n itemData.RequestId,\r\n itemData.WhoRequest,\r\n itemData.namecompany,\r\n //itemData.plantaname==null?\"No cuenta con Planta\":itemData.plantaname,\r\n itemData.CreationTime == null ? \"\" : itemData.CreationTime.split('T')[0].split('T')[0],\r\n itemData.listRequestdetail.length,\r\n itemData.contadorEvaluations,\r\n //itemData.EmployeeId,\r\n //itemData.NumberIdentification,\r\n //itemData.EmployeeName,\r\n //itemData.Name,\r\n //itemData.NameDoc,\r\n //itemData.status_name\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.RequestId,\r\n itemData.WhoRequest,\r\n // itemData.plantaname==null?\"No cuenta con Planta\":itemData.plantaname,\r\n itemData.CreationTime == null ? \"\" : itemData.CreationTime.split('T')[0].split('T')[0],\r\n itemData.listRequestdetail.length,\r\n itemData.contadorEvaluations,\r\n //itemData.EmployeeId,\r\n //itemData.NumberIdentification,\r\n //itemData.EmployeeName,\r\n //itemData.Name,\r\n //itemData.NameDoc,\r\n //itemData.status_name\r\n ];\r\n\r\n }\r\n //} else if (this.option_processes == 2) {\r\n//\r\n // if (this.isSkretting == true) {\r\n // row.values = [\r\n//\r\n//\r\n // itemData.EntryRequestId,\r\n // itemData.Requiredby,\r\n // itemData.CompanyName,\r\n // itemData.PlantaName,\r\n // itemData.StartDate == null ? \"\" : itemData.StartDate.split('T')[0],\r\n // itemData.EndDte.split('T')[0],\r\n // itemData.RequestDetails.length,\r\n // itemData.Emergency\r\n//\r\n//\r\n // ];\r\n//\r\n // } else {\r\n // row.values = [\r\n // itemData.EntryRequestId,\r\n // itemData.Requiredby,\r\n // itemData.PlantaName,\r\n // itemData.StartDate == null ? \"\" : itemData.StartDate.split('T')[0],\r\n // itemData.EndDte.split('T')[0],\r\n // itemData.RequestDetails.length,\r\n // itemData.Emergency\r\n//\r\n // ];\r\n//\r\n // }\r\n//\r\n //} else if (this.option_processes == 3) {\r\n//\r\n // if (this.isSkretting == true) {\r\n // row.values = [\r\n//\r\n//\r\n // itemData.WorkAuthId,\r\n // itemData.Requiredby,\r\n // itemData.Name,\r\n // itemData.PlantaName,\r\n // itemData.Wa_DateBegin == null ? \"\" : itemData.Wa_DateBegin.split('T')[0],\r\n // itemData.Wa_DaTeend == null ? \"\" : itemData.Wa_DaTeend.split('T')[0],\r\n // itemData.QuantityWorker,\r\n // itemData.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto',\r\n//\r\n//\r\n // ];\r\n//\r\n // } else {\r\n // row.values = [\r\n // itemData.WorkAuthId,\r\n // itemData.Requiredby,\r\n // itemData.PlantaName,\r\n // itemData.Wa_DateBegin == null ? \"\" : itemData.Wa_DateBegin.split('T')[0],\r\n // itemData.Wa_DaTeend == null ? \"\" : itemData.Wa_DaTeend.split('T')[0],\r\n // itemData.QuantityWorker,\r\n // itemData.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto',\r\n//\r\n // ];\r\n//\r\n // }\r\n//\r\n //}\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'job_applicant' | translate}}{{'company' | translate}}{{'date_creation' | translate}}{{'worker_quantity' | translate}}{{'request_induction_quantity' | translate}}
{{row.RequestId}}{{row.WhoRequest}}{{row.namecompany}}{{row.CreationTime.split('T')[0]}}{{row.listRequestdetail.length}}{{row.contadorEvaluations}}
\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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\n\r\nimport { Storage } from '@ionic/storage';\r\nimport Swal from 'sweetalert2';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\n//import { isNull } from 'util';\r\n\r\nimport { Cell, Columns, Img, Item, Line, PageReference, PdfMakeWrapper, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_ALL_ENTRY_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_INDUCTION = environment.Global.API_GET_ALL_REQUEST_INDUCTION;\r\nconst GET_ALL_REQUEST_INDUCTION_BY_ID = environment.Global.API_GET_ALL_REQUEST_INDUCTION_BY_ID;\r\nconst GET_WORK_AUTH_BY_ID = environment.Global.API_GET_WORK_AUTH_BY_ID;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\nconst GET_DOCUMENTS_BY_ID = environment.Global.API_GET_DOCUMENTS_BY_ID;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_DOCUMENTS_ALL_PARAM = environment.Global.API_GET_DOCUMENTS_ALL;\r\nconst GET_DOCUMENTS_ALL_BY_COMPANYID = environment.Global.API_GET_DOCUMENTS_ALL_BY_COMPANYID;\r\nconst API_GET_REPORTS_EMPLOYEES_BY_COMPANY = environment.Global.API_GET_REPORTS_EMPLOYEES_BY_COMPANY;\r\nconst API_GET_REPORTS_VEHICLES_BY_COMPANY = environment.Global.API_REPORTS_VEHICLE_COMPANY;\r\n\r\n@Component({\r\n selector: 'app-rptvehiclesbycompany',\r\n templateUrl: './rptvehiclesbycompany.component.html',\r\n styleUrls: ['./rptvehiclesbycompany.component.css']\r\n})\r\n\r\nexport class RptvehiclesbycompanyComponent extends BaseCrudComponent implements OnInit {\r\n\r\n translations;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n request_selected = true;\r\n isSkretting = false;\r\n isClean = false;\r\n pageSize = 10;\r\n userInfo;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n private workbook: Workbook;\r\n private lista_titulos;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['RegistrationNumber', 'RucCompany'];\r\n }\r\n\r\n async ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n await this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n // console.log(this.userInfo)\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n });\r\n this.getCompanies();\r\n }\r\n\r\n\r\n dataToFind() {\r\n this.isFind = true;\r\n let url = '';\r\n\r\n if (!this.validateSelectedCompany()) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n }\r\n\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n url = API_GET_REPORTS_VEHICLES_BY_COMPANY + this.userInfo.selectedCompanyId;\r\n } else {\r\n this.isSkretting = true;\r\n let id = this.options_company;\r\n id ??= this.options_ruc;\r\n url = API_GET_REPORTS_VEHICLES_BY_COMPANY + id;\r\n }\r\n\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n validateSelectedCompany(): boolean {\r\n if (this.options_company === null && this.options_ruc === null) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n getListFromApi(url) {\r\n this.isFind = true;\r\n let list_tmp = [];\r\n // console.log(url);\r\n this.srv.getCall(url).subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((this.options_ruc !== -1 || this.options_company !== -1)) {\r\n // console.log('Tercer filtro')\r\n if (this.isSkretting) {\r\n if ((this.options_ruc !== null || this.options_company !== null)) {\r\n // console.log('entro aqui if')\r\n list_tmp.forEach(tmp => {\r\n // console.log(tmp.CompanyID)\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n // console.log(list_tmp)\r\n if (new_list.length === 0) {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n } else {\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n }\r\n } else {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n }\r\n // console.log(this.rows)\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.isFind = false;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n let listInReport = this.rows;\r\n let mapaTitles = new Map();\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n // console.log(...this.rows);\r\n // console.log(listInReport)\r\n // debugger\r\n listInReport.forEach(element => {\r\n // console.log(element)\r\n let obj = [];\r\n if (this.isSkretting) {\r\n obj = [\r\n element.VehicleID,\r\n element.RegistrationNumber,\r\n element.Brand,\r\n element.ModelName[0].value,\r\n element.VehicleType,\r\n element.RucCompany,\r\n element.NameCompany,\r\n element.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n ]\r\n // console.log(obj)\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_registration).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_brand).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_model).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n\r\n ]\r\n } else {\r\n obj = [\r\n element.VehicleID,\r\n element.RegistrationNumber,\r\n element.Brand,\r\n element.ModelName[0].value,\r\n element.VehicleType,\r\n // element.RucCompany,\r\n // element.NameCompany,\r\n // element.TypeCompany == 1 ? \"Contratista\":\"Transportista\",\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n ]\r\n // console.log(obj)\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', '*', 'auto'\r\n ]\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_registration).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_brand).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_model).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.v_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n\r\n ]\r\n }\r\n\r\n nueva_lista_reportes.push(obj);\r\n\r\n if (!mapaTitles.has(element.NameDoc)) {\r\n mapaTitles.set(element.NameDoc, element.NameDoc);\r\n }\r\n\r\n });\r\n\r\n\r\n\r\n\r\n const pdf = new PdfMakeWrapper();\r\n // INFORMATION IN TITLE NAV\r\n let title = 'Reporte de vehículos registrados por compañia'\r\n\r\n pdf.info({\r\n // title: `${this.translations.msg_doc_Ext}`,\r\n // title: `${title}`,\r\n title: `${title}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n\r\n var fontSize: 0;\r\n\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: fontSize,\r\n alignment: 'justify'\r\n });\r\n pdf.pageMargins([40, 110, 40, 110]);\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.pageOrientation('landscape');\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userInfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userInfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...nueva_lista_reportes\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n .alignment('center')\r\n .end\r\n ]\r\n );\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n pdf.create().download(title);\r\n Swal.close();\r\n }\r\n\r\n\r\n clearFilters() {\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.pageTotal = 0;\r\n }\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n if (this.options_company == -1) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n selectRequest() {\r\n this.request_selected = true;\r\n this.rows = [];\r\n this.page = 0;\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n downloadExcel() {\r\n\r\n this.workbook = new Workbook();\r\n let nombreXLSX = \"Registro de los Vehículos de la companía.xlsx\";\r\n\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.v_registration,\r\n this.translations.v_brand,\r\n this.translations.v_model,\r\n this.translations.v_type,\r\n this.translations.ruc,\r\n this.translations.company,\r\n this.translations.company_type,\r\n this.translations.status\r\n\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.v_registration,\r\n this.translations.v_brand,\r\n this.translations.v_model,\r\n this.translations.v_type,\r\n // this.translations.ruc,\r\n // this.translations.company,\r\n // this.translations.company_type,\r\n this.translations.status\r\n\r\n\r\n ];\r\n\r\n }\r\n\r\n console.log(this.lista_titulos);\r\n\r\n\r\n this.ContainsExcel();\r\n this.workbook.creator = \"Comex\";\r\n this.workbook.xlsx.writeBuffer().then((data) => {\r\n const blob = new Blob([data]);\r\n fs.saveAs(blob, nombreXLSX);\r\n })\r\n }\r\n private ContainsExcel() {\r\n const sheet = this.workbook.addWorksheet('Sheet');\r\n\r\n sheet.getColumn(\"A\").width = 8;\r\n sheet.getColumn(\"B\").width = 20;\r\n sheet.getColumn(\"C\").width = 20;\r\n sheet.getColumn(\"D\").width = 20;\r\n sheet.getColumn(\"E\").width = 20;\r\n sheet.getColumn(\"F\").width = 20;\r\n sheet.getColumn(\"G\").width = 20;\r\n sheet.getColumn(\"H\").width = 20;\r\n sheet.getColumn(\"I\").width = 20;\r\n sheet.getColumn(\"J\").width = 20;\r\n sheet.getColumn(\"K\").width = 20;\r\n sheet.getColumn(\"L\").width = 20;\r\n sheet.getColumn(\"M\").width = 20;\r\n sheet.getColumn(\"N\").width = 20;\r\n sheet.getColumn(\"O\").width = 20;\r\n sheet.getColumn(\"P\").width = 20;\r\n sheet.getColumn(\"Q\").width = 20;\r\n sheet.getColumn(\"R\").width = 20;\r\n sheet.getColumn(\"S\").width = 20;\r\n sheet.getColumn(\"T\").width = 20;\r\n sheet.getColumn(\"U\").width = 20;\r\n sheet.getColumn(\"V\").width = 20;\r\n sheet.getColumn(\"W\").width = 20;\r\n sheet.getColumn(\"X\").width = 20;\r\n sheet.getColumn(\"Y\").width = 20;\r\n sheet.getColumn(\"Z\").width = 20;\r\n // ALINEAR COLUMNAS\r\n sheet.columns.forEach((column) => {\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n });\r\n\r\n\r\n\r\n // establecer los valores de las columnas y del header\r\n\r\n //establecer los header\r\n const headerRow = sheet.getRow(1);\r\n // console.log(\"Lista de titulos:\", this.lista_titulos);\r\n headerRow.values = this.lista_titulos;\r\n // headerRow.values = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];\r\n headerRow.font = { bold: true, size: 12 };\r\n\r\n // agregar los datos a las filas\r\n const rowsToInsert = sheet.getRows(2, this.rows.length);\r\n\r\n for (let index = 0; index < rowsToInsert.length; index++) {\r\n const itemData = this.rows[index]; //obtenemos el item segun el index de la iteraciòn(recorrido)\r\n const row = rowsToInsert[index]; //obtenemos la primera fila segun el index de la iteraciòn(recorrido)\r\n // los valores de itemData seran asignados a row (fila actual en la iteraciòn)\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n\r\n itemData.VehicleID,\r\n itemData.RegistrationNumber,\r\n itemData.Brand,\r\n itemData.ModelName[0].value,\r\n itemData.VehicleType,\r\n itemData.RucCompany,\r\n itemData.NameCompany,\r\n itemData.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n itemData.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.VehicleID,\r\n itemData.RegistrationNumber,\r\n itemData.Brand,\r\n itemData.ModelName[0].value,\r\n itemData.VehicleType,\r\n // itemData.RucCompany,\r\n // itemData.NameCompany,\r\n // itemData.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n itemData.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n ];\r\n\r\n }\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'v_registration' | translate}} {{'v_brand' | translate}} {{'v_model' | translate}}{{'v_type' | translate}}{{'ruc' | translate}}{{'company' | translate}}{{'company_type' | translate}}{{'status' | translate}}
{{row.VehicleID}}{{row.RegistrationNumber}}{{row.Brand}}{{row.ModelName[0].value}}{{row.VehicleType}}{{row.RucCompany}}{{row.NameCompany}}{{row.TypeCompany == 1 ? \"Contratista\":\"Transportista\" }}{{row.Status=='A' ? \"Activo\":\"Inactivo\"}}
\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 { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\n\r\nimport { Storage } from '@ionic/storage';\r\nimport Swal from 'sweetalert2';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\n//import { isNull } from 'util';\r\n\r\nimport { Cell, Columns, Img, Item, Line, PageReference, PdfMakeWrapper, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\nimport { List } from 'pdfmake-wrapper/lib/definitions/list/list';\r\nimport { element } from 'protractor';\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_ALL_ENTRY_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_INDUCTION = environment.Global.API_GET_ALL_REQUEST_INDUCTION;\r\nconst GET_ALL_REQUEST_INDUCTION_BY_ID = environment.Global.API_GET_ALL_REQUEST_INDUCTION_BY_ID;\r\nconst GET_WORK_AUTH_BY_ID = environment.Global.API_GET_WORK_AUTH_BY_ID;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\nconst GET_DOCUMENTS_BY_ID = environment.Global.API_GET_DOCUMENTS_BY_ID;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_DOCUMENTS_ALL_PARAM = environment.Global.API_GET_DOCUMENTS_ALL;\r\nconst GET_DOCUMENTS_ALL_BY_COMPANYID = environment.Global.API_GET_DOCUMENTS_ALL_BY_COMPANYID;\r\nconst API_GET_REPORTS_EMPLOYEES_BY_COMPANY = environment.Global.API_GET_REPORTS_EMPLOYEES_BY_COMPANY;\r\nconst API_GET_REPORTS_VEHICLES_BY_COMPANY = environment.Global.API_REPORTS_VEHICLE_COMPANY;\r\n\r\n@Component({\r\n selector: 'app-rptworkersbycompany',\r\n templateUrl: './rptworkersbycompany.component.html',\r\n styleUrls: ['./rptworkersbycompany.component.css']\r\n})\r\nexport class RptworkersbycompanyComponent extends BaseCrudComponent implements OnInit {\r\n translations;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n request_selected = true;\r\n isSkretting = false;\r\n isClean = false;\r\n pageSize = 10;\r\n userInfo;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n private workbook: Workbook;\r\n private lista_titulos;\r\n mostrar:number=-1;\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['Name', 'NumberIdentification', 'EmployeeName'];\r\n }\r\n\r\n async ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n await this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n // console.log(this.userInfo)\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n });\r\n this.getCompanies();\r\n }\r\n\r\n\r\n dataToFind() {\r\n let url = '';\r\n this.isFind = true;\r\n console.log(this.options_company)\r\n console.log(this.options_ruc)\r\n\r\n if (!this.validateSelectedCompany()) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n }\r\n\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n url = API_GET_REPORTS_EMPLOYEES_BY_COMPANY + this.userInfo.selectedCompanyId;\r\n } else {\r\n this.isSkretting = true;\r\n let id = this.options_company;\r\n id ??= this.options_ruc;\r\n url = API_GET_REPORTS_EMPLOYEES_BY_COMPANY + id;\r\n }\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n validateSelectedCompany(): boolean {\r\n if (this.options_company === null && this.options_ruc === null) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n getListFromApi(url) {\r\n this.isFind = true;\r\n let list_tmp = [];\r\n // console.log(url);\r\n this.srv.getCall(url).subscribe(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((this.options_ruc !== -1 || this.options_company !== -1)) {\r\n\r\n } else if ((this.options_ruc !== -1 || this.options_company !== -1)) {\r\n if (this.isSkretting) {\r\n if ((this.options_ruc !== null || this.options_company !== null)) {\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n if (new_list.length === 0) {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n } else {\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n }\r\n } else {\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n }\r\n // this.rows=list_tmp;\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n this.filterAll();\r\n this.isFind = false;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n \r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n let listInReport = this.rows;\r\n let mapaTitles = new Map();\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n // console.log(...this.rows);\r\n console.log(listInReport)\r\n // debugger\r\n listInReport.forEach(element => {\r\n var listaDocumentos=\"\";\r\n element._DocumentsEmployees.forEach(documentos => {\r\n let documento=documentos.NameDoc;\r\n let status=documentos.Status\r\n listaDocumentos+=documento+\"(\"+status+\"); \"\r\n });\r\n var cursos=\"\";\r\n element._ListsCourses.forEach(estado=>\r\n {\r\n cursos+=estado+\"; \"\r\n }\r\n );\r\n if(cursos==\"\"){\r\n cursos=\"No cuenta con cursos realizados\"\r\n }\r\n //console.log(element)\r\n let obj = [];\r\n if (this.isSkretting) {\r\n obj = [\r\n element.EmployeeId,\r\n element.NumberIdentification,\r\n element.Name,\r\n // element.Birth_date != null ? element.Birth_date.split('T')[0] : \"\",\r\n element.ruccompany,\r\n element.namecompany,\r\n element.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n element.Email,\r\n element.address,\r\n element.position,\r\n element.telephone,\r\n // element.telephone2,\r\n // element.nationality,\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n cursos,\r\n listaDocumentos\r\n ]\r\n // console.log(obj)\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', \"auto\"\r\n ]\r\n } else {\r\n obj = [\r\n element.EmployeeId,\r\n element.NumberIdentification,\r\n element.Name,\r\n // element.Birth_date != null ? element.Birth_date.split('T')[0] : \"\",\r\n element.Email,\r\n element.address,\r\n element.position,\r\n element.telephone,\r\n // element.telephone2,\r\n // element.nationality,\r\n element.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n cursos,\r\n listaDocumentos\r\n ]\r\n lista_widths = [\r\n 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', \"auto\"\r\n ]\r\n\r\n }\r\n\r\n if (this.isSkretting) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.identification).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n // new Cell(new Txt(this.translations.birth_date).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.email).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.address).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.position).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.phone).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.phone2).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.nationality).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.course).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.menu_docs).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n } else {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.code).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.identification).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.birth_date).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.company_type).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.email).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.address).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.position).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.phone).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.phone2).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n //new Cell(new Txt(this.translations.nationality).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status).margin([0, 5, 0, 5]).color('white').bold().end).end\r\n ]\r\n }\r\n\r\n nueva_lista_reportes.push(obj);\r\n\r\n if (!mapaTitles.has(element.NameDoc)) {\r\n mapaTitles.set(element.NameDoc, element.NameDoc);\r\n }\r\n\r\n });\r\n\r\n\r\n\r\n\r\n const pdf = new PdfMakeWrapper();\r\n // INFORMATION IN TITLE NAV\r\n let title = 'Reporte de trabajadores de los contratistas registrados'\r\n\r\n pdf.info({\r\n // title: `${this.translations.msg_doc_Ext}`,\r\n // title: `${title}`,\r\n title: `${title}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n\r\n var fontSize: 0;\r\n fontSize: 10\r\n fontSize: 8\r\n\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: fontSize,\r\n alignment: 'justify'\r\n });\r\n pdf.pageMargins([40, 110, 40, 75]);\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n pdf.pageOrientation('landscape');\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userInfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userInfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...nueva_lista_reportes\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n .alignment('center')\r\n .end\r\n ]\r\n );\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n\r\n \r\n pdf.create().download(title);\r\n Swal.close();\r\n }\r\n\r\n\r\n clearFilters() {\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.pageTotal = 0;\r\n }\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1 || this.options_ruc == null) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n if (this.options_company == -1) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n selectRequest() {\r\n this.request_selected = true;\r\n this.rows = [];\r\n this.page = 0;\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n downloadExcel() {\r\n\r\n this.workbook = new Workbook();\r\n let nombreXLSX = \"Trabajadores de los contratistas registrados.xlsx\";\r\n\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.identification,\r\n this.translations.worker_name,\r\n this.translations.birth_date,\r\n this.translations.ruc,\r\n this.translations.company,\r\n this.translations.company_type,\r\n this.translations.email,\r\n this.translations.address,\r\n this.translations.position,\r\n this.translations.phone,\r\n this.translations.phone2,\r\n this.translations.nationality,\r\n this.translations.status,\r\n this.translations.course,\r\n this.translations.menu_docs\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.identification,\r\n this.translations.worker_name,\r\n this.translations.birth_date,\r\n this.translations.Email,\r\n this.translations.address,\r\n this.translations.position,\r\n this.translations.phone,\r\n this.translations.phone2,\r\n this.translations.nationality,\r\n this.translations.status,\r\n this.translations.course,\r\n this.translations.menu_docs\r\n ];\r\n \r\n }\r\n console.log(this.lista_titulos);\r\n\r\n\r\n this.ContainsExcel();\r\n this.workbook.creator = \"GesCon\";\r\n this.workbook.xlsx.writeBuffer().then((data) => {\r\n const blob = new Blob([data]);\r\n fs.saveAs(blob, nombreXLSX);\r\n })\r\n }\r\n private ContainsExcel() {\r\n let sheet = this.workbook.addWorksheet('Sheet');\r\n\r\n sheet.getColumn(\"A\").width = 8;\r\n sheet.getColumn(\"B\").width = 20;\r\n sheet.getColumn(\"C\").width = 20;\r\n sheet.getColumn(\"D\").width = 20;\r\n sheet.getColumn(\"E\").width = 20;\r\n sheet.getColumn(\"F\").width = 20;\r\n sheet.getColumn(\"G\").width = 20;\r\n sheet.getColumn(\"H\").width = 32;\r\n sheet.getColumn(\"I\").width = 30;\r\n sheet.getColumn(\"J\").width = 20;\r\n sheet.getColumn(\"K\").width = 20;\r\n sheet.getColumn(\"L\").width = 20;\r\n sheet.getColumn(\"M\").width = 20;\r\n sheet.getColumn(\"N\").width = 20;\r\n sheet.getColumn(\"O\").width = 60;\r\n sheet.getColumn(\"P\").width = 80;\r\n sheet.getColumn(\"Q\").width = 20;\r\n sheet.getColumn(\"R\").width = 20;\r\n sheet.getColumn(\"S\").width = 20;\r\n sheet.getColumn(\"T\").width = 20;\r\n sheet.getColumn(\"U\").width = 20;\r\n sheet.getColumn(\"V\").width = 20;\r\n sheet.getColumn(\"W\").width = 20;\r\n sheet.getColumn(\"X\").width = 20;\r\n sheet.getColumn(\"Y\").width = 20;\r\n sheet.getColumn(\"Z\").width = 20;\r\n // ALINEAR COLUMNAS\r\n sheet.columns.forEach((column) => {\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n });\r\n\r\n\r\n\r\n // establecer los valores de las columnas y del header\r\n\r\n //establecer los header\r\n const headerRow = sheet.getRow(1);\r\n // console.log(\"Lista de titulos:\", this.lista_titulos);\r\n headerRow.values = this.lista_titulos;\r\n // headerRow.values = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];\r\n headerRow.font = { bold: true, size: 12, color:{ argb: 'FFFFFF' }};\r\n //HeaderRow.Fill=BackgroundColor\r\n headerRow.fill={\r\n type: 'pattern',\r\n pattern:'solid',\r\n fgColor:{argb:'003d6a'},\r\n bgColor:{argb:'F38230'}\r\n }\r\n // agregar los datos a las filas\r\n const rowsToInsert = sheet.getRows(2, this.rows.length);\r\n\r\n for (let index = 0; index < rowsToInsert.length; index++) {\r\n const itemData = this.rows[index]; //obtenemos el item segun el index de la iteraciòn(recorrido)\r\n const row = rowsToInsert[index]; //obtenemos la primera fila segun el index de la iteraciòn(recorrido)\r\n // los valores de itemData seran asignados a row (fila actual en la iteraciòn)\r\n var listaDocumentos=\"\";\r\n itemData._DocumentsEmployees.forEach(element => {\r\n let documento=element.NameDoc;\r\n let status=element.Status\r\n listaDocumentos+=documento+\"(\"+status+\"); \"\r\n });\r\n var cursos=\"\";\r\n itemData._ListsCourses.forEach(element=>\r\n {\r\n cursos+=element+\"; \"\r\n }\r\n );\r\n if(cursos==\"\"){\r\n cursos=\"No cuenta con cursos realizados\"\r\n }\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.Name,\r\n itemData.Birth_date == null ? \"\" : itemData.Birth_date.split('T')[0],\r\n itemData.ruccompany,\r\n itemData.namecompany,\r\n itemData.TypeCompany == 1 ? \"Contratista\" : \"Transportista\",\r\n itemData.Email,\r\n itemData.address,\r\n itemData.position,\r\n itemData.telephone,\r\n itemData.telephone2,\r\n itemData.nationality,\r\n itemData.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n cursos,\r\n listaDocumentos,\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.Name,\r\n itemData.Birth_date == null ? \"\" : itemData.Birth_date.split('T')[0],\r\n itemData.Email,\r\n itemData.address,\r\n itemData.position,\r\n itemData.telephone,\r\n itemData.telephone2,\r\n itemData.nationality,\r\n itemData.Status == 'A' ? \"Activo\" : \"Inactivo\",\r\n itemData._ListsCourses,\r\n itemData._DocumentsEmployees,\r\n cursos,\r\n listaDocumentos,\r\n ];\r\n }\r\n }\r\n }\r\n\r\n mostrarAdicional(index:number){\r\n if(this.mostrar==index){\r\n this.mostrar=null;\r\n }else{\r\n this.mostrar=index;\r\n }\r\n console.log (this.rows)\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'identification' | translate}} {{'worker_name' | translate}} {{'birth_date' | translate}}{{'ruc' | translate}}{{'company' | translate}}{{'company_type' | translate}}{{'position' | translate}}{{'nationality' | translate}}{{'status' | translate}}
{{row.EmployeeId}}{{row.NumberIdentification}}{{row.Name}}{{row.Birth_date.split('T')[0]}}{{row.ruccompany}}{{row.namecompany}}{{row.TypeCompany == 1 ? \"Contratista\":\"Transportista\" }}{{row.position}}{{row.nationality}} {{row.Status=='A' ? \"Activo\":\"Inactivo\"}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'Email' | translate}}{{'address' | translate}}{{'phone' | translate}}{{'phone2' | translate}}{{'course' | translate}}{{'menu_docs' | translate}}
{{row.Email}}{{row.address}}{{row.telephone}}{{row.telephone2}}

{{course}}

\r\n

No cuenta con cursos realizados

\r\n

{{document.NameDoc}} | {{document.Status}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Storage } from '@ionic/storage';\r\nimport { isNumeric } from 'rxjs/util/isNumeric';\r\nimport { ApiService } from 'src/app/services/main/api.service';\r\nimport { BaseCrudComponent } from '../../base-crud/base-crud.component';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Swal from 'sweetalert2';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n//import { isNull } from 'util';\r\nimport { Canvas, Cell, Columns, Ellipse, Img, Item, Line, PageReference, PdfMakeWrapper, Polyline, Rect, Stack, Table, Toc, Txt, Ul } from 'pdfmake-wrapper';\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\"; // fonts provided for pdfmake\r\n\r\nPdfMakeWrapper.setFonts(pdfFonts);\r\n\r\nconst GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID = environment.Global.API_GET_ALL_REQUEST_BY_COMPANY_ID;\r\nconst GET_ALL_ENTRY_REQUEST = environment.Global.API_GET_ALL_REQUEST;\r\nconst GET_ALL_REQUEST_INDUCTION = environment.Global.API_GET_ALL_REQUEST_INDUCTION;\r\nconst GET_ALL_REQUEST_INDUCTION_BY_ID = environment.Global.API_GET_ALL_REQUEST_INDUCTION_BY_ID;\r\nconst GET_BY_ID_COMPANY_WORK_AUTH = environment.Global.API_GET_BY_ID_COMPANY_WORK_AUTH;\r\nconst GET_ALL_WORK_AUTHS_FOR_ADMIN = environment.Global.API_GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\nconst GET_ALL_COMPANIES = environment.Global.API_GET_ALL_COMPANIES;\r\nconst GET_DOCUMENTS_BY_ID = environment.Global.API_GET_DOCUMENTS_BY_ID;\r\n\r\nconst GET_REPORT_ENTRY_REQUEST = environment.Global.API_REPORT_ENTRY_REQUEST;\r\nconst GET_REPORT_REQUEST = environment.Global.API_REPORT_REQUEST;\r\nimport { Workbook } from 'exceljs';\r\nimport * as fs from 'file-saver';\r\n\r\n@Component({\r\n selector: 'app-rptworkpermission',\r\n templateUrl: './rptworkpermission.component.html',\r\n styleUrls: ['./rptworkpermission.component.css']\r\n})\r\nexport class RptworkpermissionComponent extends BaseCrudComponent implements OnInit {\r\n @ViewChild('thead', { static: true }) thead: ElementRef;\r\n userInfo;\r\n option_processes = null;\r\n date_init = null;\r\n date_end = null;\r\n list_processes = [{ title: 'induction_soli', id: 1 }, { title: 'request_soli', id: 2 }, { title: 'work_sol', id: 3 }]\r\n translations;\r\n isFind = false;\r\n options_ruc = null;\r\n options_company = null;\r\n disabledCompany = false;\r\n disabledRuc = false;\r\n companies_list = [];\r\n ruc_list = [];\r\n request_selected = false;\r\n isSkretting = false;\r\n isClean = false;\r\n pageSize = 10;\r\n flag = false;\r\n fecha_Actual = new Date();\r\n fecha_sin_formato = this.formatOnlyDate(this.fecha_Actual);\r\n col_value = 0;\r\n url_report_ = '';\r\n l = [];\r\n cantidadDeEvaluaciones = 0;\r\n private workbook: Workbook;\r\n private lista_titulos;\r\n\r\n constructor(\r\n srv: ApiService,\r\n modalService: NgbModal,\r\n storage: Storage,\r\n router: Router,\r\n private route: ActivatedRoute,\r\n public translate: TranslateService) {\r\n super(srv, modalService, storage, router);\r\n this.search_fields = ['Requiredby', 'CompanyName', 'WhoRequest', 'Name', 'WorkAuthId'];\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n this.storage.get('userinfo').then(x => {\r\n this.userInfo = x;\r\n // console.log(this.userInfo)\r\n if (isNumeric(this.userInfo.logon)) {\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n }\r\n });\r\n this.getCompanies();\r\n // if (this.request_selected) {\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n // } else {\r\n // this.disabledCompany = true;\r\n // this.disabledRuc = true;\r\n // }\r\n }\r\n\r\n selectRequest() {\r\n this.request_selected = true;\r\n this.rows = [];\r\n this.page = 0;\r\n this.pageTotal = 0;\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n this.url_report_ = '';\r\n if (this.isSkretting) {\r\n if (this.option_processes == 1) {\r\n this.col_value = 7\r\n } else if (this.option_processes == 2) {\r\n this.col_value = 8\r\n } else if (this.option_processes == 3) {\r\n this.col_value = 8\r\n }\r\n } else {\r\n if (this.option_processes == 1) {\r\n this.col_value = 6\r\n } else if (this.option_processes == 2) {\r\n this.col_value = 7\r\n } else if (this.option_processes == 3) {\r\n this.col_value = 8\r\n }\r\n }\r\n\r\n if (this.option_processes == 1) {\r\n this.url_report_ = GET_REPORT_REQUEST;\r\n } else if (this.option_processes == 2) {\r\n this.url_report_ = GET_REPORT_ENTRY_REQUEST;\r\n }\r\n // if (this.option_processes !== null) {\r\n // if (this.options_company !== null || this.options_company != -1) {\r\n // this.disabledRuc = true;\r\n // }\r\n // if (this.options_ruc !== null || this.options_ruc != -1) {\r\n // this.disabledCompany = true;\r\n // }\r\n // }\r\n\r\n\r\n this.options_ruc = null;\r\n this.options_company = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n }\r\n\r\n clearFilters() {\r\n\r\n this.option_processes = null;\r\n this.options_company = null;\r\n this.options_ruc = null;\r\n this.date_end = null;\r\n this.date_init = null;\r\n this.rows = [];\r\n this.rawdata = [];\r\n this.isFind = false;\r\n this.page = 0;\r\n this.url_report_ = '';\r\n this.disabledCompany = false;\r\n this.disabledRuc = false;\r\n // console.log(this.options_company);\r\n // console.log(this.options_ruc);\r\n }\r\n\r\n dataToFind() {\r\n let url = '';\r\n this.isFind = true;\r\n\r\n // if (this.option_processes === null) {\r\n // this.isFind = false;\r\n // return Swal.fire(this.translations.msg_all_required, '', 'error');\r\n // }\r\n\r\n if (this.date_end < this.date_init) {\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_error_date, this.translations.msg_error_date_end, 'error');\r\n }\r\n if (this.date_init !== null && this.date_end === null) {\r\n // this.date_init = null;\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_end_select, '', 'error');\r\n }\r\n if (this.date_end !== null && this.date_init === null) {\r\n // this.date_end = null;\r\n this.isFind = false;\r\n return Swal.fire(this.translations.msg_should_date_init_select, '', 'error');\r\n }\r\n\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_BY_ID_COMPANY_WORK_AUTH + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\n this.isSkretting = true;\r\n }\r\n\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n // this.setUrlToFindData();\r\n }\r\n\r\n\r\n setUrlToFindData() {\r\n let url = '';\r\n // console.log(this.option_processes)\r\n switch (Number(this.option_processes)) {\r\n case 1:\r\n // console.log('entro aqui 1')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_REQUEST_INDUCTION_BY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_REQUEST_INDUCTION;\r\n this.isSkretting = true;\r\n }\r\n break;\r\n case 2:\r\n // console.log('entro aqui 2')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_ALL_ENTRY_REQUEST_BY_COMPANY_ID + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n this.isSkretting = true;\r\n url = GET_ALL_ENTRY_REQUEST;\r\n }\r\n break;\r\n default:\r\n // console.log('entro aqui 3')\r\n if (isNumeric(this.userInfo.logon)) {\r\n url = GET_BY_ID_COMPANY_WORK_AUTH + this.userInfo.selectedCompanyId;\r\n this.isSkretting = false;\r\n } else {\r\n url = GET_ALL_WORK_AUTHS_FOR_ADMIN;\r\n this.isSkretting = true;\r\n }\r\n break;\r\n }\r\n // console.log(url);\r\n this.isFind = false;\r\n this.getListFromApi(url);\r\n }\r\n\r\n\r\n getListFromApi(url) {\r\n // console.log(this.option_processes)\r\n\r\n this.isFind = true;\r\n // console.log(url)\r\n let list_tmp = [];\r\n // console.log( this.date_init, this.date_end, this.option_processes,this.options_ruc, this.options_company);\r\n this.srv.getCall(url).subscribe(x => {\r\n // console.log(x.val)\r\n if (x.success) {\r\n if (x.val != null) {\r\n // console.log(x.val)\r\n this.rawdata = x.val;\r\n let new_list = [];\r\n list_tmp = x.val;\r\n if ((!(this.date_init===null) && !(this.date_end===null)) && (this.options_ruc == -1 || this.options_ruc == null) && (this.options_company == -1 || this.options_company == null) && this.option_processes !== null) {\r\n // console.log('Primer filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.CreationTime = this.formatOnlyDate(new Date(tmp.CreationTime));\r\n if (tmp.CreationTime >= this.date_init && tmp.CreationTime <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n } else if (this.option_processes == 2) {\r\n list_tmp.forEach(tmp => {\r\n tmp.StartDate = this.formatOnlyDate(new Date(tmp.StartDate));\r\n if (tmp.StartDate >= this.date_init && tmp.StartDate <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n } else if (this.option_processes == 3) {\r\n list_tmp.forEach(tmp => {\r\n tmp.Wa_DateBegin = this.formatOnlyDate(new Date(tmp.Wa_DateBegin));\r\n if (tmp.Wa_DateBegin >= this.date_init && tmp.Wa_DateBegin <= this.date_end) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc != -1 || this.options_company != -1) && (!(this.date_init===null) && !(this.date_end===null))) {\r\n // console.log('Segundo filtro')\r\n if (this.option_processes == 1) {\r\n list_tmp.forEach(tmp => {\r\n tmp.CreationTime = this.formatOnlyDate(new Date(tmp.CreationTime));\r\n if (tmp.CreationTime >= this.date_init && tmp.CreationTime <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n } else if (this.option_processes == 2) {\r\n list_tmp.forEach(tmp => {\r\n tmp.StartDate = this.formatOnlyDate(new Date(tmp.StartDate));\r\n if (tmp.StartDate >= this.date_init && tmp.StartDate <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n } else if (this.option_processes == 3) {\r\n list_tmp.forEach(tmp => {\r\n tmp.Wa_DateBegin = this.formatOnlyDate(new Date(tmp.Wa_DateBegin));\r\n if (tmp.Wa_DateBegin >= this.date_init && tmp.Wa_DateBegin <= this.date_end) {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n }\r\n })\r\n }\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.options_ruc != -1 || this.options_company != -1) && ((this.date_init===null) && (this.date_end===null))) {\r\n if (this.isSkretting) {\r\n // console.log('SKRETTING')\r\n // console.log(this.options_company, this.options_ruc, this.option_processes);\r\n if (this.option_processes == 1 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro induccion')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if (this.option_processes == 2 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro ingreso')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if (this.option_processes == 3 && ((this.options_ruc !== null && this.options_ruc != -1) || (this.options_company != null && this.options_company != -1))) {\r\n // console.log('Tercer filtro trabajo')\r\n list_tmp.forEach(tmp => {\r\n if (tmp.CompanyID == this.options_ruc || tmp.CompanyID == this.options_company) {\r\n new_list.push(tmp);\r\n }\r\n })\r\n this.rawdata = new_list;\r\n this.rows = new_list;\r\n } else if ((this.option_processes == 1 || this.option_processes == 2 || this.option_processes == 3) && ((this.options_ruc == null || this.options_ruc == -1) || (this.options_company == null || this.options_company == -1))) {\r\n // console.log('Tercer filtro cualquiera sin ruc o compañia skretting')\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n } else {\r\n if ((this.option_processes == 1 || this.option_processes == 2 || this.option_processes == 3) && ((this.options_ruc == null || this.options_ruc == -1) || (this.options_company == null || this.options_company == -1))) {\r\n // console.log('Tercer filtro cualquiera sin ruc o compañia contratista')\r\n this.rawdata = list_tmp;\r\n this.rows = list_tmp;\r\n }\r\n }\r\n }\r\n this.page = 1;\r\n if (Array.isArray(this.rows)) {\r\n this.pageTotal = this.rows.length;\r\n }\r\n // console.log(this.rows)\r\n\r\n this.filterAll();\r\n this.isFind = false;\r\n if (this.rows.length === 0) {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n }\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n rucSelected() {\r\n if (this.options_ruc == -1 || this.options_ruc == null) {\r\n this.disabledCompany = false;\r\n } else {\r\n this.disabledCompany = true;\r\n }\r\n }\r\n\r\n companySelected() {\r\n // console.log(this.options_company);\r\n if (this.options_company == -1 || this.options_company == null) {\r\n this.disabledRuc = false;\r\n } else {\r\n this.disabledRuc = true;\r\n }\r\n }\r\n\r\n async downloadReport() {\r\n // console.log(this.rows)\r\n\r\n Swal.fire(\r\n {\r\n title: this.translations['download_report'],\r\n html: '',\r\n icon: 'info',\r\n }\r\n );\r\n Swal.showLoading();\r\n let listInReport = this.rows;\r\n const pdf = new PdfMakeWrapper();\r\n let nameDoc = '';\r\n let title = '';\r\n let lista_titulos = [];\r\n let lista_widths = [];\r\n let nueva_lista_reportes = [];\r\n\r\n if (this.option_processes == 1) {\r\n nameDoc = 'Solicitud de inducción';\r\n title = this.translations.msg_rep_induction;\r\n } else if (this.option_processes == 2) {\r\n nameDoc = 'Solicitud de ingreso';\r\n title = this.translations.msg_rep_entry_request;\r\n } else if (this.option_processes == 3) {\r\n nameDoc = 'Permiso de trabajo';\r\n title = this.translations.msg_rep_worker_auth;\r\n }\r\n\r\n if (this.isSkretting) {\r\n if (this.option_processes == 1) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.theme_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.duration_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.calification_inducton_evaluation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_repeat_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n } else if (this.option_processes == 2) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_docs).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_eval).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_sanct).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.habilitation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.colors).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.asist).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n } else if (this.option_processes == 3) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.menu_contract).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ruc).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_risk).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_auths).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_open).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_closed).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n }\r\n } else {\r\n if (this.option_processes == 1) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.theme_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.duration_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.calification_inducton_evaluation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_repeat_induction).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', '*', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n } else if (this.option_processes == 2) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.name_last_name).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.ci).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_docs).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_eval).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.status_sanct).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.habilitation).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.colors).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.asist).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto', 'auto'\r\n ]\r\n } else if (this.option_processes == 3) {\r\n lista_titulos = [\r\n new Cell(new Txt(this.translations.sol_number).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_init).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.date_cerr).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.level).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_risk).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.worker_quantity).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_open).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n new Cell(new Txt(this.translations.quantity_w_closed).margin([0, 5, 0, 5]).color('white').bold().end).end,\r\n ];\r\n lista_widths = [\r\n '*', '*', '*', '*', '*', '*', '*', '*'\r\n ]\r\n }\r\n\r\n }\r\n // INFORMATION IN TITLE NAV\r\n pdf.info({\r\n title: `${nameDoc}`,\r\n author: `${this.userInfo.name}`,\r\n subject: 'Listado',\r\n });\r\n //OPTIONS\r\n pdf.defaultStyle({\r\n bold: false,\r\n fontSize: 10,\r\n alignment: 'justify'\r\n });\r\n\r\n pdf.pageMargins([40, 110, 40, 110]);\r\n pdf.pageOrientation(\"landscape\");\r\n pdf.header(\r\n new Table(\r\n [\r\n [\r\n new Cell(await new Img('../../../../assets/images/duragas_logo.svg').width('160').build()).end,\r\n ]\r\n ]\r\n )\r\n .margin([0, 30, 30, 0])\r\n .alignment('right')\r\n .layout('noBorders')\r\n .widths('*')\r\n .end,\r\n );\r\n\r\n // pdf.background(\r\n // await new Img('../../../../assets/images/Skretting-footer.png').absolutePosition(0, 515).width(900).build() //505\r\n // )\r\n // console.log(lista_titulos)\r\n // console.log(await this.converDataToRow(listInReport))\r\n pdf.add(\r\n [\r\n new Txt(title).fontSize(14).bold().margin([0, 0, 0, 20]).alignment('center').end,\r\n new Txt([new Txt(this.translations.date + ': ').bold().end, this.fecha_sin_formato]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.requested_by + ': ').bold().end, this.userInfo.name]).fontSize(10).alignment('left').end,\r\n new Txt([new Txt(this.translations.user + ': ').bold().end, this.userInfo.logon]).fontSize(10).alignment('left').margin([0, 0, 0, 20]).end,\r\n new Table(\r\n [\r\n lista_titulos,\r\n ...await this.converDataToRow(listInReport)\r\n ]\r\n ).layout({\r\n fillColor: (rowIndex: number, node: any, columnIndex: number) => {\r\n return rowIndex === 0 ? '#003d6a' : '';\r\n },\r\n })\r\n .headerRows(1)\r\n .dontBreakRows(true)\r\n .fontSize(8)\r\n .widths(lista_widths)\r\n // .widths('*')\r\n .alignment('center')\r\n .end,\r\n ]\r\n )\r\n\r\n pdf.footer(function (currentPage, pageCount) {\r\n return new Stack(\r\n [\r\n new Cell(new Txt('Duragas Ecuador | Km 7.5 vía a la costa, sector El Salitral Guayaquil - Ecuador | Telf: 1700387242').fontSize(8).color('gray').alignment('center').margin([0, 10, 0, 0]).end).end,\r\n new Cell(new Txt('www.duragas.com.ec').link('https://www.duragas.com.ec/').fontSize(8).color('gray').alignment('center').end).end,\r\n new Cell(new Txt(' Página ' + currentPage.toString() + ' de ' + pageCount).bold().alignment('right').fontSize(9).color('white').margin([0, 40, 20, 0]).end).end\r\n ]\r\n ).end\r\n });\r\n\r\n let nombre = '';\r\n if (this.option_processes == 1) {\r\n nombre = 'Reporte de Solicitudes de Inducción';\r\n } else if (this.option_processes == 2) {\r\n nombre = 'Reporte de Solicitudes de Ingreso';\r\n } else if (this.option_processes == 3) {\r\n nombre = 'Reporte de Permisos de Trabajo';\r\n }\r\n pdf.create().download(nombre);\r\n Swal.close();\r\n }\r\n\r\n async converDataToRow(list) {\r\n let nueva_lista = [];\r\n this.l = [];\r\n if (this.url_report_ !== '' && this.url_report_ !== ' ') {\r\n await this.srv.getCall(this.url_report_).toPromise().then(x => {\r\n if (x.success) {\r\n if (x.val != null) {\r\n x.val.forEach(element => {\r\n if (this.option_processes == 1) {\r\n if (element.RequestDetails.length > 0) {\r\n element.RequestDetails.forEach(emp => {\r\n if (emp.evaluations.length > 0) {\r\n emp.evaluations.forEach(evals => {\r\n let obj = ['', '', '', '', '', '', 0, '', 0, 0, '']\r\n obj[0] = emp.Name;\r\n obj[1] = emp.NumberIdentification;\r\n obj[2] = element.Name;\r\n obj[3] = element.Ruc;\r\n obj[4] = evals.nameEval;\r\n obj[5] = evals.lastregistereval.creationtime.split('T')[0];\r\n obj[7] = evals.lastregistereval.score;\r\n if (evals.status_end == 'AP') {\r\n obj[8] = 'APROBADO';\r\n } else if (evals.status_end == 'RP') {\r\n obj[8] = 'REPROBADO';\r\n }\r\n obj[6] = Number((evals.timeEval / 60).toFixed(2));\r\n obj[9] = evals.repeticiones;\r\n obj[10] = element.RequestId;\r\n this.l.push(obj)\r\n });\r\n } else {\r\n let obj = ['', '', '', '', '', '', 0, '', 0, 0, '']\r\n obj[0] = emp.Name;\r\n obj[1] = emp.NumberIdentification;\r\n obj[2] = element.Name;\r\n obj[3] = element.Ruc;\r\n obj[10] = element.RequestId;\r\n this.l.push(obj);\r\n }\r\n });\r\n } else {\r\n let obj = ['', '', '', '', '', '', '', 0, '', 0, 0, '']\r\n obj[2] = element.Name;\r\n obj[3] = element.Ruc;\r\n obj[11] = element.RequestId;\r\n this.l.push(obj);\r\n }\r\n } else if (this.option_processes == 2) {\r\n if (element._employee_status.length > 0) {\r\n element._employee_status.forEach(emp => {\r\n let obj = ['', '', '', '', '', '', '', '', '', '', '', {}, ''];\r\n obj[0] = emp.Name;\r\n obj[1] = emp.NumberIdentification;\r\n obj[2] = element.NameCompany;\r\n obj[3] = element.RucCompany;\r\n obj[4] = element.EntryRequestId;\r\n obj[5] = element.StartDate.split('T')[0];\r\n obj[6] = element.EndDte.split('T')[0];\r\n obj[7] = emp.Status_Document;\r\n obj[8] = emp.Status_Evaluation;\r\n obj[9] = (emp.Status_Faltas == 'SI' ? 'Sancionado' : 'No sancionado')\r\n obj[10] =\r\n (emp.Status_Document == 'Validado' && emp.Status_Evaluation == 'Aprobado' && emp.Status_Faltas == 'NO')\r\n ? 'Habilitado' : 'No Habilitado';\r\n obj[11] = obj[10] == 'Habilitado' ? new Cell(new Txt('').end).fillColor('green').end : new Cell(new Txt('').end).fillColor('red').end;\r\n obj[12] = obj[10] == 'Habilitado' ? 'Si' : 'No';\r\n this.l.push(obj);\r\n });\r\n }\r\n }\r\n })\r\n list.forEach(element => {\r\n this.l.forEach(worker => {\r\n if (this.option_processes == 1) {\r\n if (element.RequestId == worker[10]) {\r\n if (this.isSkretting) {\r\n nueva_lista.push(\r\n [worker[0], worker[1], worker[2], worker[3], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9]]\r\n )\r\n } else {\r\n nueva_lista.push(\r\n [worker[0], worker[1], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9]]\r\n )\r\n }\r\n }\r\n } else if (this.option_processes == 2) {\r\n if (element.EntryRequestId == worker[4]) {\r\n if (this.isSkretting) {\r\n nueva_lista.push(\r\n [worker[0], worker[1], worker[2], worker[3], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9], worker[10], worker[11], worker[12]]\r\n )\r\n } else {\r\n nueva_lista.push(\r\n [worker[0], worker[1], worker[4], worker[5], worker[6], worker[7], worker[8], worker[9], worker[10], worker[11], worker[12]]\r\n )\r\n }\r\n }\r\n }\r\n });\r\n });\r\n } else {\r\n Swal.fire(this.translations.empty, this.translations.not_registers, 'success');\r\n this.isFind = false;\r\n return;\r\n }\r\n } else {\r\n this.isFind = false;\r\n Swal.fire(x.msg, '', 'error');\r\n return;\r\n }\r\n });\r\n return nueva_lista;\r\n } else {\r\n if (this.option_processes == 3) {\r\n let map = new Map();\r\n list.forEach(element => {\r\n if (this.isSkretting) {\r\n if (!map.has(element.CompanyID)) {\r\n map.set(element.CompanyID, [\r\n element.Name,\r\n element.Ruc,\r\n element.Risk ? 1 : 0,\r\n 1,\r\n element.CloseWorkerAuth == 'A' ? 1 : 0,\r\n element.CloseWorkerAuth == 'C' ? 1 : 0,\r\n element.QuantityWorker\r\n ])\r\n } else {\r\n let tmp = map.get(element.CompanyID);\r\n tmp[2] = element.Risk ? tmp[2] + 1 : tmp[2];\r\n tmp[3] = tmp[3] + 1;\r\n tmp[4] = element.CloseWorkerAuth == 'A' ? tmp[4] + 1 : tmp[4];\r\n tmp[5] = element.CloseWorkerAuth == 'C' ? tmp[5] + 1 : tmp[5];\r\n tmp[6] = tmp[6] + element.QuantityWorker;\r\n }\r\n } else {\r\n if (!map.has(element.CompanyID)) {\r\n map.set(element.CompanyID, [\r\n element.WorkAuthId,\r\n element.Wa_DateBegin.split('T')[0],\r\n element.Wa_DaTeend.split('T')[0],\r\n element.PlantaName,\r\n element.Risk ? 1 : 0,\r\n element.QuantityWorker,\r\n element.CloseWorkerAuth == 'C' ? 1 : 0,\r\n element.CloseWorkerAuth == 'A' ? 1 : 0,\r\n ])\r\n } else {\r\n let tmp = map.get(element.CompanyID);\r\n tmp[4] = element.Risk ? tmp[4] + 1 : tmp[4];\r\n tmp[5] = tmp[5] + element.QuantityWorker;\r\n tmp[6] = element.CloseWorkerAuth == 'C' ? tmp[6] + 1 : tmp[6];\r\n tmp[7] = element.CloseWorkerAuth == 'A' ? tmp[7] + 1 : tmp[7];\r\n }\r\n }\r\n });\r\n for (let [key, value] of map) {\r\n nueva_lista.push(value)\r\n }\r\n return nueva_lista\r\n }\r\n }\r\n }\r\n\r\n getCompanies() {\r\n let url = GET_ALL_COMPANIES;\r\n this.srv.getCall(url).subscribe(data => {\r\n if (data.success) {\r\n if (data.val !== null) {\r\n let rs = data.val;\r\n rs.forEach(element => {\r\n this.companies_list.push({ id: element.CompanyID, name: element.Name });\r\n this.ruc_list.push({ id: element.CompanyID, ruc: element.Ruc });\r\n })\r\n }\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString());\r\n }\r\n\r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 9 ? `0${(date.getMonth() + 1).toString()}` : (date.getMonth() + 1).toString())\r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}` : date.getDate().toString()) + ' ' +\r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}` : date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}` : date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}` : date.getSeconds().toString());\r\n }\r\n downloadExcel() {\r\n\r\n this.workbook = new Workbook();\r\n let nombreXLSX = \"Reporte de Ordenes de compra.xlsx\";\r\n if (this.option_processes == 1) {\r\n nombreXLSX = \"Documentos de trabajadores externos.xlsx\";\r\n\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.job_applicant,\r\n this.translations.company,\r\n this.translations.level,\r\n this.translations.date_creation,\r\n this.translations.worker_quantity,\r\n this.translations.request_induction_quantity,\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.job_applicant,\r\n this.translations.level,\r\n this.translations.date_creation,\r\n this.translations.worker_quantity,\r\n this.translations.request_induction_quantity,\r\n\r\n ];\r\n\r\n }\r\n } else if (this.option_processes == 2) {\r\n nombreXLSX = \"Trabajadores de los contratistas registrados.xlsx\";\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.company,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.emergency\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.emergency\r\n\r\n ];\r\n\r\n }\r\n\r\n } else if (this.option_processes == 3) {\r\n nombreXLSX = \"Trabajadores de los contratistas registrados.xlsx\";\r\n if (this.isSkretting == true) {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.company,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.work_status,\r\n\r\n ];\r\n\r\n } else {\r\n this.lista_titulos = [\r\n this.translations.code,\r\n this.translations.requested_by,\r\n this.translations.level,\r\n this.translations.date_init,\r\n this.translations.date_end,\r\n this.translations.worker_quantity,\r\n this.translations.work_status,\r\n\r\n ];\r\n\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n this.ContainsExcel();\r\n this.workbook.creator = \"Comex\";\r\n this.workbook.xlsx.writeBuffer().then((data) => {\r\n const blob = new Blob([data]);\r\n fs.saveAs(blob, nombreXLSX);\r\n })\r\n }\r\n private ContainsExcel() {\r\n const sheet = this.workbook.addWorksheet('Sheet');\r\n\r\n sheet.getColumn(\"A\").width = 8;\r\n sheet.getColumn(\"B\").width = 20;\r\n sheet.getColumn(\"C\").width = 20;\r\n sheet.getColumn(\"D\").width = 20;\r\n sheet.getColumn(\"E\").width = 20;\r\n sheet.getColumn(\"F\").width = 20;\r\n sheet.getColumn(\"G\").width = 20;\r\n sheet.getColumn(\"H\").width = 20;\r\n sheet.getColumn(\"I\").width = 20;\r\n sheet.getColumn(\"J\").width = 20;\r\n sheet.getColumn(\"K\").width = 20;\r\n sheet.getColumn(\"L\").width = 20;\r\n sheet.getColumn(\"M\").width = 20;\r\n sheet.getColumn(\"N\").width = 20;\r\n sheet.getColumn(\"O\").width = 20;\r\n sheet.getColumn(\"P\").width = 20;\r\n sheet.getColumn(\"Q\").width = 20;\r\n sheet.getColumn(\"R\").width = 20;\r\n sheet.getColumn(\"S\").width = 20;\r\n sheet.getColumn(\"T\").width = 20;\r\n sheet.getColumn(\"U\").width = 20;\r\n sheet.getColumn(\"V\").width = 20;\r\n sheet.getColumn(\"W\").width = 20;\r\n sheet.getColumn(\"X\").width = 20;\r\n sheet.getColumn(\"Y\").width = 20;\r\n sheet.getColumn(\"Z\").width = 20;\r\n // ALINEAR COLUMNAS\r\n sheet.columns.forEach((column) => {\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n column.alignment = { vertical: 'middle', wrapText: true }\r\n });\r\n\r\n\r\n\r\n // establecer los valores de las columnas y del header\r\n\r\n //establecer los header\r\n const headerRow = sheet.getRow(1);\r\n // console.log(\"Lista de titulos:\", this.lista_titulos);\r\n headerRow.values = this.lista_titulos;\r\n // headerRow.values = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];\r\n headerRow.font = { bold: true, size: 12 };\r\n\r\n // agregar los datos a las filas\r\n const rowsToInsert = sheet.getRows(2, this.rows.length);\r\n\r\n for (let index = 0; index < rowsToInsert.length; index++) {\r\n const itemData = this.rows[index]; //obtenemos el item segun el index de la iteraciòn(recorrido)\r\n const row = rowsToInsert[index]; //obtenemos la primera fila segun el index de la iteraciòn(recorrido)\r\n // los valores de itemData seran asignados a row (fila actual en la iteraciòn)\r\n\r\n if (this.option_processes == 1) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n itemData.RequestId,\r\n itemData.WhoRequest,\r\n itemData.namecompany,\r\n itemData.plantaname,\r\n itemData.CreationTime == null ? \"\" : itemData.CreationTime.split('T')[0].split('T')[0],\r\n itemData.listRequestdetail.length,\r\n itemData.contadorEvaluations,\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.EmployeeName,\r\n itemData.Name,\r\n itemData.NameDoc,\r\n itemData.status_name\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.RequestId,\r\n itemData.WhoRequest,\r\n itemData.plantaname,\r\n itemData.CreationTime == null ? \"\" : itemData.CreationTime.split('T')[0].split('T')[0],\r\n itemData.listRequestdetail.length,\r\n itemData.contadorEvaluations,\r\n itemData.EmployeeId,\r\n itemData.NumberIdentification,\r\n itemData.EmployeeName,\r\n itemData.Name,\r\n itemData.NameDoc,\r\n itemData.status_name\r\n ];\r\n\r\n }\r\n } else if (this.option_processes == 2) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n\r\n itemData.EntryRequestId,\r\n itemData.Requiredby,\r\n itemData.CompanyName,\r\n itemData.PlantaName,\r\n itemData.StartDate == null ? \"\" : itemData.StartDate.split('T')[0],\r\n itemData.EndDte.split('T')[0],\r\n itemData.RequestDetails.length,\r\n itemData.Emergency\r\n\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.EntryRequestId,\r\n itemData.Requiredby,\r\n itemData.PlantaName,\r\n itemData.StartDate == null ? \"\" : itemData.StartDate.split('T')[0],\r\n itemData.EndDte.split('T')[0],\r\n itemData.RequestDetails.length,\r\n itemData.Emergency\r\n\r\n ];\r\n\r\n }\r\n\r\n } else if (this.option_processes == 3) {\r\n\r\n if (this.isSkretting == true) {\r\n row.values = [\r\n\r\n\r\n itemData.WorkAuthId,\r\n itemData.Requiredby,\r\n itemData.Name,\r\n itemData.PlantaName,\r\n itemData.Wa_DateBegin == null ? \"\" : itemData.Wa_DateBegin.split('T')[0],\r\n itemData.Wa_DaTeend == null ? \"\" : itemData.Wa_DaTeend.split('T')[0],\r\n itemData.QuantityWorker,\r\n itemData.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto',\r\n\r\n\r\n ];\r\n\r\n } else {\r\n row.values = [\r\n itemData.WorkAuthId,\r\n itemData.Requiredby,\r\n itemData.PlantaName,\r\n itemData.Wa_DateBegin == null ? \"\" : itemData.Wa_DateBegin.split('T')[0],\r\n itemData.Wa_DaTeend == null ? \"\" : itemData.Wa_DaTeend.split('T')[0],\r\n itemData.QuantityWorker,\r\n itemData.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto',\r\n\r\n ];\r\n\r\n }\r\n\r\n }\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'code' | translate}} {{'requested_by' | translate}}{{'company' | translate}}{{'level' | translate}} {{'date_init' | translate}}{{'date_end' | translate}}{{'worker_quantity' | translate}}{{'work_status' | translate}}
{{row.WorkAuthId}}{{row.Requiredby}}{{row.Name}}{{row.PlantaName}}{{row.Wa_DateBegin.split('T')[0]}}{{row.Wa_DaTeend.split('T')[0]}}{{row.QuantityWorker}}{{row.CloseWorkerAuth == 'C' ? 'Cerrado' : 'Abierto'}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\nimport { Router } from '@angular/router';\r\nimport { LoginService } from '../../services/authentication/login.service';\r\nimport { ApiService } from '../../services/main/api.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable, from, of } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { environment } from '../../../environments/environment';\r\nimport * as moment from 'moment-timezone';\r\n\r\n@Component({\r\n selector: 'app-settings',\r\n templateUrl: './settings.component.html',\r\n styleUrls: ['./settings.component.css']\r\n})\r\nexport class SettingsComponent implements OnInit {\r\n\r\n translations:any;\r\n available_languages:any;\r\n currlang:any;\r\n version:any;\r\n momentjs: any = moment;\r\n last_sync:any;\r\n\r\n \tconstructor(\r\n \t\tpublic srv: LoginService,\r\n \t\tpublic _router: Router,\r\n public translate: TranslateService,\r\n public api: ApiService\r\n \t) { }\r\n\r\n \tngOnInit() {\r\n //console.log(environment.version);\r\n //this.version = environment.version;\r\n this.getTranslations();\r\n\r\n //console.log(this.translate.currentLang);\r\n this.currlang = this.translate.currentLang;\r\n //console.log(this.translate);\r\n\r\n this.translate.onLangChange.subscribe(() => {\r\n this.getTranslations();\r\n });\r\n\r\n this.version = environment.version;\r\n \r\n this.api.getPeristedData('md_lastsync').then(x => {\r\n this.last_sync = x;\r\n });\r\n \t}\r\n\r\n \tlogout(){\r\n \t\tSwal.fire({\r\n title: this.translations.logout_msg,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n cancelButtonText: this.translations.cancel,\r\n confirmButtonText: this.translations.ok\r\n }).then((result) => {\r\n if (result.value) {\r\n \t//console.log(this.srv);\r\n \tthis.srv.clearData().then(() => {\r\n \t\tthis._router.navigate(['/authentication/login']);\r\n \t});\r\n }\r\n });\r\n \t}\r\n\r\n getTranslations(){\r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n });\r\n }\r\n\r\n setLang(str:any){\r\n //console.log(str);\r\n this.translate.use(str);\r\n }\r\n\r\n async checkUpdates(){\r\n Swal.fire({\r\n title: this.translations.update_confirm,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n cancelButtonText: this.translations.cancel,\r\n confirmButtonText: this.translations.ok\r\n }).then((result) => {\r\n if (result.value) {\r\n window.location.reload(true);\r\n }\r\n });\r\n }\r\n\r\n public getMasterData(){\r\n\r\n Swal.fire({\r\n title: this.translations.masterdata_confirm,\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n showLoaderOnConfirm: true,\r\n cancelButtonText: this.translations.cancel,\r\n confirmButtonText: this.translations.ok,\r\n preConfirm: () => {\r\n this.getCompanyData().subscribe(c => {\r\n this.getCommonData().subscribe(d => {\r\n Swal.fire(this.translations.updated, '', 'success');\r\n });\r\n });//end company data\r\n }\r\n }).then((result) => {\r\n \r\n });\r\n \r\n }\r\n\r\n public getCompanyData(){\r\n //var ent_url = 'PathologicalDataInput/PathologicalEntities';\r\n var ent_url = 'Sampling/SamplingEntities';\r\n\r\n return this.api.getCall(ent_url).pipe(\r\n mergeMap(data => {\r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n \r\n if(mydata.success == true ){\r\n //return of(mydata.result.accessToken);\r\n this.last_sync = this.momentjs().tz('America/Guayaquil').format('YYYY-MM-DD hh:mm');\r\n this.api.persistData('md_lastsync', this.last_sync);\r\n return from(this.api.persistData('companies', mydata.val));\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(false))\r\n );\r\n }\r\n\r\n public getCommonData(){\r\n var par_url = 'SystemParameter/All';\r\n\r\n return this.api.getCall(par_url).pipe(\r\n mergeMap(data => {\r\n let mydata:any = {success: false, msg:'', val:[]};\r\n mydata = data;\r\n \r\n if(mydata.success == true ){\r\n this.last_sync = this.momentjs().tz('America/Guayaquil').format('YYYY-MM-DD hh:mm');\r\n this.api.persistData('md_lastsync', this.last_sync);\r\n return from(this.api.persistData('common', mydata.val));\r\n }\r\n else{\r\n return of(false);\r\n }\r\n }),\r\n //timeout(MAX_TIME),\r\n catchError(data => of(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
{{ 'language' | translate }}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n
\r\n
\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
","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router, NavigationEnd, ActivatedRoute } from '@angular/router';\r\nimport { filter, map, mergeMap } from 'rxjs/operators';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-breadcrumb',\r\n templateUrl: './breadcrumb.component.html'\r\n})\r\n\r\nexport class BreadcrumbComponent implements OnInit {\r\n @Input() layout;\r\n pageInfo;\r\n translations:any;\r\n\r\n constructor(\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private titleService: Title,\r\n public translate: TranslateService\r\n ) {\r\n this.router.events\r\n .pipe(filter(event => event instanceof NavigationEnd))\r\n .pipe(map(() => this.activatedRoute))\r\n .pipe(\r\n map(route => {\r\n while (route.firstChild) {\r\n route = route.firstChild;\r\n }\r\n return route;\r\n })\r\n )\r\n .pipe(filter(route => route.outlet === 'primary'))\r\n .pipe(mergeMap(route => route.data))\r\n .subscribe(event => { \r\n this.translate.getTranslation(this.translate.currentLang)\r\n .subscribe((translations) => {\r\n this.translations = translations;\r\n this.titleService.setTitle(translations[event['title']]);\r\n });\r\n\r\n this.pageInfo = event;\r\n // console.log(this.pageInfo)\r\n });\r\n }\r\n ngOnInit() {}\r\n}\r\n","\r\n\r\n\r\n
\r\n
\r\n
\r\n

{{pageInfo?.title | translate}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Component, AfterViewInit, EventEmitter, Output } from '@angular/core';\r\nimport {\r\n NgbModal,\r\n ModalDismissReasons,\r\n NgbPanelChangeEvent,\r\n NgbCarouselConfig\r\n} from '@ng-bootstrap/ng-bootstrap';\r\nimport { PerfectScrollbarConfigInterface } from 'ngx-perfect-scrollbar';\r\nimport { Router } from '@angular/router';\r\nimport { Storage } from '@ionic/storage';\r\nimport { LoginService } from '../../../services/authentication/login.service';\r\nimport {environment} from \"../../../../environments/environment\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-navigation',\r\n templateUrl: './navigation.component.html'\r\n})\r\nexport class NavigationComponent implements AfterViewInit {\r\n\r\n isUpToDate: boolean = true;\r\n browserName: string = '';\r\n browserVersion: string = '';\r\n\r\n @Output() toggleSidebar = new EventEmitter();\r\n version:any;\r\n public user: any;\r\n public company: any;\r\n public photo: any;\r\n\r\n public config: PerfectScrollbarConfigInterface = {};\r\n\r\n public showSearch = false;\r\n online: boolean = true;\r\n connectionSpeed: string = 'unknown';\r\n constructor(\r\n private modalService: NgbModal,\r\n private _router: Router,\r\n private storage: Storage,\r\n private srv: LoginService\r\n ) {\r\n this.version = environment.version;\r\n // informacion del usuario\r\n storage.get('userinfo').then(x => {\r\n this.user = x.name;\r\n this.company = x.selectedCompanyName;\r\n // console.log(this.user)\r\n this.photo = x.photo;\r\n });\r\n }\r\n\r\n ngAfterViewInit() {}\r\n\r\n public logout() {\r\n this.srv.clearData().then(() => {\r\n this._router.navigate(['/authentication/login']);\r\n });\r\n }\r\n ngOnInit(): void {\r\n this.srv.onlineStatus$.subscribe(status => this.online = status);\r\n this.srv.connectionSpeed$.subscribe(speed => this.connectionSpeed = speed);\r\n\r\n this.isUpToDate = this.srv.isBrowserUpToDate();\r\n this.browserName = this.srv.getBrowserName();\r\n this.browserVersion = this.srv.getBrowserVersion();\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
  • {{ browserName }}(v. {{ browserVersion }} ) Desactualizado
  • \r\n
  • \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
  • \r\n
  • v. {{this.version}}
  • \r\n\r\n
  • ¡{{'hi' | translate}} {{user}}!
  • \r\n \r\n \r\n \r\n
  • \r\n \r\n \"user\"\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \"user\"\r\n
    \r\n
    \r\n

    {{this.user}}

    \r\n
    \r\n
    \r\n \r\n {{'logout' | translate }}\r\n
    \r\n
    \r\n
  • \r\n \r\n \r\n \r\n
\r\n","import { RouteInfo } from './sidebar.metadata';\r\n\r\n\r\n\r\nexport const ROUTES: RouteInfo[] = [\r\n {\r\n path: '/dashboard',\r\n title: 'menu_home',\r\n icon: 'far fa-comments',\r\n class: '',\r\n extralink: false,\r\n perm: 'DG_COMUNICADOS',\r\n submenu: []\r\n },\r\n {\r\n path: '/documentshome',\r\n title: 'menu_docs',\r\n icon: 'far fa-file',\r\n class: '',\r\n extralink: false,\r\n perm: 'DG_DOCSHOME',\r\n submenu: []\r\n },\r\n {\r\n path: '/reportshome',\r\n title: 'menu_reports',\r\n icon: 'fas fa-chart-line',\r\n class: '',\r\n extralink: false,\r\n perm: 'DG_REPORTES',\r\n submenu: []\r\n },\r\n {\r\n path: '/formshome',\r\n title: 'menu_forms',\r\n icon: 'icon icon-note',\r\n class: '',\r\n extralink: false,\r\n perm: 'DG_FORMULARIOS',\r\n submenu: []\r\n },\r\n {\r\n path: '/prochome',\r\n title: 'menu_processes',\r\n icon: 'fa fa-cogs',\r\n class: '',\r\n extralink: false,\r\n perm: 'DG_PROCESOS',\r\n submenu: []\r\n },\r\n {\r\n path: '/excelenciahome',\r\n title: 'menu_operacional',\r\n icon: 'icon icon-globe',\r\n class: '',\r\n extralink: false,\r\n perm: 'DG_EXCELENCIA_OPERACIONAL',\r\n submenu: []\r\n },\r\n {\r\n path: '/cruds',\r\n title: 'menu_maintenance',\r\n icon: 'fa fa-wrench',\r\n class: '',\r\n extralink: false,\r\n perm: 'DG_MANTENIMIENTO',\r\n submenu: []\r\n },\r\n {\r\n path: '/settings',\r\n title: 'menu_general',\r\n icon: 'icon icon-settings',\r\n class: '',\r\n extralink: false,\r\n perm: 'DG_CONFIGURACIONES',\r\n submenu: []\r\n }\r\n];\r\n","import { Component, AfterViewInit, OnInit } from '@angular/core';\r\nimport { ROUTES } from './menu-items';\r\nimport { RouteInfo } from './sidebar.metadata';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { LoginService } from '../../../services/authentication/login.service';\r\nimport { PermissionService } from 'src/app/services/authentication/permission.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html'\r\n})\r\nexport class SidebarComponent implements OnInit {\r\n showMenu = '';\r\n showSubMenu = '';\r\n public sidebarnavItems: any[];\r\n public company: any;\r\n permissions = [];\r\n lista = [];\r\n\r\n // this is for the open close\r\n addExpandClass(element: any) {\r\n if (element === this.showMenu) {\r\n this.showMenu = '0';\r\n } else {\r\n this.showMenu = element;\r\n }\r\n }\r\n addActiveClass(element: any) {\r\n if (element === this.showSubMenu) {\r\n this.showSubMenu = '0';\r\n } else {\r\n this.showSubMenu = element;\r\n }\r\n }\r\n\r\n constructor(\r\n private modalService: NgbModal,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public srv: LoginService,\r\n private permission: PermissionService\r\n ) {\r\n \r\n }\r\n\r\n // End open close\r\n ngOnInit() {\r\n this.sidebarnavItems = ROUTES.filter(sidebarnavItem => sidebarnavItem);\r\n this.srv.getPermissions().then(x => {\r\n this.permissions = x;\r\n });\r\n }\r\n\r\n hasPermission(str:string){\r\n // console.log(str)\r\n // console.log(this.permissions)\r\n let flag = false;\r\n this.permissions.forEach(element => {\r\n if(element.Permission == str) {\r\n flag = true;\r\n }\r\n });\r\n return flag;\r\n }\r\n}\r\n","\r\n","import {\r\n Component,\r\n Input,\r\n OnDestroy,\r\n Inject,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport {\r\n Router,\r\n NavigationStart,\r\n NavigationEnd,\r\n NavigationCancel,\r\n NavigationError\r\n} from '@angular/router';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-spinner',\r\n template: `
\r\n
\r\n
\r\n
\r\n
\r\n
`,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SpinnerComponent implements OnDestroy {\r\n public isSpinnerVisible = true;\r\n\r\n @Input() public backgroundColor = 'rgba(0, 115, 170, 0.69)';\r\n\r\n constructor(\r\n private router: Router,\r\n @Inject(DOCUMENT) private document: Document\r\n ) {\r\n this.router.events.subscribe(\r\n event => {\r\n if (event instanceof NavigationStart) {\r\n this.isSpinnerVisible = true;\r\n } else if (\r\n event instanceof NavigationEnd ||\r\n event instanceof NavigationCancel ||\r\n event instanceof NavigationError\r\n ) {\r\n this.isSpinnerVisible = false;\r\n }\r\n },\r\n () => {\r\n this.isSpinnerVisible = false;\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.isSpinnerVisible = false;\r\n }\r\n}\r\n","export class Companieadmin {\r\n Name: string;\r\n Email: string;\r\n PassWord: string;\r\n fecha: string;\r\n Username: string;\r\n CreatorUserID;\r\n Ruc;\r\n Direction;\r\n Telephone;\r\n CompanyID;\r\n LastModifierUserID;\r\n ResetPass;\r\n typeCompany;\r\n IsRecurrent;\r\n\r\n constructor(){}\r\n}\r\n","export class Newinfo {\r\n TypeID: number;\r\n Title: string;\r\n SubTitle: string;\r\n Description: string;\r\n UrlPicture: string;\r\n UrlLinks: string;\r\n CreatorUser: string;\r\n DateEnd: any;\r\n constructor(){}\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'pipemodal'\r\n})\r\nexport class PipemodalPipe implements PipeTransform {\r\n\r\n transform(value: boolean, ...args: string[]) {\r\n return value ? \"approval\" : \"reject\";\r\n }\r\n\r\n}\r\n","import {Injectable, NgZone} from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Global } from '../global';\r\nimport { ApiService } from '../../services/main/api.service';\r\nimport { Router, Params, CanActivate, ActivatedRoute, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport { ReturnStatement } from '@angular/compiler';\r\nimport {Observable, from, of, BehaviorSubject} from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { Storage } from '@ionic/storage';\r\n//import { ApiService } from '../main/api.service';\r\nimport * as moment from 'moment-timezone';\r\nimport { environment } from '../../../environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { PermissionService } from './permission.service';\r\nimport {DeviceDetectorService} from \"ngx-device-detector\";\r\n\r\nconst API_GENERAL_URL = environment.Global.API_GENERAL_URL;\r\nconst API_CONSULTACOMPANIESRUC = Global.API_CONSULTACOMPANIESRUC;\r\n\r\n//max time for api requests\r\nconst MAX_TIME = 60000;\r\nconst TOKEN_KEY = 'token';\r\nconst REFRESHTOKEN_KEY = 'refresh';\r\nconst PERMISSIONS_KEY = 'permissions';\r\nconst MODULES_KEY = 'modules';\r\nconst COMPANIES_KEY = 'companies';\r\n\r\nconst TOKEN_KEY_AQ = 'token_aquasim';\r\nconst REFRESHTOKEN_KEY_AQ = 'refreshtoken_aquasim';\r\n\r\nconst TOKEN_EXPIRE_KEY = 'token_expires_aquasim';\r\nconst TOKEN_EXPIRES_PERIOD = 20;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class LoginService implements CanActivate {\r\n\r\n private url: any;\r\n private select_url:any;\r\n private token: any;\r\n public cont: number;\r\n momentjs: any = moment;\r\n pages:any;\r\n modules: any;\r\n\r\n public onlineStatus$: BehaviorSubject = new BehaviorSubject(navigator.onLine);\r\n public connectionSpeed$: BehaviorSubject = new BehaviorSubject(this.getConnectionSpeed());\r\n constructor(\r\n private _router: Router,\r\n private _http: HttpClient,\r\n private ngZone: NgZone,\r\n private deviceService: DeviceDetectorService,\r\n private storage: Storage,\r\n ) {\r\n this.url = API_GENERAL_URL;\r\n this.select_url = API_CONSULTACOMPANIESRUC;\r\n\r\n // Detecta cambios en la conexión a Internet\r\n window.addEventListener('online', () => this.updateOnlineStatus(true));\r\n window.addEventListener('offline', () => this.updateOnlineStatus(false));\r\n\r\n // Detecta cambios en la velocidad de conexión si `navigator.connection` está disponible\r\n const connection = (navigator as any).connection;\r\n if (connection) {\r\n connection.addEventListener('change', () => {\r\n this.ngZone.run(() => this.connectionSpeed$.next(this.getConnectionSpeed()));\r\n });\r\n }\r\n }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n var page = state.url;\r\n return this.storage.get(PERMISSIONS_KEY).then( async permissions => {\r\n let listMenus = ['dashboard', 'settings'];\r\n let idPage:any;\r\n let checker: any = [];\r\n if( !Array.isArray(permissions) ){\r\n this.clearData().then(() => {\r\n this._router.navigate(['/authentication/login']);\r\n });\r\n return false;\r\n }\r\n await permissions.forEach(async permission => {\r\n // console.log(permission);\r\n idPage = await this.getPageIdFromModule(permission.Permission);\r\n if( idPage != false ){\r\n listMenus.push(idPage);\r\n }\r\n });\r\n await new Promise(resolve => setTimeout(resolve, 250));\r\n listMenus.forEach( async menu => {\r\n if (page.toLowerCase().includes(menu.toLowerCase())) {\r\n await checker.push(true);\r\n }\r\n })\r\n if( checker.length > 0 ){\r\n // debugger;\r\n return true;\r\n }\r\n else{\r\n // debugger;\r\n this.clearData().then(() => {\r\n this._router.navigate(['/authentication/login']);\r\n });\r\n return false;\r\n };\r\n });\r\n }\r\n\r\n\r\n /**\r\n * Function to evaluate modules permissions\r\n * @param permission permission from modules list\r\n * @returns true if exist id otherwise false\r\n */\r\n async getPageIdFromModule(permission){\r\n let tmp = [];\r\n this.pages = await this.getModules().then(data => {\r\n return data;\r\n });\r\n // console.log(this.pages)\r\n tmp = this.pages.filter((a) => {\r\n return a.name == permission;\r\n });\r\n if( tmp.length > 0 ){\r\n return tmp[0].id;\r\n }\r\n return false;\r\n }\r\n\r\n /**\r\n * Function to get data from localstorage\r\n * @returns Permissions list\r\n */\r\n getPermissions(){\r\n return this.storage.get(PERMISSIONS_KEY);\r\n }\r\n\r\n /**\r\n * Function to get data from localstorage\r\n * @returns Modules list\r\n */\r\n getModules() {\r\n return this.storage.get(MODULES_KEY);\r\n }\r\n public login(data: any) {\r\n const params = JSON.stringify(data);\r\n const headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this._http.post(`${this.url}Login/Login`, params, { headers });\r\n }\r\n\r\n\r\n public loginExternal(data: any) {\r\n const params = JSON.stringify(data);\r\n const headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this._http.post(`${this.url}loginExternal/ExternalLogin`, params, { headers });\r\n}\r\n\r\n public getPinCode(email: any) {\r\n\r\n var aq_url='https://wa-t-prevent.azurewebsites.net';\r\n //var aq_apptoken = '{22261112-BC9B-4042-A9D6-5B9AEC292F85}';\r\n //debugger;\r\n const params = {\r\n //servicetoken: aq_apptoken,\r\n Ruc: email/*,\r\n pincode: pin,\r\n newpassword: pwd*/\r\n };\r\n console.log(\"params:\",params);\r\n const headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this._http.post(`${aq_url}/api/CompaniesConsulta/CompanySelectRuc`, params, { headers });\r\n //https://aquasim.skretting.com/\r\n /*var aq_url = 'https://az-aquasimuat.skretting.com/';\r\n var aq_apptoken = '{22261112-BC9B-4042-A9D6-5B9AEC292F85}';\r\n\r\n const params = {\r\n servicetoken: aq_apptoken,\r\n email: email\r\n };\r\n\r\n const headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this._http.post(`${aq_url}services/api/v1.0/passwordreset/GetPincode`, params, { headers });*/\r\n }\r\n\r\n public resetPwd(email: any, pin:any, pwd:any) {\r\n //https://aquasim.skretting.com/\r\n var aq_url = 'https://az-aquasimuat.skretting.com/';\r\n var aq_apptoken = '{22261112-BC9B-4042-A9D6-5B9AEC292F85}';\r\n //debugger;\r\n const params = {\r\n servicetoken: aq_apptoken,\r\n email: email,\r\n pincode: pin,\r\n newpassword: pwd\r\n };\r\n\r\n const headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this._http.post(`${aq_url}services/api/v1.0/passwordreset/resetpassword`, params, { headers });\r\n }\r\n\r\n public saveData(data: any) {\r\n // console.log(data);\r\n\r\n // data['UserInfo']['result']['ListPermissionsSet'].push({\r\n // Crud: 'C|R|U|D', Permission: 'DG_DOCSHOME'\r\n // })\r\n\r\n // data['UserInfo']['result']['ListPagesSet'].push({\r\n // name: 'DG_DOCSHOME', id: 'documentshome', principal: 0\r\n // })\r\n\r\n console.log(data);\r\n\r\n var promises =\r\n [\r\n // this.storage.set('permissions', permissions),\r\n this.storage.set('userinfo', data['UserInfo']['result']),\r\n this.storage.set('username', data['UserInfo']['result']['name']),\r\n this.storage.set('company_id', data['UserInfo']['result']['selectedCompanyId']),\r\n this.storage.set('permissions', data['UserInfo']['result']['ListPermissionsSet']),\r\n this.storage.set('modules', data['UserInfo']['result']['ListPagesSet'])\r\n ];\r\n\r\n return Promise.all(promises);\r\n }\r\n\r\n public saveAndRefreshInitialData(data: any) {\r\n\r\n this.cont = 0;\r\n var permissions = [];\r\n const my_companies: Array = [];\r\n const temp = Object.keys(data['Permissions']['Result']).map(function(key) {\r\n return [(data['Permissions']['Result'])[key]];\r\n });\r\n\r\n if( (data['Permissions'] != undefined) && (data['Permissions']['Result'] != undefined) ){\r\n if( Array.isArray(data['Permissions']['Result']) ){\r\n var companies = data['Permissions']['Result'];\r\n\r\n companies.forEach(x => {\r\n //console.log(x);\r\n my_companies.push({name: x.cmpName, id: x.cmpID});\r\n x.Modules.forEach(y => {\r\n if( permissions.indexOf(y.Name) < 0 ){\r\n permissions.push(y.Name);\r\n }\r\n });\r\n });\r\n }\r\n }\r\n\r\n var exp_time = this.momentjs().add(TOKEN_EXPIRES_PERIOD, 'm').unix();\r\n // debugger;\r\n var promises =\r\n [\r\n this.storage.set('username', data['UserInfo']['result']['name']),\r\n this.storage.set('userinfo', data['UserInfo']['result']),\r\n this.storage.set('token', data['TokenIC2']),\r\n this.storage.set('refresh', data['RefreshTokenIC2']),\r\n this.storage.set('token_aquasim', data['TokenAquasym']),\r\n this.storage.set('refreshtoken_aquasim', data['RefreshTokenAquasym']),\r\n this.storage.set('token_expires_aquasim', exp_time),\r\n this.storage.set('permissions', permissions),\r\n this.storage.set('company_id', data['UserInfo']['result']['selectedCompanyId']),\r\n ];\r\n\r\n return Promise.all(promises);\r\n }\r\n\r\n public clearData(){\r\n return this.storage.clear();\r\n }\r\n private updateOnlineStatus(status: boolean) {\r\n this.ngZone.run(() => this.onlineStatus$.next(status));\r\n }\r\n\r\n private getConnectionSpeed(): string {\r\n const connection = (navigator as any).connection; debugger;\r\n if (connection) {\r\n // Devuelve la velocidad de conexión en función de los valores del navegador\r\n if (connection.downlink >= 2) return 'good';\r\n else if (connection.downlink < 2 && connection.downlink > 0.5) return 'average';\r\n else return 'poor';\r\n }\r\n return 'unknown'; // Si no está disponible, devolvemos \"unknown\"\r\n }\r\n private latestVersions: { [key: string]: number } = {\r\n 'Chrome': 129, // Define las versiones mínimas aceptables\r\n 'Firefox': 130,\r\n 'Safari': 14,\r\n 'Edge': 130,\r\n 'MS-Edge-Chromium': 130\r\n };\r\n // Método para verificar si el navegador está actualizado\r\n isBrowserUpToDate(): boolean {\r\n const browserInfo = this.deviceService.browser;\r\n const versionInfo = parseInt(this.deviceService.browser_version, 10);\r\n\r\n // Compara la versión actual del navegador con la versión mínima requerida\r\n if (this.latestVersions[browserInfo] && versionInfo >= this.latestVersions[browserInfo]) {\r\n return true; // El navegador está actualizado\r\n }\r\n return false; // El navegador no está actualizado\r\n }\r\n\r\n // Método para obtener el nombre del navegador\r\n getBrowserName(): string {\r\n return this.deviceService.browser;\r\n }\r\n\r\n // Método para obtener la versión del navegador\r\n getBrowserVersion(): string {\r\n return this.deviceService.browser_version;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { ApiService } from '../main/api.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { resolve } from 'url';\r\nimport { Observable } from 'rxjs';\r\n\r\n\r\nconst API_GET_ALL_MENUS = environment.Global.API_GET_ALL_MENUS;\r\nconst API_GET_ALL_MODULES = environment.Global.API_GET_ALL_MODULES;\r\nconst API_GET_PAGES_BY_MENUID = environment.Global.API_GET_PAGES_BY_MENUID;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class PermissionService {\r\n\r\n constructor(private srv: ApiService) { }\r\n\r\n public getMenus(): Promise {\r\n return this.srv.getCall(API_GET_ALL_MENUS).toPromise().then(x => {\r\n if (x.val != null) {\r\n let newList = [];\r\n x.val.forEach(element => {\r\n newList.push(\r\n {\r\n path: element.Path,\r\n title: element.Title,\r\n icon: element.Icon,\r\n class: '',\r\n extralink: false,\r\n perm: element.Permissions,\r\n submenu: []\r\n },\r\n )\r\n })\r\n return x.val;\r\n } else {\r\n return [];\r\n }\r\n });\r\n }\r\n\r\n public getModules() {\r\n return this.srv.getCall(API_GET_ALL_MODULES).toPromise().then(data => {\r\n return data;\r\n });\r\n }\r\n\r\n public getModulesByMenuId(id) {\r\n return this.srv.getCall(API_GET_PAGES_BY_MENUID + id).toPromise().then(data => {\r\n let items = []\r\n if (data.success) {\r\n if (data.val != null || (Array.isArray(data.val) && data.val.length > 0)) {\r\n data.val.forEach(element => {\r\n items.push(\r\n {\r\n title: element.Title,\r\n url: element.Path,\r\n icon: element.Icon,\r\n perm: element.Permission,\r\n principal: element.Principal\r\n }\r\n )\r\n })\r\n }else {\r\n items = []\r\n }\r\n } else {\r\n items = []\r\n }\r\n return items;\r\n });\r\n }\r\n}\r\n","export const ConfigVehicle = {\r\n tipo: [\r\n {id: 1, name:'Liviano'},\r\n {id: 2, name:'Turbo'},\r\n {id: 3, name:'Sencillo'},\r\n {id: 4, name:'Doble Troque'},\r\n {id: 5, name:'Camion'},\r\n {id: 6, name:'Remolque'},\r\n {id: 7, name:'Remolque Articulado'},\r\n {id: 8, name:'Tanque'},\r\n {id: 9, name:'Estacas'},\r\n {id: 10, name:'Refrigerado'},\r\n {id: 11, name:'Volqueta'},\r\n {id: 12, name:'Cama Baja'},\r\n {id: 13, name:'Plataforma'}\r\n ],\r\n marca: [\r\n {id: 1, name:'Mercedes'},\r\n {id: 2, name:'Hino'},\r\n {id: 3, name:'Hyundai'},\r\n {id: 4, name:'Chevrolet'},\r\n {id: 5, name:'Peugot'},\r\n {id: 6, name:'Jac'},\r\n {id: 7, name:'Foton'},\r\n {id: 8, name:'Shacman'},\r\n {id: 9, name:'Dongfeng'},\r\n {id: 10, name:'Camc'},\r\n ]\r\n\r\n}","export const Global = {\r\n KEY: '234NutrecoCo4562',//clave para encryptar/desencryptar claves de userextarnal\r\n API_GENERAL_URL: 'https://gesconapi.sydfast.com/api/',\r\n //API_GENERAL_URL: 'http://localhost/webapi/api/',\r\n //API_GENERAL_URL: 'https://gesconapidev.sydfast.com/api/',\r\n //API_GENERAL_URL: 'http://localhost:5000/api/', // apuntando a Azure\r\n\r\n //APIS COMPANIES ADMIN\r\n API_CONSULTACOMPANIESRUC: 'CompaniesConsulta/CompanySelectRuc',\r\n API_UPDATECOMPANIE:'RegisterCompany/UpdateCompaniemp',\r\n API_UPDATE_DATA_COMPANY: \"CompanyDocument/Update\",\r\n API_GET_DOCUMENT_BY_COMPANY_ID: \"CompanyDocument/GetDocumentsId/\",\r\n API_GET_FILE_COMPANY_ID: \"CompanyDocument/GetFile/\",\r\n\r\n API_COMPANY_GET_DOCUMENT_APPROVE: \"CompanyDocument/GetDocumentstoApprove\",\r\n API_CAN_CHANGE_COMPANY_TYPE: \"CompanyDocument/GetCanChangeCompanyType/\",\r\n API_POST_UPDATE_STATUS_REVERSE_DOCUMENT: \"CompanyDocument/ReverseStatusPending/\",\r\n API_EMPLOYEE_GET_DOCUMENT_APPROVE: \"EmployeeDocument/GetDocumentstoApprove\",\r\n API_POST_UPDATE_STATUS_REVERSE_DOCUMENT_EMPLOYEED: \"EmployeeDocument/ReverseStatusPending/\",\r\n API_VEHICLE_GET_DOCUMENT_APPROVE: \"VehicleDocument/GetDocumentstoApprove\",\r\n API_POST_UPDATE_STATUS_REVERSE_DOCUMENT_VEHICLES: \"VehicleDocument/ReverseStatusPending/\",\r\n API_COMPANY_APPROVE_DOCUMENT: \"CompanyDocument/ProApproveToDoc\",\r\n API_COMPANY_APPROVE_MULTI_DOCUMENT: \"CompanyDocument/SendMailToProcessedDocs/\",\r\n API_EMPLOYEE_APPROVE_DOCUMENT: \"EmployeeDocument/ProApproveToDoc\",\r\n API_GET_ALL_DOCUMENTS_BY_EMPLOYEE_COMPANY: \"EmployeeDocument/AllDocumentsByIdCompany/\",\r\n API_VEHICLE_APPROVE_DOCUMENT: \"VehicleDocument/ProApproveToDoc\",\r\n API_GET_ALL_DOCUMENTS_BY_VEHICLE_COMPANY: \"VehicleDocument/AllDocumentsByIdVehicle/\",\r\n API_GET_DOCUMENTS_GENERAL_COMPANY: 'CompanyDocument/Companiesid/',\r\n\r\n //APIS REPORTS\r\n API_GET_REPORTS_EMPLOYEES_BY_COMPANY:'Employee/GetReportsEmployeesByCompany/',\r\n\r\n //APIS COMPANIES CONTRATISTA\r\n API_CONSULTACOMPANIESID: 'CompaniesConsulta/PostCompanyById',//CompanyById',\r\n API_FILE_COMPANY: 'CompanyDocument/UploadFile/',\r\n API_UPDATE_COMPANY_DOCUMENTS: 'CompanyDocument/UpdateStatus',\r\n API_DELETE_DOCUMET: 'CompanyDocument/DeleteDocuments',\r\n //APIS VEHCILES\r\n API_FILE_VEHICLE : 'VehicleDocument/UploadFile',\r\n API_VEHICLE_UPDATE: 'VehicleDocument/Update',\r\n API_VEHICLE_UPDATE_STATUS: \"VehicleDocument/UpdateStatus\",\r\n API_GET_DOCUMENT_BY_VEHICLE_ID: 'VehicleDocument/GetDocumentsId/',\r\n API_GET_FILE_VEHICLE_ID: 'VehicleDocument/GetFile/',\r\n\r\n\r\n //APIS PREGUNTAS\r\n API_CONSPREGUNTA: 'Questions/All',\r\n API_REGPREGUNTA: 'Questions/Create',\r\n API_UPDATEPREGUNTAS: 'Questions/Update',\r\n API_UPDATESTATUS: 'Questions/UpdateStatus',\r\n API_CONSPREGUNTAESPECIFICA: 'Questions/GetQuestionsId',\r\n API_GET_QUESTIONSBYGROUP : 'Questions/GetQuestionsByGroup',\r\n\r\n //APIS RESPUESTAS/DETALLEPREGUNTAS\r\n API_CONSRESPUESTAS: 'QuestionsDetail/All',\r\n API_REGRESPUESTA: 'QuestionsDetail/Create',\r\n API_UPDATARESPUESTA: 'QuestionsDetail/Update',\r\n API_UPDATESTATUSRESPUESTA: 'QuestionsDetail/UpdateStatus',\r\n API_CONSRESPUESTAESPECIFICA: 'QuestionsDetail/GetQuestionsId',\r\n API_CONSRESPUESTAESPECIFICAPORPREGUNTA: 'QuestionsDetail/GetAnswerByQuestionId',\r\n\r\n\r\n //APIS EVALUATION\r\n API_CONSEVALUACION: 'Evaluation/All',\r\n API_REGEVALUACION: 'Evaluation/Create',\r\n API_UPDATEEVALUACION: 'Evaluation/Update',\r\n API_DESACTEVALUACION: 'RegisterGeneral/desaevaluacion',\r\n API_ACTIVEEVALUACION: 'RegisterGeneral/activeevaluacion',\r\n API_UPDATESTTUSEVALUATION:\"Evaluation/UpdateStatus\",\r\n API_UPLOAD_FILE: 'Evaluation/UploadFile',\r\n API_ASSIGN_QUESTIONSBYEVAL: 'Evaluation/RegisterQuestions',\r\n API_GET_QUESTIONSBYEVAL: 'Evaluation/GetQuestionsByEval/',\r\n API_GET_FILE_PARAMEVAL: \"Evaluation/GetFile/\",\r\n\r\n\r\n\r\n //APIS PARAMDOCUMENT\r\n API_CONSPARAMDOCUMENT: 'ParameterDocument/All',\r\n API_REGPARAMDOCUMEN: 'ParameterDocument/Create',\r\n API_UPDATEPARAMDOCUMEN: 'ParameterDocument/Update',\r\n API_UPDATESTATUSPARAMDOCUMEN: 'ParameterDocument/UpdateStatus',\r\n API_CONSESPECIFICAPARAMDOCUMEN: 'ParameterDocument/GetParamDocumentId',\r\n API_CONSPARAMDOCUMENTYPE: 'ParameterDocument/GetParamDocumenttype',\r\n API_CONSPARAMDOCUMENT_COMPANY: 'ParameterDocument/GetParamDocumentCompany',\r\n API_CONSPARAMDOCUMENT_EMPLOYEE: 'ParameterDocument/GetParamDocumentEmployee',\r\n API_CONSPARAMDOCUMENT_VEHICLE: 'ParameterDocument/GetParamDocumentVehicle',\r\n\r\n // APIS POR HACER\r\n API_GET_INFO_VIGENCIA_DOCUMENTOS_CONTRATISTAS:'ConsultasPorHacer/VigenciaDocumentosContratistas/',\r\n API_GET_DOCUMENTOS_PENDIENTES_CONTRATISTAS:'ConsultasPorHacer/DocumentosPendientesContratistas',\r\n API_GET_DOCUMENTOS_PENDIENTES_TRABAJADORES:'ConsultasPorHacer/DocumentosPendientesTrabajadoresContratistas',\r\n GET_INFO_TRABAJADORES_COURSES_PENDING:'ConsultasPorHacer/EvaluationsByEmployee/',\r\n GET_DOCUMENTS_APPROVE:\"ConsultasPorHacer/DocumentosPendientesAprobar\",\r\n\r\n\r\n //APIS COMPANYDOCUMENT\r\n API_ALLCOMPANIES:\"CompanyDocument/Companies\",\r\n API_ALLCOMPANIESWITHDOCUMENT:\"CompanyDocument/CompanieswhitDcocumentsBySecurityUser\",\r\n API_ALLCOMPANIESWITHDOCUMENT_TYPE:\"CompanyDocument/CompanieswhitDcocumentsByUserAndType\",\r\n\r\n //APIS AUMENTO OPORTUNIDADES USUARIOS EXTERNOS\r\n API_UPDATEOPORTUNITIES:\"Myevaluation/Update\",\r\n\r\n\r\n\r\n //APIS EQUIPMENTS TOOLS\r\n API_CREATE_TOOLS : \"ListsTools/Create\",\r\n API_UPDATE_TOOLS : \"ListsTools/Update\",\r\n API_UPDATE_STATUS_TOOLS : \"ListsTools/UpdateStatus\",\r\n API_GET_ALL_TOOLS : \"ListsTools/All\", //recibe el id de la compañia\r\n API_GET_SPECIFIC_TOOLS : \"ListsTools/Get\", //recibe el id de la compañia\r\n API_GET_ALL_TOOLS_FOR_SKRETTING : \"ListsTools/AllListTool\",\r\n\r\n\r\n //APIS EMPLOYEES\r\n API_REGISTEREMPLOYEE:\"Employee/Create\",\r\n API_UPDATEEMPLOYEE:\"Employee/Update\",\r\n API_STATUSEMPLOYEE:\"Employee/UpdateStatus\",\r\n API_ALLEMPLOYEE:\"Employee/All\",\r\n API_ALLEMPLOYEECOMPANYID:\"Employee/Allid\",\r\n API_ALLEMPLOYEEBYID: \"Employee/GetByIdEmployee\",\r\n API_GET_EMPLOYEE_BY_COMPANY: 'Employee/GetEmployeesAndDocumentsByCompany/',\r\n API_GET_EMPLOYEES_BY_COMPANY : \"Employee/GetEmployeesByCompany/\",\r\n API_GET_EMPLOYEES_ALL_COMPANY : \"Employee/GetEmployeesAllCompany\",\r\n API_FILE_EMPLOYEE: 'EmployeeDocument/UploadFile/',\r\n API_UPDATE_DATA_EMPLOYEE: 'EmployeeDocument/Update',\r\n API_EMPLOYEE_DOCUMENT_UPDATE_STATUS:'EmployeeDocument/UpdateStatus',\r\n API_GET_DOCUMENT_BY_EMPLOYEE_ID : 'EmployeeDocument/GetDocumentsId/',\r\n API_EMPLOYEE_DOCUMENT_DELETE : 'EmployeeDocument/DeleteDocuments/',\r\n\r\n //APIS JOBS TYPE\r\n API_GET_JOB_TYPE: 'ConsultasGenerales/ConsultaJobTypeActive',\r\n API_VERIFY_EXIST_EVAL_BY_EMPLOYEE_JOB: 'Request/ExistEvalByEmployeeId',\r\n\r\n //APIS GET EMPLOOYE\r\n API_GET_EMPLOYEE_BY_IDENTIFICATION : 'Employee/GetIdentification/',\r\n API_gET_EMPLOYEE_BY_IDENTIFICATIONREQUEST: 'Employee/GetEmployeesByCompanyRequest/',\r\n\r\n //APIS GET ACTIVE SITES COMPANY\r\n API_GET_ALL_SITES_ACTIVE : \"ConsultasGenerales/ConsultaPlantasActivas\",\r\n\r\n //APIS GET LEVELS BY ID\r\n API_GET_ALL_AREA_BY_ID : \"ConsultasGenerales/AllAreaByPlanta/\",\r\n\r\n //APIS REQUEST FROM\r\n API_UPDATE_ADMISSION_REQUEST: \"EntryRequest/Update\",\r\n API_CREATE_ADMISSION_REQUEST: \"EntryRequest/Create\",\r\n API_SEND_EMAIL_ADMISSION_REQUEST: \"EntryRequest/SendMail\",\r\n API_UPDATE_STATUS__ADMISSION_REQUEST: \"EntryRequest/UpdateStatus\",\r\n API_UPDATE_STATUS__EMERGENCY: \"EntryRequest/UpdateEmergency\",\r\n API_GET_ALL_REQUEST: \"EntryRequest/All\",\r\n API_GET_ALL_REQUEST_BY_COMPANY_ID: \"EntryRequest/AllByCompany/\",\r\n API_SEND_MAIL_TO_REJECT : \"EntryRequest/SendMail\",\r\n API_SEND_MAIL_TO_NOTIFIED_DURAGAS: \"EntryRequest/SendMailToDuragas\",\r\n API_UPLOAD_FILE_REQUEST: 'EntryRequest/UploadFile',\r\n API_UPDATE_DOCUMENT: 'EntryRequest/UpdateDocument',\r\n\r\n //API GENERATE QR\r\n API_CREATE_QR_AND_SEND_EMAIL : \"EntryRequest/GenerarQR/\",\r\n API_DOWNLOAD_QR : \"EntryRequest/GetFileQR/\",\r\n\r\n //API GET REQUEST ID\r\n API_GET_REQUEST_BY_ID: 'EntryRequest/GetId/',\r\n\r\n //API WORK AUTH\r\n API_CREATE_WORK_AUTH: 'WorkAuth/Create',\r\n API_GET_BY_ID_COMPANY_WORK_AUTH: 'WorkAuth/AllByCompany/',\r\n API_UPDATE_STATUS_WORK_AUTH: 'WorkAuth/UpdateStatus',\r\n API_UPDATE_WORK_AUTH: 'WorkAuth/Update',\r\n API_GET_WORK_AUTH_BY_ID: 'WorkAuthByID/',\r\n API_GET_ALL_WORK_AUTHS_FOR_ADMIN: 'WorkAuth/AllByCompany',\r\n\r\n\r\n //API ENTER OUT WORK\r\n API_GET_ENTER_OUT_WORK_BY_ID: 'EnterOutWorker/All_ID/',\r\n API_GET_ALL_ENTER_OUT_WORK: 'EnterOutWorker/All',\r\n API_CREATE_ENTER_OUT_WORK: 'EnterOutWorker/Create',\r\n API_UPDATE_ENTER_OUT_WORK: 'EnterOutWorker/Update',\r\n API_VALIDATE_QR_EMPLOYEE:'EnterOutWorker/VerificateQR/',\r\n\r\n //API COMPANIE\r\n API_GET_ALL_COMPANIES: 'RegisterCompany/All',\r\n\r\n //API REQUEST\r\n API_GET_ALL_REQUEST_INDUCTION_BY_ID : 'Request/AllByCompany/',\r\n API_GET_ALL_REQUEST_INDUCTION : 'Request/All',\r\n API_GET_FILE: 'Request/GetFile/',\r\n\r\n //API DOCUMENTS BY EMPLOYEE\r\n API_GET_DOCUMENTS_BY_ID : 'GetDocumentsId/',\r\n API_GET_DOCUMENTS_BY_ID_RPT : 'CompanyDocument/GetDocumentsId/',\r\n\r\n\r\n API_GET_DOCUMENTS_ALL : 'EmployeeDocument/All',\r\n API_GET_FILE_EMPLOYEE_ID: \"EmployeeDocument/GetFile/\",\r\n API_GET_DOCUMENTS_ALL_BY_COMPANYID : 'EmployeeDocument/AllDocumentsByIdCompany/',\r\n API_REPORT_ENTRY_REQUEST: 'EntryRequest/Report',\r\n API_REPORT_REQUEST: 'Request/Report',\r\n\r\n\r\n\r\n API_GET_UNSAFEACT : 'UnsafeAct/All',\r\n API_GET_UNSAFEACTBYID : 'UnsafeAct/UnsafeActById/',\r\n API_UPDATE_UNSAFEACT_STATUS : 'UnsafeAct/UpdateStatus',\r\n API_UPDATE_UNSAFEACT: 'UnsafeAct/Update',\r\n API_CREATE_UNSAFEACT: 'UnsafeAct/Create',\r\n API_UPLOAD_FILE_UNSAFEACT: 'UnsafeAct/UploadFile',\r\n\r\n\r\n API_CREATE_ACCIDENTEINCIDENT: 'AccidentIncident/Create',\r\n API_UPDATE_ACCIDENTEINCIDENT: 'AccidentIncident/Update',\r\n API_UPDATESTATUS_ACCIDENTEINCIDENT: 'AccidentIncident/UpdateStatus',\r\n API_GET_ACCIDENTEINCIDENT: 'AccidentIncident/All',\r\n API_GET_ACCIDENTEINCIDENTBYID: 'AccidentIncident/AccidentIncidentId/',\r\n API_UPLOAD_FILE_ACCIDENTEINCIDENT: 'AccidentIncident/UploadFile',\r\n API_UPLOAD_FILE_BETTER: 'GetsBetter/UploadFile',\r\n\r\n API_GET_SEVERITY_TYPE_BY_ID: 'SystemParameter/GetSystemParameterField/',\r\n\r\n API_CREATE_BETTER: \"GetsBetter/Create\",\r\n API_UPDATE_BETTER: \"GetsBetter/Update\",\r\n API_ALL_BETTER: \"GetsBetter/All\",\r\n API_ID_BETTER: \"GetsBetter/GetsBetterId/\",\r\n API_UPDATESTATUS_BETTER: \"GetsBetter/UpdateStatus\",\r\n API_GET_BETTER_BY_USER: \"GetsBetter/GetsBetterIdUser/\",\r\n\r\n\r\n API_CREATE_PLANACTION: \"ActionPlan/Create\",\r\n API_UPDATE_PLANACTION: \"ActionPlan/Update\",\r\n API_ALL_PLANACTION: \"ActionPlan/All\",\r\n API_ID_PLANACTION: \"ActionPlan/ActionPlanId/\",\r\n API_UPDATESTATUS_PLANACTION: \"ActionPlan/UpdateStatus\",\r\n API_GET_PLANACTION_BY_USER: \"ActionPlan/ActionPlanByIdUser/\",\r\n\r\n\r\n API_CREATE_UNSAFECONDITION: \"UnsafeCondition/Create\",\r\n API_UPDATE_UNSAFECONDITION: \"UnsafeCondition/Update\",\r\n API_ALL_UNSAFECONDITION: \"UnsafeCondition/All\",\r\n API_ID_UNSAFECONDITION: \"UnsafeCondition/UnsafeConditionId/\",\r\n API_UPDATESTATUS_UNSAFECONDITION: \"UnsafeCondition/UpdateStatus\",\r\n API_GET_UNSAFECONDITION_BY_USER: \"UnsafeCondition/UnsafeConditionIdUser/\",\r\n API_UPLOAD_FILE_UNSAFECONDITION: 'UnsafeCondition/UploadFile',\r\n API_UNSAFECONDITION_MAIL: 'UnsafeCondition/SendMail',\r\n\r\n\r\n API_UNSAFEACT_FOULS: 'UnsafeAct/ReviewFauls/',\r\n API_UNSAFE_SEND_MAIL: 'UnsafeAct/SendMail',\r\n\r\n\r\n\r\n API_PARAM_GENERAL_ALL: 'SystemParameter/AllField',\r\n API_PARAM_GENERAL_BY_TYPE: 'SystemParameter/ViewField/',\r\n API_PARAM_GENERAL_UPDATE: 'SystemParameter/Update',\r\n API_PARAM_GENERAL_CREATE: 'SystemParameter/Create',\r\n API_PARAM_GENERAL_UPDATE_STATUS: 'SystemParameter/UpdateStatus',\r\n API_PARAM_GENERAL_UPDATE_GENERAL: 'SystemParameter/UpdateField',\r\n\r\n\r\n // URL NUEVAS DURAGAS\r\n API_GET_ALL_PROFILES: 'Profile/All',\r\n API_GET_PROFILE_BY_ID: 'Profile/ById/',\r\n API_CREATE_PROFILE: 'Profile/RegisterProfile',\r\n API_UPDATE_PROFILE: 'Profile/Update',\r\n API_UPDATE_STATUS_PROFILE: 'Profile/UpdateStatus',\r\n\r\n API_GET_MAIAEMAILADDRESS: 'SystemParameter/GetMaiaMail',\r\n\r\n\r\n\r\n API_GET_ALL_PAGES : 'Pages/All',\r\n\r\n\r\n API_GET_ALL_MENU : 'Menu/All',\r\n\r\n API_GET_ALL_PERMISSIONS: 'Permission/All',\r\n API_CREATE_PERMISSION : 'Permission/CreatePermission',\r\n API_GET_PERMISSIONS_BY_PROFILE_ID : 'Permission/ByProfileId/',\r\n API_UPDATE_PERMISSION : 'Permission/Update',\r\n\r\n API_GET_ALL_USER_INTERNAL: 'UserInternal/All',\r\n API_GET_USER_INTERNAL_BY_ID: 'UserInternal/userById/',\r\n API_CREATE_USER_INTERNAL: 'UserInternal/RegisterUser',\r\n API_UPDATE_ALL_USER_INTERNAL: 'UserInternal/UpdateAll',\r\n API_UPDATE_USER_PASSWORD_INTERNAL: 'UserInternal/UpdateUP',\r\n API_UPDATE_STATUS_USER_INTERNAL: 'UserInternal/UpdateStatus',\r\n\r\n\r\n\r\n API_GET_ALL_MENUS: 'Menu/All',\r\n API_GET_PAGES_BY_MENUID: 'Pages/PagesByMenu/',\r\n API_GET_ALL_MODULES: 'Pages/All',\r\n\r\n\r\n\r\n\r\n API_GET_QUESTION_EVAL_ID: 'Questions/GetQByEvaluationId/',\r\n API_CREATE_EVALUATION: 'Myevaluation/Create',\r\n API_SEARCH_REPETITIONS: 'Myevaluation/RepetitionsByEvaluation/',\r\n API_GET_EMPLOYEES_BY_EVALUATION: 'Evaluation/EvaluationsByEmployee',\r\n API_GET_EVALS_BY_TYPE_JOB: 'Evaluation/AllEvalsByTypeJob/',\r\n API_GET_EVALUATION_BY_COMPANY: 'Evaluation/EvaluationsByCompany/',\r\n\r\n\r\n API_GET_JOBS_BY_TYPE_EMPLOYEE: 'ConsultasGenerales/ConsultaJobByTypeEmployee/',\r\n\r\n\r\n\r\n API_GET_ENTRY_REQUEST_BY_EMPLOYEE: \"EntryRequest/GetERequestByEmployee/\",\r\n\r\n //APIS TIPO DE TRABAJO\r\n API_CONSULTAJOBTYPE: 'ConsultasGenerales/ConsultaJobType',\r\n API_REGISTROJOBTYPE: 'RegisterGeneral/RegisterJobType',\r\n API_UPDATEJOBTYPE: 'RegisterGeneral/UpdateJobType',\r\n API_DELETEJOBTYPE: 'RegisterGeneral/DeleteJobType',\r\n API_ACTIVARJOBTYPE: 'RegisterGeneral/ActiveJobType',\r\n API_CONSULTAJOBTYPEACTIVE: 'ConsultasGenerales/ConsultaJobTypeActive',\r\n API_DROPJOBTYPE: 'RegisterGeneral/DeleteJobType',\r\n\r\n //APIS PLANTA\r\n API_CONSULTAPLANTA: 'ConsultasGenerales/ConsultaPlantas',\r\n API_REGISTROPLANTA: 'RegisterGeneral/RegisterPlanta',\r\n API_UPDATEPLANTA: 'RegisterGeneral/UpdatePlanta',\r\n API_DELETEPLANTA: 'RegisterGeneral/DeletePlanta',\r\n API_ACTIVARPLANTA: 'RegisterGeneral/ActivarPlanta',\r\n\r\n //APIS AREA DE PLANTA\r\n API_CONSULTASECCIONPLANTA: 'ConsultasGenerales/ConsultaSeccionPlanta',\r\n API_REGISTROSECCIONPLANTA: 'RegisterGeneral/RegisterSeccionPlanta',\r\n API_UPDATESECCIONPLANTA: 'RegisterGeneral/UpdateSeccionPlanta',\r\n API_DELETESECCIONPLANTA: 'RegisterGeneral/DeleteSeccionPlanta',\r\n API_ACTIVARSECCIONPLANTA: 'RegisterGeneral/ActiveSeccionPlanta',\r\n\r\n //APIS PARAMETROS GLOBALES\r\n API_CONPARAM: 'ConsultasGenerales/ConsultaParam',\r\n API_REGISTROPARAM: 'RegisterGeneral/RegisterParam',\r\n API_REGISTERPARAMDETAIL: 'RegisterGeneral/RegisterParamDetails',\r\n API_UPDATEPARAMGENERIC: 'RegisterGeneral/UpdateParam',\r\n API_CONDETAILS: 'ConsultasGenerales/ConsultaParamDetail',\r\n API_UPDATEPARAMDETAIL: 'RegisterGeneral/UpdateParamDetails',\r\n API_DELETEPARAMGENERIC: 'RegisterGeneral/deactivateParam',\r\n API_ACTIVEPARAMGENERIC: 'RegisterGeneral/ActiveParam',\r\n API_ACTIVEPARAMGENERICDETAIL: 'RegisterGeneral/activeParamDetails',\r\n API_DELETEPARAMGENERICDETAIL: 'RegisterGeneral/deactivateParamDetails',\r\n\r\n //APIS PARAMETROS DOCUMENTOS\r\n API_CONSUDOCUJOB: 'ConsultasGenerales/ConsultaDocuJobType',\r\n API_REGISTERDOCUJOB: 'RegisterGeneral/RegisterParamDocuJob',\r\n API_UPDATEDOCUJOB: 'RegisterGeneral/UpdateParamDocuJob',\r\n API_DELETEDOCUJOB: 'RegisterGeneral/deleteParamDocuJob',\r\n API_ACTIVEDOCUJOB: 'RegisterGeneral/activeParamDocuJob',\r\n API_CONSUDOCU: 'ConsultasGenerales/ConsultaDocumento',\r\n API_REGISTERDOCU: 'RegisterGeneral/RegisterDocu',\r\n API_UPDATEDOCU: 'RegisterGeneral/UpdateParamDocu',\r\n API_DELETEDOCU: 'RegisterGeneral/deleteParamDocu',\r\n API_ACTIVEDOCU: 'RegisterGeneral/activeParamDocu',\r\n\r\n //API TIPIFICACION FALTA\r\n API_CONSULTATYPEFALTA:'ConsultasGenerales/ConsultaParamFoul',\r\n API_REGISTERTYPEFOUL:'RegisterGeneral/RegisterTypeFouls',\r\n API_UPDATETYPEFOUL:'RegisterGeneral/UpdateTypefouls',\r\n API_DESACTIVETYPEFOUL:'RegisterGeneral/desactivetypefoul',\r\n API_ACTIVETYPEFOUL:'RegisterGeneral/activetypefoul',\r\n API_CONSULTAFALTADETAIL:'ConsultasGenerales/ConsultaFoul',\r\n API_REGISTERFOUL:'RegisterGeneral/RegisterFouls',\r\n API_UPDATEFOUL:'RegisterGeneral/Updatefouls',\r\n API_DESACTIVEFOUL:'RegisterGeneral/desactivefoul',\r\n API_ACTIVEFOUL:'RegisterGeneral/activefoul',\r\n API_SANCION:'ConsultasGenerales/ConsultaSancion',\r\n API_REGISTERSANCION:'RegisterGeneral/RegisterSancion',\r\n API_UPDATESANCION:'RegisterGeneral/Updatesancion',\r\n API_DESACTIVESANCION:'RegisterGeneral/desactivesancion',\r\n API_ACTIVESANCION:'RegisterGeneral/activesancion',\r\n\r\n //APIS SUBCONTRATISTA\r\n API_CONSULTASUBCOMPANIE: 'CompaniesConsulta/SubCompanySelect',\r\n API_CONSULTASUBCOMPANIEJOB: 'CompaniesConsulta/SubCompanyJobSelect',\r\n API_REGISTERJOBSUBCOM: 'RegisterSubCompany/RegisterSubCompanyJob',\r\n API_UPDATESUBJOBCOM: 'RegisterSubCompany/UpdateSubCoJob',\r\n API_ACTIVESUBJOBCOM: 'RegisterSubCompany/activeSubCoJob',\r\n API_DESACTIVESUBJOBCOM: 'RegisterSubCompany/deactivateSubCoJob',\r\n API_CREATESUBCOM: 'RegisterSubCompany/SubCompanyCreate',\r\n API_DESACTIVESUBCOM: 'RegisterSubCompany/deactivateSubCo',\r\n API_ACTIVESUBCOM: 'RegisterSubCompany/activeSubCo',\r\n API_CONSULTASUBCOMPANIECI: 'CompaniesConsulta/SubCompanySelectCi',\r\n API_UPDATESUBCOMPANY: 'RegisterSubCompany/SubCompanyUpdate',\r\n\r\n //APIS COMPANIES ADMIN\r\n API_REGISTEREMP: 'RegisterCompany/RegisterCompanyAdmin',\r\n API_CONSULTACOMPANIES: 'CompaniesConsulta/CompanySelect',\r\n API_CONSULTAEMP: 'ConsultasGenerales/ConsultaCompania',\r\n API_UPDATEEMP: 'RegisterCompany/UpdateCompani',\r\n API_DESATEEMP: 'RegisterCompany/deactivateCo',\r\n API_ACTIVETEEMP: 'RegisterCompany/activateCo',\r\n API_SUBCOMPANIEBYCOMPIE: 'CompaniesConsulta/SubCompanyByIDCompany',\r\n API_UPDATECOMPAEMP: 'RegisterCompany/UpdateCompaniemp',\r\n API_CONSDOCUMENEMP: 'CompaniesConsulta/ConsultaDocumentobyEmp',\r\n API_GET_COMPANY_BY_ID:\"RegisterCompany/byId/\",\r\n\r\n //API DE COMUNICACION\r\n API_CONSTIPOCOMUNICADO: 'ConsultasGenerales/ConsultaTipoInfo',\r\n API_REGISTERTYPEINFO: 'RegisterGeneral/RegisterTypeInfo',\r\n API_UPDATETYPEINFO: 'RegisterGeneral/UpdateTypeInfo',\r\n API_DESACTIVETYPEINFO: 'RegisterGeneral/desactiveTypeInfo',\r\n API_ACTIVETYPEINFO: 'RegisterGeneral/activeTypeInfo',\r\n API_CONSINFO: 'ConsultasGenerales/ConsultaInfo',\r\n API_CONSULINFOALL: 'ConsultasGenerales/ConsultaInfoAll',\r\n API_REGISTERINFO:'RegisterGeneral/RegisterInfo',\r\n API_UPDATEINFO:'RegisterGeneral/UpdateInfo',\r\n API_DESACTIVEINFO:'RegisterGeneral/desactiveInfo',\r\n API_ACTIVEINFO:'RegisterGeneral/activeInfo',\r\n\r\n //API DE PREGUNTAS\r\n //TIPO DE PREGUNTAS\r\n API_CONSTIPOPREGUNTA: 'ConsultasGenerales/ConsultaTipoPregunta',\r\n API_REGTIPOPREGUNTA: 'RegisterGeneral/Registertipopregunta',\r\n API_UPDATEPREGUNTA: 'RegisterGeneral/Updatetipopregunta',\r\n API_DESACTIVEPREGUNTA: 'RegisterGeneral/desactivepregunta',\r\n API_ACTIVEPREGUNTA: 'RegisterGeneral/activepregunta',\r\n\r\n API_DESACTIVEPREGUNTAS: 'RegisterGeneral/desactivepreguntas',\r\n API_ACTIVEPREGUNTAS: 'RegisterGeneral/activepreguntas',\r\n API_CONSPREGUNTADETALLE: 'ConsultasGenerales/ConsultaDetallePregunta',\r\n API_REGIPREGUNTADETALLE: 'RegisterGeneral/RegisterDetallePregunta',\r\n API_UPDATEPREGUNTADETALLE: 'RegisterGeneral/Updatepreguntadetalle',\r\n API_DESACTIVEPREGUNTADETALLE: 'RegisterGeneral/desapreguntadetalle',\r\n API_ACTIVEPREGUNTADETALLE: 'RegisterGeneral/activepreguntadetalle',\r\n\r\n //API VEHICULO POR CONTRATISTA\r\n API_CONSULTALL: 'Vehicle/All',\r\n API_CONSULTAVEHICLE: 'Vehicle/VehicleByIDCompany/',\r\n API_CREATEVEHICLE: 'Vehicle/VehicleCreate',\r\n API_UPDATEVEHICLE: 'Vehicle/VehicleUpdate',\r\n API_DESACTIVEVEHICLE: 'Vehicle/DeactivateVehicle',\r\n API_ACTIVEVEHICLE: 'Vehicle/ActiveVehicle',\r\n API_UPDATE_STATUS_VEHICLE: 'Vehicle/UpdateStatus',\r\n API_REPORTS_VEHICLE_COMPANY: 'Vehicle/GetReportsVehiclesByCompany/',\r\n\r\n API_RESET_PASSWORD: 'Login/ResetPassword',\r\n\r\n API_EXIST_EMPLOYEE : 'Employee/ExistEmployee/',\r\n\r\n // API PARA OBTENER DOCUMENTOS DE VEHICULOS\r\n API_CONSUDOC_VEHICLE: 'ParameterDocument/GetParamDocumentVehicle',\r\n\r\n API_GET_ENTRY_REQUEST_EMPLOYEES: 'EnterOutWorker/GetAllEmployeeQr',\r\n // API CERTIFIED\r\n API_GET_CERTIFIED: 'Myevaluation/DataCertified',\r\n API_GET_IMAGE_SIGNATURE: 'Myevaluation/GetSignatureImage',\r\n\r\n //AlcoholCheck\r\n API_CREATE_ALCOHOLCHECK:\"AlcoholCheck/Create\",\r\n Menus : {\r\n Formularios: 2,\r\n Procesos: 3,\r\n Excelencia: 4,\r\n Mantenimiento: 5,\r\n Documentos: 7,\r\n Reportes: 8\r\n },\r\n\r\n ordinal_numbers: [\r\n 'ERA',\r\n 'DA',\r\n 'ERA',\r\n 'TA',\r\n 'TA',\r\n 'TA',\r\n 'TA',\r\n 'TA',\r\n 'NA',\r\n 'MA'\r\n ],\r\n\r\n\r\n //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::\r\n //Datos que se usaban en HA\r\n pdi_filters: [\r\n \t\t'PA_ANTE',\r\n \t\t'PA_CONTE',\r\n \t\t'PA_DEFO',\r\n \t\t'PA_DEND',\r\n \t\t'PA_ECTO',\r\n \t\t'PA_GAME',\r\n \t\t'PA_GREG',\r\n \t\t'PA_NECR',\r\n \t\t'PA_NEMA',\r\n \t\t'PA_NIVE',\r\n \t\t'PA_TEXT',\r\n \t\t'PA_UROP'\r\n\t\t],\r\n sapproval_filters: ['SAM_01'],\r\n sampling_status: [\r\n { id:1, name:'PENDIENTE', approv_actions:['take'], samp_actions:['edit', 'delete'], origid: 75 },\r\n { id:2, name:'RECIBIDA', approv_actions:['assign', 'reject', 'overdue'], samp_actions:[], origid: 466 },\r\n { id:3, name:'ASIGNADO', approv_actions:['reset', 'reject', 'overdue'], samp_actions:[], origid: 76 },\r\n { id:4, name:'EN PROGRESO', approv_actions:['overdue'], samp_actions:['download'], origid: 77 },\r\n { id:5, name:'TERMINADO', approv_actions:['approve', 'reject', 'download', 'overdue'], samp_actions:['download'], origid: 89 },\r\n { id:6, name:'RECHAZADA', approv_actions:[], samp_actions:[], origid: 78 },\r\n { id:7, name:'APROBADO', approv_actions:['download', 'overdue'], samp_actions:['download', 'followup'], origid: 90 },\r\n { id:8, name:'OFFLINE', approv_actions:[], samp_actions:['offline'], origid: 0 }\r\n ],\r\n\r\n ID_COMPANY_SKRETTING : 30,\r\n\r\n\r\n};\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { Storage } from '@ionic/storage';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoginGuard implements CanActivate {\r\n\r\n\tconstructor(private storage: Storage, private router: Router,){}\r\n\r\n \tcanActivate(\r\n \t \tnext: ActivatedRouteSnapshot,\r\n \tstate: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\r\n \t\t\r\n \t\t//console.log('test login guard');\r\n \t\t\r\n \t\treturn this.storage.get('token').then(x => {\r\n \t\t\tif( (x == undefined) || (x == null) || (x=='') ){\r\n \t\t\t\treturn true;\r\n \t\t\t}\r\n \t\t\telse{\r\n \t\t\t\tthis.router.navigate(['dashboard']);\r\n \t\t\t\treturn false;\r\n \t\t\t}\r\n \t\t});\r\n \t}\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Global } from '../global';\r\nimport { Router } from '@angular/router';\r\nimport { Observable, from, of, BehaviorSubject } from 'rxjs';\r\nimport { mergeMap, catchError, timeout, retry } from 'rxjs/operators';\r\nimport { Storage } from '@ionic/storage';\r\nimport { OfflineContainer } from '../offlinecontainer';\r\nimport { environment } from '../../../environments/environment';\r\nimport { Results } from 'src/app/interfaces/Results';\r\n\r\nconst API_GENERAL_URL = environment.Global.API_GENERAL_URL;\r\n\r\n//max time for api requests\r\nconst MAX_TIME = 180000;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApiService {\r\n\turl:any;\r\n\tpublic offline = new BehaviorSubject(false);\r\n\r\n \tconstructor(\r\n \t\tprivate _router: Router,\r\n \t\tprivate http: HttpClient,\r\n \t\tpublic storage: Storage\r\n \t) {\r\n \t\t//this.url = IC2_BASE_URL;\r\n \t\t// this.url = Global.url;\r\n\t\t this.url = API_GENERAL_URL;\r\n \t}\r\n\r\n \tpublic getCall(qst) {\r\n\t\t// console.log('get call',qst);\r\n\t\t// console.log('url', this.url)\r\n\t\t//debugger;\r\n\t\tvar resp = {success:false, msg:'', val:[]};\r\n\t\treturn from(this.storage.get('token')).pipe(\r\n\t\t\t\tmergeMap(token => {\r\n\t\t\t\t\t// console.log(token)\r\n\t\t\t\t\tconst headers = new HttpHeaders({ 'Content-Type': 'application/json', 'Authorization': `Bearer ${token}`});\r\n\t\t\t\t\t// console.log(\"url completa\",`${this.url}`+ qst)\r\n\t \t\t\treturn this.http.get(`${this.url}`+ qst, { headers })\r\n\t \t\t\t\t.pipe(\r\n\t\t\t\t\t \t\tmergeMap(data => {\r\n\t\t \t\t\t\tlet mydata:any = {STATUS: '', OBJETO: [], MENSAJE: ''};\r\n\t\t\t\t\t \t\tmydata = data;\r\n\r\n\t\t\t\t\t \t\tif( mydata.STATUS == 'success' ){\r\n\t\t\t\t\t \t\t\t//return of(mydata.OBJETO);\r\n\t\t\t\t\t \t\t\tresp.success = true;\r\n\t\t\t\t\t \t\t}\r\n\r\n\t\t\t\t\t \t\tresp.msg = mydata.MENSAJE;\r\n\t\t\t\t\t \t\tresp.val = mydata.OBJETO;\r\n\r\n\t\t\t\t\t \t\treturn of(resp);\r\n\t\t \t\t\t}),\r\n\t\t \t\t\ttimeout(MAX_TIME),\r\n\t\t \t\t\tcatchError(err => {\r\n\t\t \t\t\t\tresp['msg'] = 'system error';\r\n\t\t\t\t\t return of(resp);\r\n\t\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}\r\n\r\n\tpublic postCall(qst, obj) {\r\n\t\t//console.log('cool post call');\r\n\t\tvar resp = {success:false, msg:'', val:[]};\r\n\t\treturn from(this.storage.get('token')).pipe(\r\n\t\t\t\tmergeMap(token => {\r\n\t\t\t\t\tconst headers = new HttpHeaders({ 'Content-Type': 'application/json', 'Authorization': `Bearer ${token}`});\r\n\t\t\t\t\t//console.log('before post',\"header:\",headers,\"qst:\",qst,\"obj:\",obj);\r\n\t \t\t\treturn this.http.post(`${this.url}`+qst, obj, { headers })\r\n\t \t\t\t\t.pipe(\r\n\t\t\t\t\t \t\tmergeMap(data => {\r\n\t\t \t\t\t\tlet mydata:any = {STATUS: '', OBJETO: [], MENSAJE: ''};\r\n\t\t\t\t\t \t\tmydata = data;\r\n\r\n\t\t\t\t\t \t\tif( mydata.STATUS == 'success' ){\r\n\t\t\t\t\t \t\t\t//return of(mydata.OBJETO);\r\n\t\t\t\t\t \t\t\tresp.success = true;\r\n\t\t\t\t\t \t\t}\r\n\r\n\t\t\t\t\t \t\tresp.msg = mydata.MENSAJE;\r\n\t\t\t\t\t \t\tresp.val = mydata.OBJETO;\r\n\r\n\t\t\t\t\t \t\treturn of(resp);\r\n\t\t \t\t\t}),\r\n\t\t \t\t\ttimeout(MAX_TIME),\r\n\t\t \t\t\tcatchError(err => {\r\n\t\t \t\t\t\tresp['msg'] = 'system error';\r\n\t\t\t\t\t return of(resp);\r\n\t\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}\r\n\r\n\tpublic persistData(key:string, val:any){\r\n\t\treturn this.storage.set(key, val);\r\n\t}\r\n\r\n\tpublic getPeristedData(key:string){\r\n\t\treturn this.storage.get(key);\r\n\t}\r\n\r\n\tpublic getBlobCall(qst) {\r\n\t\treturn from(this.storage.get('token')).pipe(\r\n\t\t\t\tmergeMap(token => {\r\n\t\t\t\t\tconst headers = new HttpHeaders({ 'Authorization': `Bearer ${token}`});\r\n\t \t\t\treturn this.http.get(`${this.url}`+ qst, { headers, responseType: 'blob' })\r\n\t \t\t\t\t.pipe(\r\n\t\t\t\t\t \t\tmergeMap(data => {\r\n\t\t\t\t\t \t\t\t//console.log(data);\r\n\t\t\t\t\t \t\treturn of(data);\r\n\t\t\t\t\t \t\t//return of(true);\r\n\t\t \t\t\t}),\r\n\t\t \t\t\ttimeout(MAX_TIME),\r\n\t\t \t\t\tcatchError(err => {\r\n\t\t\t\t\t return of(false);\r\n\t\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}\r\n\r\n\tpublic postBlobCall(qst, to) {\r\n\t\treturn from(this.storage.get('token')).pipe(\r\n\t\t\t\tmergeMap(token => {\r\n\t\t\t\t\tconst headers = new HttpHeaders({ 'Authorization': `Bearer ${token}`});\r\n\t \t\t\treturn this.http.post(`${this.url}`+ qst, to, { headers, responseType: 'blob' })\r\n\t \t\t\t\t.pipe(\r\n\t\t\t\t\t \t\tmergeMap(data => {\r\n\t\t\t\t\t \t\t\t//console.log(data);\r\n\t\t\t\t\t \t\treturn of(data);\r\n\t\t\t\t\t \t\t//return of(true);\r\n\t\t \t\t\t}),\r\n\t\t \t\t\ttimeout(MAX_TIME),\r\n\t\t \t\t\tcatchError(err => {\r\n\t\t\t\t\t return of(false);\r\n\t\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}\r\n\r\n\tpublic saveOfflineData(key:string, obj:any){\r\n\t\tlet tmp = new OfflineContainer();\r\n\t\ttmp.setData(obj);\r\n\t\treturn this.persistData(key, tmp);\r\n\t}\r\n\r\n\tpublic getOfflineData(key:string){\r\n\t\treturn this.getPeristedData(key).then(x => {\r\n\t\t\tif( (x == undefined) || (x == null) ){\r\n\t\t\t\treturn null;\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\tlet tmp = new OfflineContainer();\r\n\t\t\t\ttmp.data = x.data;\r\n\t\t\t\ttmp.last_update = x.last_update;\r\n\t\t\t\treturn tmp;\r\n\t\t\t}\r\n\r\n\t\t});\r\n\t}\r\n\r\n\tpublic isReachable() {\r\n\t\t/**\r\n\t\t * Note: fetch() still \"succeeds\" for 404s on subdirectories,\r\n\t\t * which is ok when only testing for domain reachability.\r\n\t\t *\r\n\t\t * Example:\r\n\t\t * https://google.com/noexist does not throw\r\n\t\t * https://noexist.com/noexist does throw\r\n\t\t*/\r\n\t\t//var url = 'https://google.com';\r\n\t\tvar url = 'https://ha.skretting360.com/';\r\n\t\treturn fetch(url, { method: 'HEAD', mode: 'no-cors' })\r\n\t\t .then(function(resp) {\r\n\t\t return resp && (resp.ok || resp.type === 'opaque');\r\n\t\t })\r\n\t\t .catch(function(err) {\r\n\t\t console.warn('[conn test failure]:', err);\r\n\t\t });\r\n\t}\r\n\r\n\tpublic downloadFile(docFile: any): Observable \r\n\t{\r\n\t\t return this.http.get(this.url+\"CompanyDocument/GetFile/\" + docFile, {responseType: 'blob'});\r\n\r\n\t}\r\n\tpublic downloadFileGeneral(docFile: any): Observable \r\n\t{\r\n\t\t return this.http.get(this.url+ docFile, {responseType: 'blob'});\r\n\r\n\t}\r\n\r\n\tpublic downloadFileSub(docFile: any): Observable \r\n\t{\r\n\t\t return this.http.get(this.url+\"SubCompanyDocument/GetFile/\" + docFile, {responseType: 'blob'});\r\n\r\n\t}\r\n\r\n\tpublic downloadFileEmp(docFile: any): Observable \r\n\t{\r\n\t\t return this.http.get(this.url+\"EmployeeDocument/GetFile/\" + docFile, {responseType: 'blob'});\r\n\r\n\t}\r\n\r\n\tpublic downloadFileVehi(docFile: any): Observable \r\n\t{\r\n\t\t return this.http.get(this.url+\"VehicleDocument/GetFile/\" + docFile, {responseType: 'blob'});\r\n\r\n\t}\r\n\r\n\tpublic downloadFileQR(qst): Observable \r\n\t{\r\n\t\treturn this.http.get(this.url + qst , {responseType: 'blob'});\r\n\r\n\t}\r\n\r\n\tpublic downloadFiles(qst): Observable \r\n\t{\r\n\t\treturn this.http.get(this.url + qst , {responseType: 'blob'});\r\n\r\n\t}\r\n\r\n\tpublic donwloadAnyFileByUserExt(subUrl, id, docFile) {\r\n\t\treturn this.http.get(this.url + subUrl + id + '/' + docFile, {responseType: 'blob'});\r\n\t}\r\n\r\n\tAddFileDetails(data: FormData)\r\n\t{\r\n\t\tlet headers = new HttpHeaders();\r\n\t\theaders.append('Content-Type', 'application/json');\r\n\t\tconst httpOptions = { headers: headers };\r\n\t\treturn this.http.post < string > (this.url + 'CompanyDocument/UploadFile/', data, httpOptions);\r\n\t}\r\n\tAddFiles(url2, data: FormData)\r\n\t{\r\n\t\tlet headers = new HttpHeaders();\r\n\t\theaders.append('Content-Type', 'application/json');\r\n\t\tvar resp: Results = {\r\n\t\t\tMENSAJE: '',\r\n\t\t\tSTATUS: false,\r\n\t\t\tOBJETO: {}\r\n\t\t};\r\n\t\tconst httpOptions = {headers: headers};\r\n\t\treturn this.http.post(this.url + url2, data, httpOptions)\r\n\t\t\t.pipe(\r\n\t\t\t\tmergeMap(value => {\r\n\t\t\t\t\tif( value['STATUS'] == 'success' ){\r\n\t\t\t\t\t\tresp.STATUS = true;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tresp.STATUS = false;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tresp.OBJETO = value['OBJETO'];\r\n\t\t\t\t\tresp.MENSAJE = value['MENSAJE'];\r\n\t\t\t\t\treturn of(resp);\r\n\t\t\t}),\r\n\t\t\ttimeout(MAX_TIME),\r\n\t\t\tcatchError(err => {\r\n\t\t\t\tresp['MENSAJE'] = err;\r\n\t\t\t\treturn of(resp);\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n\r\n\tAddFileSubCompany(data: FormData): Observable < string >\r\n\t{\r\n\t\tlet headers = new HttpHeaders();\r\n\t\theaders.append('Content-Type', 'application/json');\r\n\t\tconst httpOptions = { headers: headers };\r\n\t\treturn this.http.post < string > (this.url + 'SubCompanyDocument/UploadFile/', data, httpOptions);\r\n\t }\r\n\r\n\tAddFileEmployee(data: FormData): Observable < string >\r\n\t{\r\n\t\tlet headers = new HttpHeaders();\r\n\t\theaders.append('Content-Type', 'application/json');\r\n\t\tconst httpOptions = { headers: headers };\r\n\t\treturn this.http.post < string > (this.url + 'EmployeeDocument/UploadFile/', data, httpOptions);\r\n\t }\r\n\r\n\tAddFileVehicle(data: FormData): Observable < string >\r\n\t{\r\n\t\tlet headers = new HttpHeaders();\r\n\t\theaders.append('Content-Type', 'application/json');\r\n\t\tconst httpOptions = { headers: headers };\r\n\t\treturn this.http.post < string > (this.url + 'VehicleDocument/UploadFile/', data, httpOptions);\r\n\t }\r\n\r\n\tAddFileWorkerAuth(data: FormData): Observable < string >\r\n\t{\r\n\t\tlet headers = new HttpHeaders();\r\n\t\theaders.append('Content-Type', 'application/json');\r\n\t\tconst httpOptions = { headers: headers };\r\n\t\treturn this.http.post < string > (this.url + 'WorkAuth/UploadFile', data, httpOptions);\r\n\t}\r\n\r\n // UpdateValidAts(qst, data: FormData): Observable < boolean >\r\n // {\r\n // let headers = new HttpHeaders();\r\n // headers.append('Content-Type', 'application/json');\r\n // const httpOptions = { headers: headers };\r\n // return this.http.post < boolean > (this.url + qst, data, httpOptions);\r\n // }\r\n\r\n UpdateValid(url, data: FormData) {debugger;\r\n // console.log('cool post call'); debugger;\r\n return this.http.post(`${this.url}`+url, data);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n })\r\n export class GlobalService {\r\n \r\n constructor() {}\r\n\r\n formatOnlyDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 8 ? `0${(date.getMonth() + 1).toString()}`: (date.getMonth() + 1).toString()) + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}`: date.getDate().toString());\r\n }\r\n \r\n formatDate(date: Date) {\r\n return date.getFullYear().toString() + '-' + (date.getMonth() <= 8 ? `0${(date.getMonth() + 1).toString()}`: (date.getMonth() + 1).toString()) \r\n + '-' + (date.getDate() <= 9 ? `0${date.getDate().toString()}`: date.getDate().toString()) + ' ' + \r\n (date.getHours() <= 9 ? `0${date.getHours().toString()}`: date.getHours().toString()) + ':' +\r\n (date.getMinutes() <= 9 ? `0${date.getMinutes().toString()}`: date.getMinutes().toString()) + ':' +\r\n (date.getSeconds() <= 9 ? `0${date.getSeconds().toString()}`: date.getSeconds().toString());\r\n }\r\n \r\n \r\n }","export class OfflineContainer {\r\n filters:any;\r\n data:any;\r\n last_update:string;\r\n\r\n constructor(){\r\n this.setLastUpdate();\r\n }\r\n\r\n public setLastUpdate(){\r\n let tmp = new Date();\r\n this.last_update = tmp.toISOString();\r\n }\r\n\r\n public setData(obj:any){\r\n this.data = obj;\r\n this.setLastUpdate();\r\n }\r\n\r\n public setFilters(obj:any){\r\n this.filters = obj;\r\n this.setLastUpdate();\r\n }\r\n\r\n}","import { ConfigVehicle } from \"src/app/services/configvehicle\";\r\nimport { Global } from \"src/app/services/global\";\r\n\r\nexport const environment = {\r\n production: true,\r\n version: '1.0.2',\r\n KEY: '234NutrecoCo4562',\r\n Global,\r\n ConfigVehicle\r\n};\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\nimport { ConfigVehicle } from \"src/app/services/configvehicle\";\r\nimport { Global } from \"src/app/services/global\";\r\n\r\nexport const environment = {\r\n production: false,\r\n version: '1.0.2',\r\n // Key\r\n KEY: 'GPoyZi048rXxto8KWZVpHozEFBvAXo37',//'234NutrecoCo4562',\r\n Global,\r\n ConfigVehicle\r\n};\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.log(err));\r\n","var map = {\n\t\"./af\": 62275,\n\t\"./af.js\": 62275,\n\t\"./ar\": 90857,\n\t\"./ar-dz\": 11218,\n\t\"./ar-dz.js\": 11218,\n\t\"./ar-kw\": 14754,\n\t\"./ar-kw.js\": 14754,\n\t\"./ar-ly\": 66680,\n\t\"./ar-ly.js\": 66680,\n\t\"./ar-ma\": 92178,\n\t\"./ar-ma.js\": 92178,\n\t\"./ar-ps\": 42060,\n\t\"./ar-ps.js\": 42060,\n\t\"./ar-sa\": 56522,\n\t\"./ar-sa.js\": 56522,\n\t\"./ar-tn\": 95682,\n\t\"./ar-tn.js\": 95682,\n\t\"./ar.js\": 90857,\n\t\"./az\": 70164,\n\t\"./az.js\": 70164,\n\t\"./be\": 79774,\n\t\"./be.js\": 79774,\n\t\"./bg\": 60947,\n\t\"./bg.js\": 60947,\n\t\"./bm\": 21832,\n\t\"./bm.js\": 21832,\n\t\"./bn\": 89650,\n\t\"./bn-bd\": 74477,\n\t\"./bn-bd.js\": 74477,\n\t\"./bn.js\": 89650,\n\t\"./bo\": 66005,\n\t\"./bo.js\": 66005,\n\t\"./br\": 98492,\n\t\"./br.js\": 98492,\n\t\"./bs\": 70534,\n\t\"./bs.js\": 70534,\n\t\"./ca\": 52061,\n\t\"./ca.js\": 52061,\n\t\"./cs\": 84737,\n\t\"./cs.js\": 84737,\n\t\"./cv\": 61167,\n\t\"./cv.js\": 61167,\n\t\"./cy\": 77996,\n\t\"./cy.js\": 77996,\n\t\"./da\": 9528,\n\t\"./da.js\": 9528,\n\t\"./de\": 14540,\n\t\"./de-at\": 49430,\n\t\"./de-at.js\": 49430,\n\t\"./de-ch\": 67978,\n\t\"./de-ch.js\": 67978,\n\t\"./de.js\": 14540,\n\t\"./dv\": 83426,\n\t\"./dv.js\": 83426,\n\t\"./el\": 6616,\n\t\"./el.js\": 6616,\n\t\"./en-au\": 63816,\n\t\"./en-au.js\": 63816,\n\t\"./en-ca\": 32162,\n\t\"./en-ca.js\": 32162,\n\t\"./en-gb\": 83305,\n\t\"./en-gb.js\": 83305,\n\t\"./en-ie\": 61954,\n\t\"./en-ie.js\": 61954,\n\t\"./en-il\": 43060,\n\t\"./en-il.js\": 43060,\n\t\"./en-in\": 59923,\n\t\"./en-in.js\": 59923,\n\t\"./en-nz\": 13540,\n\t\"./en-nz.js\": 13540,\n\t\"./en-sg\": 16505,\n\t\"./en-sg.js\": 16505,\n\t\"./eo\": 41907,\n\t\"./eo.js\": 41907,\n\t\"./es\": 86640,\n\t\"./es-do\": 41246,\n\t\"./es-do.js\": 41246,\n\t\"./es-mx\": 56131,\n\t\"./es-mx.js\": 56131,\n\t\"./es-us\": 36430,\n\t\"./es-us.js\": 36430,\n\t\"./es.js\": 86640,\n\t\"./et\": 62551,\n\t\"./et.js\": 62551,\n\t\"./eu\": 32711,\n\t\"./eu.js\": 32711,\n\t\"./fa\": 54572,\n\t\"./fa.js\": 54572,\n\t\"./fi\": 33390,\n\t\"./fi.js\": 33390,\n\t\"./fil\": 87860,\n\t\"./fil.js\": 87860,\n\t\"./fo\": 48216,\n\t\"./fo.js\": 48216,\n\t\"./fr\": 99291,\n\t\"./fr-ca\": 98527,\n\t\"./fr-ca.js\": 98527,\n\t\"./fr-ch\": 58407,\n\t\"./fr-ch.js\": 58407,\n\t\"./fr.js\": 99291,\n\t\"./fy\": 47054,\n\t\"./fy.js\": 47054,\n\t\"./ga\": 49540,\n\t\"./ga.js\": 49540,\n\t\"./gd\": 73917,\n\t\"./gd.js\": 73917,\n\t\"./gl\": 51486,\n\t\"./gl.js\": 51486,\n\t\"./gom-deva\": 56245,\n\t\"./gom-deva.js\": 56245,\n\t\"./gom-latn\": 48868,\n\t\"./gom-latn.js\": 48868,\n\t\"./gu\": 59652,\n\t\"./gu.js\": 59652,\n\t\"./he\": 89019,\n\t\"./he.js\": 89019,\n\t\"./hi\": 42040,\n\t\"./hi.js\": 42040,\n\t\"./hr\": 63402,\n\t\"./hr.js\": 63402,\n\t\"./hu\": 79322,\n\t\"./hu.js\": 79322,\n\t\"./hy-am\": 27609,\n\t\"./hy-am.js\": 27609,\n\t\"./id\": 57942,\n\t\"./id.js\": 57942,\n\t\"./is\": 98275,\n\t\"./is.js\": 98275,\n\t\"./it\": 73053,\n\t\"./it-ch\": 4378,\n\t\"./it-ch.js\": 4378,\n\t\"./it.js\": 73053,\n\t\"./ja\": 46176,\n\t\"./ja.js\": 46176,\n\t\"./jv\": 679,\n\t\"./jv.js\": 679,\n\t\"./ka\": 92726,\n\t\"./ka.js\": 92726,\n\t\"./kk\": 72953,\n\t\"./kk.js\": 72953,\n\t\"./km\": 86957,\n\t\"./km.js\": 86957,\n\t\"./kn\": 59181,\n\t\"./kn.js\": 59181,\n\t\"./ko\": 47148,\n\t\"./ko.js\": 47148,\n\t\"./ku\": 27752,\n\t\"./ku-kmr\": 63898,\n\t\"./ku-kmr.js\": 63898,\n\t\"./ku.js\": 27752,\n\t\"./ky\": 65675,\n\t\"./ky.js\": 65675,\n\t\"./lb\": 41263,\n\t\"./lb.js\": 41263,\n\t\"./lo\": 65746,\n\t\"./lo.js\": 65746,\n\t\"./lt\": 11143,\n\t\"./lt.js\": 11143,\n\t\"./lv\": 38753,\n\t\"./lv.js\": 38753,\n\t\"./me\": 44054,\n\t\"./me.js\": 44054,\n\t\"./mi\": 31573,\n\t\"./mi.js\": 31573,\n\t\"./mk\": 30202,\n\t\"./mk.js\": 30202,\n\t\"./ml\": 68523,\n\t\"./ml.js\": 68523,\n\t\"./mn\": 79794,\n\t\"./mn.js\": 79794,\n\t\"./mr\": 56681,\n\t\"./mr.js\": 56681,\n\t\"./ms\": 56975,\n\t\"./ms-my\": 39859,\n\t\"./ms-my.js\": 39859,\n\t\"./ms.js\": 56975,\n\t\"./mt\": 3691,\n\t\"./mt.js\": 3691,\n\t\"./my\": 5152,\n\t\"./my.js\": 5152,\n\t\"./nb\": 7607,\n\t\"./nb.js\": 7607,\n\t\"./ne\": 21526,\n\t\"./ne.js\": 21526,\n\t\"./nl\": 86368,\n\t\"./nl-be\": 40076,\n\t\"./nl-be.js\": 40076,\n\t\"./nl.js\": 86368,\n\t\"./nn\": 68420,\n\t\"./nn.js\": 68420,\n\t\"./oc-lnc\": 51906,\n\t\"./oc-lnc.js\": 51906,\n\t\"./pa-in\": 94504,\n\t\"./pa-in.js\": 94504,\n\t\"./pl\": 54721,\n\t\"./pl.js\": 54721,\n\t\"./pt\": 74645,\n\t\"./pt-br\": 54548,\n\t\"./pt-br.js\": 54548,\n\t\"./pt.js\": 74645,\n\t\"./ro\": 71977,\n\t\"./ro.js\": 71977,\n\t\"./ru\": 26042,\n\t\"./ru.js\": 26042,\n\t\"./sd\": 78849,\n\t\"./sd.js\": 78849,\n\t\"./se\": 27739,\n\t\"./se.js\": 27739,\n\t\"./si\": 50084,\n\t\"./si.js\": 50084,\n\t\"./sk\": 92449,\n\t\"./sk.js\": 92449,\n\t\"./sl\": 23086,\n\t\"./sl.js\": 23086,\n\t\"./sq\": 33139,\n\t\"./sq.js\": 33139,\n\t\"./sr\": 30607,\n\t\"./sr-cyrl\": 30063,\n\t\"./sr-cyrl.js\": 30063,\n\t\"./sr.js\": 30607,\n\t\"./ss\": 40131,\n\t\"./ss.js\": 40131,\n\t\"./sv\": 21665,\n\t\"./sv.js\": 21665,\n\t\"./sw\": 5642,\n\t\"./sw.js\": 5642,\n\t\"./ta\": 33622,\n\t\"./ta.js\": 33622,\n\t\"./te\": 74825,\n\t\"./te.js\": 74825,\n\t\"./tet\": 48336,\n\t\"./tet.js\": 48336,\n\t\"./tg\": 39238,\n\t\"./tg.js\": 39238,\n\t\"./th\": 99463,\n\t\"./th.js\": 99463,\n\t\"./tk\": 39986,\n\t\"./tk.js\": 39986,\n\t\"./tl-ph\": 29672,\n\t\"./tl-ph.js\": 29672,\n\t\"./tlh\": 40043,\n\t\"./tlh.js\": 40043,\n\t\"./tr\": 51212,\n\t\"./tr.js\": 51212,\n\t\"./tzl\": 50110,\n\t\"./tzl.js\": 50110,\n\t\"./tzm\": 80482,\n\t\"./tzm-latn\": 38309,\n\t\"./tzm-latn.js\": 38309,\n\t\"./tzm.js\": 80482,\n\t\"./ug-cn\": 42495,\n\t\"./ug-cn.js\": 42495,\n\t\"./uk\": 54157,\n\t\"./uk.js\": 54157,\n\t\"./ur\": 80984,\n\t\"./ur.js\": 80984,\n\t\"./uz\": 64141,\n\t\"./uz-latn\": 43662,\n\t\"./uz-latn.js\": 43662,\n\t\"./uz.js\": 64141,\n\t\"./vi\": 12607,\n\t\"./vi.js\": 12607,\n\t\"./x-pseudo\": 66460,\n\t\"./x-pseudo.js\": 66460,\n\t\"./yo\": 92948,\n\t\"./yo.js\": 92948,\n\t\"./zh-cn\": 62658,\n\t\"./zh-cn.js\": 62658,\n\t\"./zh-hk\": 39352,\n\t\"./zh-hk.js\": 39352,\n\t\"./zh-mo\": 38274,\n\t\"./zh-mo.js\": 38274,\n\t\"./zh-tw\": 98451,\n\t\"./zh-tw.js\": 98451\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"names":[],"sourceRoot":"webpack:///"}