1import{a as K,b as Q}from"./chunk-JDWKVG5E.js";import"./chunk-VD5EATJL.js";import"./chunk-KXZTMQ3J.js";import"./chunk-K2OQA3KZ.js";import"./chunk-UDUB3UFW.js";import"./chunk-K6EITKPM.js";import"./chunk-D52RLEYG.js";import"./chunk-EB2UU26R.js";import"./chunk-2UNXKZI5.js";import"./chunk-ZOKOHDK5.js";import"./chunk-3QMBWJOV.js";import"./chunk-2JCWEZVR.js";import"./chunk-7XPYUN3I.js";import"./chunk-CMLTWIFE.js";import"./chunk-Z63NVWBS.js";import"./chunk-DYORIS7S.js";import"./chunk-SJ43VFPC.js";import"./chunk-PLISHLQV.js";import"./chunk-YA7JGRO5.js";import"./chunk-DDTCEH2U.js";import"./chunk-RANVOLX4.js";import"./chunk-3RN7KQRV.js";import"./chunk-SBJH6HBE.js";import"./chunk-UI77GJU6.js";import"./chunk-CP3RAMTG.js";import"./chunk-4JBY2UOE.js";import"./chunk-U244OICJ.js";import"./chunk-5NJX3GIR.js";import"./chunk-5ZNE2FRE.js";import"./chunk-ITB7XVJW.js";import"./chunk-GH4HQ4UM.js";import"./chunk-VLUGWFAX.js";import"./chunk-UWDR3PJY.js";import"./chunk-JMDFQGNU.js";import"./chunk-WSDUYUH5.js";import"./chunk-DGEFZ6DH.js";import"./chunk-FZMH2WR3.js";import"./chunk-A5FNUFCF.js";import"./chunk-X77MG2EI.js";import"./chunk-LLLMNSEC.js";import"./chunk-RFCKCFAV.js";import"./chunk-J7J4GNHG.js";import"./chunk-25U5FXAZ.js";import"./chunk-H6RLFBCZ.js";import"./chunk-2LU4APOT.js";import"./chunk-LE74A4IQ.js";import"./chunk-XA5MBOS7.js";import"./chunk-VT4SLOZ3.js";import"./chunk-UKI3P5XO.js";import"./chunk-VGXSXI5J.js";import"./chunk-XFEOO4TY.js";import"./chunk-PF35LDE3.js";import"./chunk-VBPJ5DRZ.js";import"./chunk-M7IIYPYL.js";import"./chunk-7UJTMH4R.js";import"./chunk-IQWFVERN.js";import"./chunk-Q6M4OTTP.js";import"./chunk-RCSTJ6LP.js";import"./chunk-PQYDXJ4V.js";import"./chunk-QPJJKBA3.js";import"./chunk-KBHQIKFG.js";import"./chunk-K2PODTDU.js";import"./chunk-BKF7GJNS.js";import"./chunk-3MBO5FL3.js";import"./chunk-R33FJUW4.js";import"./chunk-WAU6DAPB.js";import"./chunk-LAMQRPVT.js";import"./chunk-YB3TUYCO.js";import"./chunk-CFMEKB3S.js";import"./chunk-YZMYBD63.js";import"./chunk-JM37VUPM.js";import"./chunk-IZSNBMUU.js";import"./chunk-QGFWFXTF.js";import{B as $,M as H,b as N,c as O,e as P,g as V,l as v,p as R,r as k,w as L,x as q,z as B}from"./chunk-62Q3FVOL.js";import{C as w,j as M,l as U,m as I,w as T,z as F}from"./chunk-KJY6N5PL.js";import{Fb as h,Ga as E,Nb as s,Tc as p,Vc as d,Yb as a,Zb as i,_b as S,cc as b,hc as x,ic as g,lb as o,ta as A,wa as C,wc as r,xa as _,xc as z,yc as u,zb as y,zc as D}from"./chunk-JMQPEIEX.js";import"./chunk-EU2KAMEK.js";import"./chunk-J4XOFOAH.js";function tt(e,c){if(e&1&&(a(0,"option",9),r(1),p(2,"number"),i()),e&2){let t=c.$implicit;s("ngValue",t.formato),o(),D(" ",t.formato," - \u20AC ",d(2,3,t.tariffa,"1.2-2")," ")}}function et(e,c){if(e&1&&(a(0,"option",9),r(1),p(2,"number"),i()),e&2){let t=g(2);s("ngValue","DEFAULT"),o(),u(" Tariffa default - \u20AC ",d(2,2,t.bando==null?null:t.bando.tariffa,"1.2-2")," ")}}function it(e,c){if(e&1&&(a(0,"div",24),r(1),i()),e&2){let t=g(2);o(),z(t.errorMessage)}}function at(e,c){if(e&1){let t=b();a(0,"tr")(1,"td"),r(2),i(),a(3,"td"),r(4),i(),a(5,"td"),r(6),p(7,"number"),i(),a(8,"td"),r(9),p(10,"number"),i(),a(11,"td",27)(12,"button",29),x("click",function(){let l=C(t).index,f=g(3);return _(f.rimuoviRigaCalcolo(l))}),r(13,"Rimuovi"),i()()()}if(e&2){let t=c.$implicit;o(2),z(t.formato),o(2),z(t.quantita),o(2),u("\u20AC ",d(7,4,t.tariffa,"1.2-2"),""),o(3),u("\u20AC ",d(10,7,t.subtotale,"1.2-2"),"")}}function nt(e,c){if(e&1&&(a(0,"div",25)(1,"table",26)(2,"thead")(3,"tr")(4,"th"),r(5,"Formato"),i(),a(6,"th"),r(7,"Quantit\xE0"),i(),a(8,"th"),r(9,"Tariffa"),i(),a(10,"th"),r(11,"Subtotale"),i(),a(12,"th",27),r(13,"Azioni"),i()()(),a(14,"tbody"),h(15,at,14,10,"tr",28),i()()()),e&2){let t=g(2);o(15),s("ngForOf",t.righeCalcolo)}}function rt(e,c){if(e&1&&(a(0,"label",30),S(1,"input",31),a(2,"span")(3,"strong"),r(4,"Diritti di segreteria"),i(),a(5,"small"),r(6),p(7,"number"),i()()()),e&2){let t=g(2);o(),s("formControl",t.applicaDirittiSegreteria),o(5),u("\u20AC ",d(7,2,t.bando==null?null:t.bando.costoDirittiSegreteria,"1.2-2"),"")}}function ot(e,c){if(e&1&&(a(0,"label",32),S(1,"input",33),a(2,"span")(3,"strong"),r(4,"Maggiorazione urgenza"),i(),a(5,"small"),r(6),p(7,"number"),i()()()),e&2){let t=g(2);o(),s("formControl",t.applicaUrgenza),o(5),u("\u20AC ",d(7,2,t.bando==null?null:t.bando.tariffaUrgenza,"1.2-2"),"")}}function lt(e,c){if(e&1&&(a(0,"span",36),r(1),p(2,"date"),i()),e&2){let t=g(3);o(),u(" Termine per la maggiorazione: ",d(2,1,t.scadenzaUrgenzaLavorativa,"dd/MM/yyyy HH:mm"),". ")}}function st(e,c){e&1&&(a(0,"span",36),r(1," Sono trascorse oltre 24 ore lavorative: la maggiorazione non viene conteggiata nel totale. "),i())}function mt(e,c){if(e&1&&(a(0,"div",34)(1,"strong"),r(2,"Pratica richiesta come urgente."),i(),h(3,lt,3,4,"span",35)(4,st,2,0,"span",35),i()),e&2){let t=g(2);s("ngClass",t.oltre24hLavorative?"alert-warning":"alert-info"),o(3),s("ngIf",t.scadenzaUrgenzaLavorativa),o(),s("ngIf",t.oltre24hLavorative)}}function ct(e,c){if(e&1&&(a(0,"div",37)(1,"div")(2,"span"),r(3,"Copie"),i(),a(4,"strong"),r(5),p(6,"number"),i()(),a(7,"div")(8,"span"),r(9,"Diritti di segreteria"),i(),a(10,"strong"),r(11),p(12,"number"),i()(),a(13,"div")(14,"span"),r(15,"Urgenza"),i(),a(16,"strong"),r(17),p(18,"number"),i()(),a(19,"div",38)(20,"span"),r(21,"Totale"),i(),a(22,"strong"),r(23),p(24,"number"),i()()()),e&2){let t=g(2);
1o(5),u("\u20AC ",d(6,4,t.totaleCopie,"1.2-2"),""),o(6),u("\u20AC ",d(12,7,t.importoDirittiSegreteria,"1.2-2"),""),o(6),u("\u20AC ",d(18,10,t.importoUrgenza,"1.2-2"),""),o(6),u("\u20AC ",d(24,13,t.totaleFinale,"1.2-2"),"")}}function pt(e,c){if(e&1){let t=b();a(0,"section",1)(1,"div",2)(2,"div")(3,"span",3),r(4,"Accesso agli atti"),i(),a(5,"h5"),r(6,"Calcolo importo"),i()(),a(7,"strong",4),r(8),p(9,"number"),i()(),a(10,"div",5)(11,"div",6)(12,"label",7),r(13,"Formato foglio"),i(),a(14,"select",8)(15,"option",9),r(16,"Seleziona formato"),i(),h(17,tt,3,6,"option",10)(18,et,3,5,"option",11),i()(),a(19,"div",12)(20,"label",13),r(21,"Numero fogli / facciate"),i(),S(22,"input",14),i(),a(23,"div",15)(24,"button",16),x("click",function(){C(t);let l=g();return _(l.aggiungiRigaCalcolo())}),r(25,"Aggiungi"),i()()(),h(26,it,2,1,"div",17)(27,nt,16,1,"div",18),a(28,"div",19),h(29,rt,8,5,"label",20)(30,ot,8,5,"label",21),i(),h(31,mt,5,3,"div",22)(32,ct,25,16,"div",23),i()}if(e&2){let t=g();o(8),u("\u20AC ",d(9,12,t.totaleFinale,"1.2-2"),""),o(6),s("formControl",t.formatoRiga),o(),s("ngValue",null),o(2),s("ngForOf",t.tariffeFormatiDisponibili),o(),s("ngIf",!t.tariffeFormatiDisponibili.length&&(t.bando==null?null:t.bando.tariffa)),o(4),s("formControl",t.quantitaRiga),o(4),s("ngIf",t.errorMessage),o(),s("ngIf",t.righeCalcolo.length),o(2),s("ngIf",t.bando==null?null:t.bando.dirittiSegreteriaAttivi),o(),s("ngIf",t.mostraUrgenza),o(),s("ngIf",t.mostraUrgenza),o(),s("ngIf",t.haRiepilogoCalcolo)}}var j=(()=>{class e{constructor(){this.bando=null,this.pratica=null,this.pagamento=null,this.calculationChange=new E,this.formatoRiga=new v(null,P.required),this.quantitaRiga=new v(null,[P.required,P.min(1)]),this.applicaDirittiSegreteria=new v(!1,{nonNullable:!0}),this.applicaUrgenza=new v(!1,{nonNullable:!0}),this.righeCalcolo=[],this.tariffeFormatiDisponibili=[],this.totaleCopie=0,this.importoDirittiSegreteria=0,this.importoUrgenza=0,this.totaleFinale=0,this.dettaglioImporti=[],this.dataInvioPratica=null,this.scadenzaUrgenzaLavorativa=null,this.oltre24hLavorative=!1,this.errorMessage="",this.initializedForKey="",this.subscriptionsReady=!1}ngOnChanges(t){if(!this.bando||!this.pratica)return;let n=`${this.pratica?.CR??""}|${this.pratica?.created_at??""}`;this.initializedForKey!==n&&(this.initializeFromInputs(),this.initializedForKey=n),this.subscriptionsReady||(this.subscriptionsReady=!0,this.applicaDirittiSegreteria.valueChanges.subscribe(()=>this.recalculateAndEmit()),this.applicaUrgenza.valueChanges.subscribe(()=>this.recalculateAndEmit()))}get haConfigurazionePagamento(){return!!(Number(this.bando?.tariffa??0)>0||this.tariffeFormatiDisponibili.length>0||this.isTrue(this.bando?.dirittiSegreteriaAttivi)||this.isTrue(this.bando?.urgenzaAttiva))}get haRiepilogoCalcolo(){return this.righeCalcolo.length>0||this.importoDirittiSegreteria>0||this.importoUrgenza>0}get mostraUrgenza(){return this.isTrue(this.pratica?.richiestaUrgente)&&this.isTrue(this.bando?.urgenzaAttiva)}aggiungiRigaCalcolo(){let t=String(this.formatoRiga.value||"").trim(),n=Number(this.quantitaRiga.value??0);if(!t){this.errorMessage="Seleziona un formato foglio.";return}if(!Number.isFinite(n)||n<=0){this.errorMessage="Inserisci una quantit\xE0 valida.";return}let l=this.getTariffaPerFormato(t);this.righeCalcolo=[...this.righeCalcolo,{formato:t,quantita:n,tariffa:l,subtotale:this.roundMoney(n*l)}],this.errorMessage="",this.formatoRiga.setValue(null,{emitEvent:!1}),this.quantitaRiga.setValue(null,{emitEvent:!1}),this.recalculateAndEmit()}rimuoviRigaCalcolo(t){t<0||t>=this.righeCalcolo.length||(this.righeCalcolo=this.righeCalcolo.filter((n,l)=>l!==t),this.recalculateAndEmit())}initializeFromInputs(){let t=this.pagamento??this.pratica?.pagamento??{};this.tariffeFormatiDisponibili=Array.isArray(this.bando?.tariffeFormati)?this.bando.tariffeFormati.filter(m=>m&&m.formato!=null).map(m=>({formato:String(m.formato).trim(),tariffa:Number(m.tariffa??0)})):[],this.righeCalcolo=Array.isArray(t?.righeCalcolo)?t.righeCalcolo.map(m=>({formato:String(m?.formato??""),quantita:Number(m?.quantita??0),tariffa:Number(m?.tariffa??0),subtotale:Number(m?.subtotale??0)})):[];let n=typeof t?.applicaDirittiSegreteria=="boolean";this.applicaDirittiSegreteria.setValue(n?t.applicaDirittiSegreteria:this.isTrue(this.bando?.dirittiSegreteriaAttivi),{emitEvent:!1}),this.calcolaScadenzaUrgenza();
1let l=typeof t?.applicaUrgenza=="boolean",f=this.isTrue(this.pratica?.richiestaUrgente)&&this.isTrue(this.bando?.urgenzaAttiva)&&!this.oltre24hLavorative;this.applicaUrgenza.setValue(l?t.applicaUrgenza:f,{emitEvent:!1}),this.recalculate(!1),this.haConfigurazionePagamento&&Promise.resolve().then(()=>this.emitCalculation())}recalculateAndEmit(){this.recalculate(!0)}recalculate(t){this.totaleCopie=this.roundMoney(this.righeCalcolo.reduce((n,l)=>n+Number(l.subtotale||0),0)),this.importoDirittiSegreteria=this.applicaDirittiSegreteria.value&&this.isTrue(this.bando?.dirittiSegreteriaAttivi)?this.roundMoney(Number(this.bando?.costoDirittiSegreteria??0)):0,this.importoUrgenza=this.applicaUrgenza.value&&this.isTrue(this.pratica?.richiestaUrgente)&&this.isTrue(this.bando?.urgenzaAttiva)&&!this.oltre24hLavorative?this.roundMoney(Number(this.bando?.tariffaUrgenza??0)):0,this.totaleFinale=this.roundMoney(this.totaleCopie+this.importoDirittiSegreteria+this.importoUrgenza),this.dettaglioImporti=[...this.righeCalcolo.map(n=>({descrizione:`${n.quantita} x ${n.formato}`,prezzo:this.roundMoney(n.subtotale)})),...this.importoDirittiSegreteria>0?[{descrizione:"Diritti di segreteria",prezzo:this.importoDirittiSegreteria}]:[],...this.importoUrgenza>0?[{descrizione:"Maggiorazione urgenza",prezzo:this.importoUrgenza}]:[]],t&&this.emitCalculation()}emitCalculation(){this.haConfigurazionePagamento&&this.calculationChange.emit({righeCalcolo:this.righeCalcolo,totaleCopie:this.totaleCopie,applicaDirittiSegreteria:this.applicaDirittiSegreteria.value,importoDirittiSegreteria:this.importoDirittiSegreteria,applicaUrgenza:this.applicaUrgenza.value,urgenzaApplicata:this.importoUrgenza>0,importoUrgenza:this.importoUrgenza,totaleCalcolato:this.totaleFinale,totaleFinale:this.totaleFinale,dettaglioImporti:this.dettaglioImporti})}getTariffaPerFormato(t){if(t==="DEFAULT")return Number(this.bando?.tariffa??0);let n=this.tariffeFormatiDisponibili.find(l=>l.formato.toLowerCase()===t.toLowerCase());return Number(n?.tariffa??this.bando?.tariffa??0)}calcolaScadenzaUrgenza(){if(this.dataInvioPratica=this.parseDate(this.pratica?.created_at),!this.dataInvioPratica){this.scadenzaUrgenzaLavorativa=null,this.oltre24hLavorative=!1;return}this.scadenzaUrgenzaLavorativa=this.addWorkingDaysPreservingTime(this.dataInvioPratica,1),this.oltre24hLavorative=Date.now()>this.scadenzaUrgenzaLavorativa.getTime()}parseDate(t){if(t instanceof Date&&!Number.isNaN(t.getTime()))return t;if(typeof t=="number"){let m=new Date(t);return Number.isNaN(m.getTime())?null:m}let n=String(t??"").trim();if(!n)return null;let l=n.match(/^(\d{2})\/(\d{2})\/(\d{4})(?:\s*-\s*(\d{2}):(\d{2})(?::(\d{2}))?)?$/);if(l){let[,m,W,G,J="00",X="00",Y="00"]=l;return new Date(+G,+W-1,+m,+J,+X,+Y)}let f=new Date(n);return Number.isNaN(f.getTime())?null:f}addWorkingDaysPreservingTime(t,n){let l=new Date(t),f=0;for(;f<n;){l.setDate(l.getDate()+1);let m=l.getDay();m!==0&&m!==6&&f++}return l}isTrue(t){return t===!0||String(t).toLowerCase()==="true"}roundMoney(t){return Number(Number(t||0).toFixed(2))}static{this.\u0275fac=function(n){return new(n||e)}}static{this.\u0275cmp=y({type:e,selectors:[["app-aaa-payment-calculator"]],inputs:{bando:"bando",pratica:"pratica",pagamento:"pagamento"},outputs:{calculationChange:"calculationChange"},features:[A],decls:1,vars:1,consts:[["class","aaa-payment-card mb-4",4,"ngIf"],[1,"aaa-payment-card","mb-4"],[1,"aaa-payment-card__header"],[1,"eyebrow"],[1,"total-badge"],[1,"row","g-3","align-items-end"],[1,"col-12","col-md-5"],["for","aaaFormatoRiga",1,"form-label"],["id","aaaFormatoRiga",1,"form-select",3,"formControl"],[3,"ngValue"],[3,"ngValue",4,"ngFor","ngForOf"],[3,"ngValue",4,"ngIf"],[1,"col-12","col-md-4"],["for","aaaQuantitaRiga",1,"form-label"],["id","aaaQuantitaRiga","type","number","min","1",1,"form-control",3,"formControl"],[1,"col-12","col-md-3"],["type","button",1,"btn","btn-primary","w-100",3,"click"],["class","alert alert-danger mt-3 mb-0",4,"ngIf"],["class","table-responsive mt-4",4,"ngIf"],[1,"extras-grid","mt-4"],["class","option-card","for","aaaDirittiSegreteria",4,"ngIf"],["class","option-card","for","aaaUrgenza",4,"ngIf"],["class","alert mt-3 mb-0",3,"ngClass",4,"ngIf"],["class","summary-box mt-4",4,"ngIf"],[1,"alert","alert-danger","mt-3","mb-0"],[1,"table-responsive","mt-4"],[1,"table","align-middle","mb-0"],[1,"text-end"],[4,"ngFor","ngForOf"],["type","button",1,"btn","btn-outline-danger","btn-sm",3,"click"],["for","aaaDirittiSegreteria",1,"option-card"],["id","aaaDirittiSegreteria","type","checkbox",1,"form-check-input",3,"formControl"],["for","aaaUrgenza",1,"option-card"],["id","aaaUrgenza","type","checkbox",1,"form-check-input",3,"formControl"],[1,"alert","mt-3","mb-0",3,"ngClass"],["class","d-block mt-1",4,"ngIf"],[1,"d-block","mt-1"],[1,"summary-box","mt-4"],[1,"summary-total"]],template:function(n,l){n&1&&h(0,pt,33,15,"section",0),n&2&&s("ngIf",l.haConfigurazionePagamento)},dependencies:[w,M,U,I,F,T,H,q,B,O,R,N,L,V,$,k],styles:["[_nghost-%COMP%]{display:block}.aaa-payment-card[_ngcontent-%COMP%]{border:1px solid #e4e8ee;border-radius:14px;background:#fff;box-shadow:0 4px 18px #0000000d;padding:1.25rem}.aaa-payment-card__header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.aaa-payment-card__header[_ngcontent-%COMP%] h5[_ngcontent-%COMP%]{margin:.15rem 0 0}.eyebrow[_ngcontent-%COMP%]{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#5f6b7a}.total-badge[_ngcontent-%COMP%]{white-space:nowrap;font-size:1.15rem}.extras-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.option-card[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:.75rem;border:1px solid #e4e8ee;border-radius:10px;padding:.9rem 1rem;cursor:pointer}.option-card[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{min-width:0;display:flex;flex-direction:column}.option-card[_ngcontent-%COMP%] strong[_ngcontent-%COMP%], .option-card[_ngcontent-%COMP%] small[_ngcontent-%COMP%]{overflow-wrap:break-word;word-break:normal}.summary-box[_ngcontent-%COMP%]{border-top:1px solid #e4e8ee;padding-top:1rem}.summary-box[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:1rem;padding:.3rem 0}.summary-total[_ngcontent-%COMP%]{margin-top:.45rem;padding-top:.8rem!important;border-top:1px solid #e4e8ee;font-size:1.08rem}@media (max-width: 767.98px){.aaa-payment-card__header[_ngcontent-%COMP%]{align-items:flex-start;flex-direction:column}.extras-grid[_ngcontent-%COMP%]{grid-template-columns:1fr}.table[_ngcontent-%COMP%]{min-width:620px}}"]})}}return e})();function dt(e,c){if(e&1){let t=b();a(0,"app-aaa-payment-calculator",2),x("calculationChange",function(l){let f=C(t).$implicit;return _(f.applyCalculation(l))}),i()}if(e&2){let t=c.$implicit;s("bando",t.bando)("pratica",t.pratica)("pagamento",t.pagamento)}}var Pt=(()=>{class e{static{this.\u0275fac=function(n){return new(n||e)}}static{this.\u0275cmp=y({type:e,selectors:[["app-user-pratica-pagamento-aaa"]],decls:2,vars:1,consts:[["moduleKey","accessoagliatti","pageSectionTitle","Gestione pagamento",3,"usePraticaPageHeader"],["paymentSetupExtension",""],[3,"calculationChange","bando","pratica","pagamento"]],template:function(n,l){n&1&&(a(0,"app-user-pratica-pagamento",0),h(1,dt,1,3,"ng-template",1),i()),n&2&&s("usePraticaPageHeader",!0)},dependencies:[Q,K,j],styles:["[_nghost-%COMP%]{display:block}"]})}}return e})();export{Pt as UserPraticaPagamentoAaaComponent};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.