PageSourceSearch

http://aquagroup.ru/admin/assets/ClaimsView-Qc_Sdp0o.js

js aquagroup.ru collected 2026-10-04 13:27:50 UTC 26,651 bytes, 1 lines download raw bytes

1import{d as _l,u as pl,$ as yl,J as je,aE as C,K as fl,c as o,a as i,f as r,b as l,y as E,q as bl,n as c,r as T,j as _,e as w,m,F as I,a5 as L,t as n,a3 as f,H as S,o as t,_ as kl}from"./index-DBAIXX39.js";import{a as gl,c as Oe,d as Cl,f as me}from"./format-BK2JONJ5.js";import{V as Z,a as _e,b as Pe,c as Ge,d as Fe}from"./VDialog-BVJy90fW.js";import{j as Je}from"./VSelect-BTvj6afo.js";import{V as ee}from"./VTextField-DZnb8Qtf.js";import{V as pe}from"./VSwitch-CFBcCL5H.js";import{V as Ke}from"./VTextarea-DSPwrNKO.js";import"./index-CvneU2GP.js";import"./VOverlay-BxLjFlP9.js";import"./VMenu-BaeoiIwK.js";import"./index-Daolnky5.js";import"./VProgressCircular-BkqYBa4z.js";const D={draft:"Черновик",new:"Новая",delivery:"Ожидает доставки",in_progress:"В работе",negotiation:"Согласование",reserved:"Резерв",invoiced:"Счёт",shipped:"Отгружено",done:"Завершена",rejected:"Отклонена",client_declined:"Клиент отказался"},He={draft:"muted",new:"warn",delivery:"warn",in_progress:"brand",negotiation:"warn",reserved:"brand",invoiced:"brand",shipped:"ok",done:"ok",rejected:"danger",client_declined:"muted"},ye={order:"Заказ",reclamation:"Рекламация"},wl=new Set(["reserved","invoiced","shipped"]);function Vl(le){const b={kind:"",unit_sku:"",unit_title:"",unit_serial:"",sell_date_unix:0,seller:"",buyer_phone:"",diagnostic_type:"",repair_category_id:0,problem_description:"",quality_check_result:"",master_conclusion:"",delivery_by:"",delivery_name:"",delivery_track:"",shipment_date_unix:0};let A=null;if(le)try{A=JSON.parse(le)}catch{A=null}const q=A&&typeof A=="object"?A:{};return{reclamation:{...b,...q.reclamation??{}},data:q}}const ql={repair:"Ремонт",exchange:"Обмен",refund:"Возврат"},xl={in_place:"На месте",by_manufacturer:"У производителя"},Il={by_tc:"Транспортная компания",by_diller:"Своими силами",by_manufacturer:"Заберёт производитель"},Sl={class:"cl-page"},hl={class:"cl__filters"},El={class:"aq-segmented cl__seg"},Tl=["onClick"],Al={class:"cl__items"},$l=["onClick"],Ul={class:"claim__top"},Ll={class:"aq-mono claim__id"},Bl={class:"claim__meta"},Nl={class:"aq-muted"},Rl={class:"claim__date aq-muted"},Dl={class:"cl__dhead"},Ml={class:"cl__dtitle"},zl={class:"row-title"},jl={class:"aq-muted aq-mono"},Ol={key:0,class:"cl__trans"},Pl={class:"cl__trans-row"},Gl={key:0,class:"emit"},Fl={key:1,class:"aq-dim"},Jl={class:"cl__tabs aq-tabs"},Kl={class:"count"},Hl={class:"count"},Wl={class:"count"},Yl={class:"cl__dbody"},Ql={key:0,class:"specs"},Xl={class:"spec"},Zl={class:"spec"},ea={class:"spec"},la={class:"spec"},aa={class:"spec"},ta={class:"spec"},sa={class:"spec"},na={class:"spec"},oa={class:"aq-mono"},ia={key:0,class:"spec"},ua={class:"aq-mono"},da={class:"spec"},ra={key:1,class:"spec"},va={key:2,class:"spec"},ca={key:3,class:"spec"},ma={class:"spec"},_a={key:4,class:"spec"},pa={key:5,class:"spec"},ya={key:6,class:"spec"},fa={key:7,class:"spec"},ba={class:"aq-mono"},ka={key:8,class:"spec spec--wide"},ga={class:"cl__text"},Ca={key:9,class:"spec spec--wide"},wa={class:"cl__text"},Va={key:10,class:"spec spec--wide"},qa={class:"cl__text"},xa={key:11,class:"spec spec--wide"},Ia={class:"cl__text"},Sa={key:12,class:"spec spec--wide cl__ov-actions"},ha={key:1,class:"spec spec--wide cl__raw"},Ea={class:"cl__json"},Ta={key:1},Aa={class:"cl__sectionbar"},$a={class:"aq-muted"},Ua={key:1,class:"table-wrap"},La={class:"cl-table"},Ba={class:"aq-mono"},Na={class:"hide-sm"},Ra={class:"ta-r"},Da={class:"ta-r aq-mono"},Ma={key:0,class:"ta-r cl-actions"},za={key:2,class:"cl__warranty"},ja={key:0,style:{"margin-bottom":"16px","padding-bottom":"14px","border-bottom":"1px solid var(--stroke-soft)"}},Oa={style:{display:"flex",gap:"10px","flex-wrap":"wrap"}},Pa={class:"cl__switches"},Ga={class:"cl__sw"},Fa={class:"cl__sw"},Ja={class:"cl__sw"},Ka={key:1,class:"cl__warranty-actions"},Ha={key:3,class:"cl__files"},Wa={key:0,class:"cl__photos"},Ya=["onClick"],Qa=["src","alt"],Xa=["href"],Za={key:4},et={key:0,class:"cl__comment-add"},lt={key:2,class:"cl__timeline"},at={class:"cl__event-msg"},tt={class:"cl__event-date aq-muted"},st={class:"aq-form-grid"},nt=["src","alt"],ot={class:"cl__act-bar"},it={class:"cl__act-title"},ut={class:"cl__act-actions"},dt=["srcdoc","title"],rt=_l({__name:"ClaimsView",setup(le){const b=bl(),A=pl(),q=S(()=>A.can("claims.write")),{mdAndUp:fe}=yl(),M=c([]),H=c(!0),We=c(0),z=c(""),j=c(""),y=c(null),W=c(!1),Ye=[{value:"",label:"Все"}
1,{value:"order",label:"Заказы"},{value:"reclamation",label:"Рекламации"}],Qe=[{value:"",label:"Все статусы"},...Object.entries(D).map(([a,e])=>({value:a,label:e}))];async function O(a=!0){var e;H.value=!0;try{const d=await C.list({type:z.value,state:j.value,limit:200});M.value=d.claims,We.value=Number(d.total),(!a||!M.value.some(h=>h.publicId===y.value))&&(y.value=((e=M.value[0])==null?void 0:e.publicId)??null)}catch(d){b.fromError(d)}finally{H.value=!1}}je([z,j],()=>{W.value=!1,O(!1)});function Xe(a){y.value=a,fe.value||(W.value=!0)}const be=a=>a.slice(0,8),k=c(null),ke=c(!1),g=c("overview"),$=c([]),ge=c({}),U=c(null),v=S(()=>p.value?Vl(p.value.dataJson):null),ae=S(()=>{var a;return((a=p.value)==null?void 0:a.typeCode)==="reclamation"}),Ce=S(()=>$.value.filter(a=>a.kind!=="tc_receipt")),te=S(()=>$.value.find(a=>a.kind==="tc_receipt")??null),we=S(()=>{var d;const a=(d=v.value)==null?void 0:d.reclamation.repair_category_id;if(!a)return"";const e=ge.value[a];return e?`Категория ${e.category} · ${me(e.costMinor)}`:`Категория №${a}`});je(y,B,{immediate:!0});async function B(){if(!y.value){k.value=null;return}ke.value=!0,$.value=[];try{k.value=await C.get(y.value),rl();try{$.value=(await C.files.list(y.value)).files}catch{$.value=[]}}catch(a){b.fromError(a)}finally{ke.value=!1}}const p=S(()=>{var a;return((a=k.value)==null?void 0:a.claim)??null});fl(async()=>{await O(!1);try{const a=await C.repairCategories();ge.value=Object.fromEntries(a.items.map(e=>[e.id,e]))}catch{}});const P=c(""),se=c(!1);async function Ze(){const a=P.value.trim();if(!(!a||!y.value)){se.value=!0;try{k.value=await C.comment(y.value,a),P.value=""}catch(e){b.fromError(e)}finally{se.value=!1}}}const Y=c(!1),N=c(""),ne=c(""),oe=c(""),el=new Set(["in_progress","negotiation","reserved","invoiced","shipped","done"]),Ve=S(()=>{var a;return ae.value&&el.has(((a=p.value)==null?void 0:a.stateCode)??"")}),ll=new Set(["reserved","invoiced","shipped","done"]),qe=S(()=>{var e,d,h;const a=(e=k.value)==null?void 0:e.warranty;return ae.value&&((d=v.value)==null?void 0:d.reclamation.kind)==="repair"&&!!(a!=null&&a.userAgrees)&&!(a!=null&&a.confirmed)&&ll.has(((h=p.value)==null?void 0:h.stateCode)??"")});async function xe(a){if(y.value){N.value=a;try{const e=a==="act"?await C.act(y.value):await C.invoice(y.value);ne.value=e.html,oe.value=a==="act"?"Акт приёма в ремонт":"Счёт на оплату",Y.value=!0}catch(e){b.fromError(e)}finally{N.value=""}}}function al(){const a=new Blob([ne.value],{type:"text/html"}),e=URL.createObjectURL(a);window.open(e,"_blank"),setTimeout(()=>URL.revokeObjectURL(e),6e4)}const Q=c(""),ie=c("");async function tl(a){if(y.value){ie.value=a;try{await C.transition({publicId:y.value,toState:a,comment:Q.value}),b.success(`Статус: ${D[a]??a}`),Q.value="",await Promise.all([B(),O()])}catch(e){b.fromError(e)}finally{ie.value=""}}}const G=c(!1),ue=c(!1),de=c("order");async function sl(){ue.value=!0;try{const a=await C.create({typeCode:de.value});b.success("Заявка создана"),G.value=!1,await O(!1),y.value=a.publicId}catch(a){b.fromError(a)}finally{ue.value=!1}}const R=c(!1),re=c(!1),x=c({id:0n,sku:"",qty:"1",priceRub:0});function nl(){x.value={id:0n,sku:"",qty:"1",priceRub:0},R.value=!0}function ol(a,e,d,h){x.value={id:a,sku:e,qty:d,priceRub:Number(h)/100},R.value=!0}async function il(){if(!y.value)return;const a=x.value;if(!a.sku.trim()){b.error("Укажите SKU позиции");return}re.value=!0;try{await C.items.upsert({claimPublicId:y.value,id:a.id,sku:a.sku.trim(),qty:a.qty.trim()||"1",priceMinor:BigInt(Math.round((a.priceRub||0)*100))}),b.success("Позиция сохранена"),R.value=!1,await B()}catch(e){b.fromError(e)}finally{re.value=!1}}async function ul(a){if(y.value)try{await C.items.delete(y.value,a),b.success("Позиция удалена"),await B()}catch(e){b.fromError(e)}}const dl=S(()=>{var a;return(((a=k.value)==null?void 0:a.items)??[]).reduce((e,d)=>e+Number(d.priceMinor)*Number(d.qty||0),0)}),V=c({confirmed:!1,declined:!1,userAgrees:!1,message:""}),ve=c(!1);function rl(){var e;const a=(e=k.value)==null?void 0:e.warranty;V.value={confirmed:(a==null?void 0:a.confirmed)??!1,declined:(a==null?void 0:a.declined)??!1,userAgrees:(a==null?void 0:a.userAgrees)??!1,message:(a==null?void 0:a.message)??""}}async function vl(){if(y.value){ve.value=!0;try{await C.warranty.set({claimPublicId:y.value,...V.value}),b.success("Гарантийное решение сохранено"),await B()}catch(a){b.fromError(a)}finally{ve.value=!1}}}const F=c("");async function ce(a){if(y.value){F.value=a;try{await C.warranty.decide(y.value,a,V.value.message),b.success("Решение по гарантии принято"),await B()}catch(e){b.fromError(e)}finally{F.value=""}}}return(a,e)=>{const d=T("GlassButton"),h=T("PageHeader"),Ie=T("SkeletonBlock"),J=T("EmptyState"),Se=T("StatusBadge"),he=T("GlassCard"),
1cl=T("GlassChip"),ml=T("AqIcon");return t(),o("div",Sl,[i(h,{title:"Заявки",desc:"Сервисные заявки и заказы. Мастер - микросервис; жизненный цикл - конечный автомат."},{actions:r(()=>[i(d,{"icon-name":"refresh",loading:H.value,onClick:e[0]||(e[0]=u=>O())},{default:r(()=>[...e[32]||(e[32]=[_("Обновить",-1)])]),_:1},8,["loading"]),q.value?(t(),w(d,{key:0,variant:"primary","icon-name":"plus",onClick:e[1]||(e[1]=u=>G.value=!0)},{default:r(()=>[...e[33]||(e[33]=[_("Новая заявка",-1)])]),_:1})):m("",!0)]),_:1}),l("div",{class:E(["cl",{"show-detail":W.value}])},[i(he,{class:"cl__list",pad:!1},{default:r(()=>[l("div",hl,[l("div",El,[(t(),o(I,null,L(Ye,u=>l("button",{key:u.value,class:E({"aq-on":z.value===u.value}),onClick:X=>z.value=u.value},n(u.label),11,Tl)),64))]),i(Je,{modelValue:j.value,"onUpdate:modelValue":e[2]||(e[2]=u=>j.value=u),items:Qe,"item-title":"label","item-value":"value","hide-details":"",density:"compact"},null,8,["modelValue"])]),l("div",Al,[H.value?(t(),o(I,{key:0},L(6,u=>l("div",{key:u,style:{padding:"11px"}},[i(Ie,{width:"50%",height:"13px"}),i(Ie,{width:"70%",height:"11px",radius:"6px",style:{"margin-top":"8px"}})])),64)):M.value.length?(t(!0),o(I,{key:2},L(M.value,u=>(t(),o("button",{key:u.publicId,class:E(["claim",{sel:u.publicId===y.value}]),type:"button",onClick:X=>Xe(u.publicId)},[l("div",Ul,[l("span",Ll,"#"+n(be(u.publicId)),1),i(Se,{variant:f(He)[u.stateCode]??"muted"},{default:r(()=>[_(n(f(D)[u.stateCode]??u.stateCode),1)]),_:2},1032,["variant"])]),l("div",Bl,[l("span",null,n(f(ye)[u.typeCode]??u.typeCode),1),e[34]||(e[34]=l("span",{class:"aq-muted"},"·",-1)),l("span",Nl,n(u.companyTitle||u.userEmail||"—"),1)]),l("div",Rl,n(f(gl)(u.createdAt)),1)],10,$l))),128)):(t(),w(J,{key:1,icon:"inbox",title:"Заявок нет",hint:z.value||j.value?"Измените фильтры.":"Создайте первую заявку."},null,8,["hint"]))])]),_:1}),i(he,{class:"cl__detail",pad:!1},{default:r(()=>{var u,X,Ee,Te,Ae,$e,Ue,Le,Be,Ne,Re,De,Me,ze;return[p.value?(t(),o(I,{key:0},[l("div",Dl,[l("div",Ml,[f(fe)?m("",!0):(t(),w(d,{key:0,variant:"ghost",size:"sm","icon-only":"","icon-name":"chevron","aria-label":"Назад к списку",onClick:e[3]||(e[3]=s=>W.value=!1)})),l("div",null,[l("div",zl,[l("h3",null,"Заявка #"+n(be(p.value.publicId)),1),i(Se,{variant:f(He)[p.value.stateCode]??"muted"},{default:r(()=>[_(n(f(D)[p.value.stateCode]??p.value.stateCode),1)]),_:1},8,["variant"]),i(cl,{variant:"brand"},{default:r(()=>[_(n(f(ye)[p.value.typeCode]??p.value.typeCode),1)]),_:1})]),l("span",jl,n(p.value.publicId),1)])])]),q.value?(t(),o("div",Ol,[l("div",Pl,[e[35]||(e[35]=l("span",{class:"aq-muted"},"Перевести в:",-1)),(X=(u=k.value)==null?void 0:u.nextStates)!=null&&X.length?(t(!0),o(I,{key:0},L(k.value.nextStates,s=>(t(),w(d,{key:s,size:"sm",variant:s==="rejected"?"danger":"primary",loading:ie.value===s,onClick:K=>tl(s)},{default:r(()=>[_(n(f(D)[s]??s),1),f(wl).has(s)?(t(),o("span",Gl," -> 1С")):m("",!0)]),_:2},1032,["variant","loading","onClick"]))),128)):(t(),o("span",Fl,"терминальное состояние"))]),(Te=(Ee=k.value)==null?void 0:Ee.nextStates)!=null&&Te.length?(t(),w(ee,{key:0,modelValue:Q.value,"onUpdate:modelValue":e[4]||(e[4]=s=>Q.value=s),placeholder:"Комментарий к переходу (необязательно)","hide-details":"",density:"compact",class:"cl__comment"},null,8,["modelValue"])):m("",!0)])):m("",!0),l("div",Jl,[l("button",{class:E(["aq-tab",{"aq-tab--active":g.value==="overview"}]),onClick:e[5]||(e[5]=s=>g.value="overview")},"Обзор",2),l("button",{class:E(["aq-tab",{"aq-tab--active":g.value==="items"}]),onClick:e[6]||(e[6]=s=>g.value="items")},[e[36]||(e[36]=_(" Позиции ",-1)),l("span",Kl,n((($e=(Ae=k.value)==null?void 0:Ae.items)==null?void 0:$e.length)??0),1)],2),l("button",{class:E(["aq-tab",{"aq-tab--active":g.value==="warranty"}]),onClick:e[7]||(e[7]=s=>g.value="warranty")},"Гарантия",2),l("button",{class:E(["aq-tab",{"aq-tab--active":g.value==="files"}]),onClick:e[8]||(e[8]=s=>g.value="files")},[e[37]||(e[37]=_(" Вложения ",-1)),l("span",Hl,n($.value.length),1)],2),l("button",{class:E(["aq-tab",{"aq-tab--active":g.value==="log"}]),onClick:e[9]||(e[9]=s=>g.value="log")},[e[38]||(e[38]=_(" Журнал ",-1)),l("span",Wl,n(((Le=(Ue=k.value)==null?void 0:Ue.logs)==null?void 0:Le.length)??0),1)],2)]),l("div",Yl,[g.value==="overview"?(t(),o("div",Ql,[l("div",Xl,[e[39]||(e[39]=l("small",null,"Тип",-1)),l("b",null,n(f(ye)[p.value.typeCode]??p.value.typeCode),1)]),l("div",Zl,[e[40]||(e[40]=l("small",null,"Статус",-1)),l("b",null,n(f(D)[p.value.stateCode]??p.value.stateCode),1)]),l("div",ea,[e[41]||(e[41]=l("small",null,"Компания",-1)),l("b",null,n(p.value.companyTitle||"—"),1)]),l("div",la,[e[42]||(e[42]=l("small",null,"Автор",-1)),l("b",null,n(p.value.userEmail||"—"),1)]),l("div",aa,[e[43]||(e[43]=l("small",null,"Создана",-1)),l("b",null,n(f(Oe)(p.value.createdAt)),1)]),l("div",ta,[e[44]||(e[44]=l("small",null,"Резерв 1С",-1)),l("b",null,n(p.value.reserveNum||p.value.reserveStatus||"—"),1)]),ae.value&&v.value?(t(),o(I,{key:0},[l("div",sa,[e[45]||(e[45]=l("small",null,"Оборудование",-1)),l("b",null,n(v.value.reclamation.unit_title||v.value.reclamation.unit_sku||"—"),1)]),l("div",na,[e[46]||(e[46]=l("small",null,"Артик
1ул",-1)),l("b",oa,n(v.value.reclamation.unit_sku||"—"),1)]),v.value.reclamation.unit_serial?(t(),o("div",ia,[e[47]||(e[47]=l("small",null,"Серийный номер",-1)),l("b",ua,n(v.value.reclamation.unit_serial),1)])):m("",!0),l("div",da,[e[48]||(e[48]=l("small",null,"Вид",-1)),l("b",null,n(f(ql)[v.value.reclamation.kind]??"—"),1)]),v.value.reclamation.seller?(t(),o("div",ra,[e[49]||(e[49]=l("small",null,"Продавец",-1)),l("b",null,n(v.value.reclamation.seller),1)])):m("",!0),v.value.reclamation.sell_date_unix?(t(),o("div",va,[e[50]||(e[50]=l("small",null,"Дата продажи",-1)),l("b",null,n(f(Cl)(v.value.reclamation.sell_date_unix)),1)])):m("",!0),v.value.reclamation.buyer_phone?(t(),o("div",ca,[e[51]||(e[51]=l("small",null,"Телефон покупателя",-1)),l("b",null,n(v.value.reclamation.buyer_phone),1)])):m("",!0),l("div",ma,[e[52]||(e[52]=l("small",null,"Диагностика",-1)),l("b",null,n(f(xl)[v.value.reclamation.diagnostic_type]??"—"),1)]),we.value?(t(),o("div",_a,[e[53]||(e[53]=l("small",null,"Категория ремонта",-1)),l("b",null,n(we.value),1)])):m("",!0),v.value.reclamation.diagnostic_type==="by_manufacturer"?(t(),o("div",pa,[e[54]||(e[54]=l("small",null,"Доставка",-1)),l("b",null,n(f(Il)[v.value.reclamation.delivery_by]??"—"),1)])):m("",!0),v.value.reclamation.delivery_name?(t(),o("div",ya,[e[55]||(e[55]=l("small",null,"Транспортная компания",-1)),l("b",null,n(v.value.reclamation.delivery_name),1)])):m("",!0),v.value.reclamation.delivery_track?(t(),o("div",fa,[e[56]||(e[56]=l("small",null,"Трек-номер",-1)),l("b",ba,n(v.value.reclamation.delivery_track),1)])):m("",!0),v.value.reclamation.problem_description?(t(),o("div",ka,[e[57]||(e[57]=l("small",null,"Заявленная неисправность",-1)),l("b",ga,n(v.value.reclamation.problem_description),1)])):m("",!0),v.value.reclamation.quality_check_result?(t(),o("div",Ca,[e[58]||(e[58]=l("small",null,"Результат проверки качества",-1)),l("b",wa,n(v.value.reclamation.quality_check_result),1)])):m("",!0),v.value.reclamation.master_conclusion?(t(),o("div",Va,[e[59]||(e[59]=l("small",null,"Заключение мастера АСЦ",-1)),l("b",qa,n(v.value.reclamation.master_conclusion),1)])):m("",!0),v.value.data.decline_message?(t(),o("div",xa,[e[60]||(e[60]=l("small",null,"Причина отказа",-1)),l("b",Ia,n(v.value.data.decline_message),1)])):m("",!0),Ve.value||qe.value?(t(),o("div",Sa,[Ve.value?(t(),w(d,{key:0,size:"sm",variant:"default","icon-name":"doc",loading:N.value==="act",disabled:N.value!=="",onClick:e[10]||(e[10]=s=>xe("act"))},{default:r(()=>[...e[61]||(e[61]=[_(" Акт приёма в ремонт ",-1)])]),_:1},8,["loading","disabled"])):m("",!0),qe.value?(t(),w(d,{key:1,size:"sm",variant:"default","icon-name":"download",loading:N.value==="invoice",disabled:N.value!=="",onClick:e[11]||(e[11]=s=>xe("invoice"))},{default:r(()=>[...e[62]||(e[62]=[_(" Скачать счёт ",-1)])]),_:1},8,["loading","disabled"])):m("",!0)])):m("",!0)],64)):m("",!0),p.value.dataJson&&p.value.dataJson!=="null"?(t(),o("details",ha,[e[63]||(e[63]=l("summary",null,"Сырые данные формы (data JSON)",-1)),l("pre",Ea,n(p.value.dataJson),1)])):m("",!0)])):g.value==="items"?(t(),o("div",Ta,[l("div",Aa,[l("span",$a,"Позиции заявки · итог "+n(f(me)(dl.value)),1),q.value?(t(),w(d,{key:0,size:"sm","icon-name":"plus",onClick:nl},{default:r(()=>[...e[64]||(e[64]=[_("Добавить",-1)])]),_:1})):m("",!0)]),(Ne=(Be=k.value)==null?void 0:Be.items)!=null&&Ne.length?(t(),o("div",Ua,[l("table",La,[e[65]||(e[65]=l("thead",null,[l("tr",null,[l("th",null,"SKU"),l("th",{class:"hide-sm"},"Номенклатура"),l("th",{class:"ta-r"},"Кол-во"),l("th",{class:"ta-r"},"Цена"),l("th",{class:"ta-r"})])],-1)),l("tbody",null,[(t(!0),o(I,null,L(k.value.items,s=>(t(),o("tr",{key:String(s.id)},[l("td",Ba,n(s.sku||"—"),1),l("td",Na,n(s.unitTitle||"—"),1),l("td",Ra,n(s.qty),1),l("td",Da,n(f(me)(s.priceMinor)),1),q.value?(t(),o("td",Ma,[i(d,{size:"sm",variant:"ghost","icon-only":"","icon-name":"edit","aria-label":"Изменить",onClick:K=>ol(s.id,s.sku,s.qty,s.priceMinor)},null,8,["onClick"]),i(d,{size:"sm",variant:"ghost","icon-only":"","icon-name":"trash","aria-label":"Удалить",onClick:K=>ul(s.id)},null,8,["onClick"])])):m("",!0)]))),128))])])])):(t(),w(J,{key:0,icon:"box",title:"Позиций нет",hint:"Добавьте товары заявки по SKU - количество и цена за единицу."}))])):g.value==="warranty"?(t(),o("div",za,[q.value&&((De=(Re=k.value)==null?void 0:Re.claim)==null?void 0:De.stateCode)==="in_progress"?(t(),o("div",ja,[e[69]||(e[69]=l("div",{class:"aq-muted",style:{"font-size":"13px","margin-bottom":"10px"}}," Заявка в работе - примите решение по гарантии (двигает автомат; причина/сообщение - из поля ниже): ",-1)),l("div",Oa,[i(d,{variant:"primary","icon-name":"check",loading:F.value==="confirm",onClick:e[12]||(e[12]=s=>ce("confirm"))},{default:r(()=>[...e[66]||(e[66]=[_(" Гарантия - в резерв ",-1)])]),_:1},8,["loading"]),i(d,{variant:"default",loading:F.value==="no_warranty",onClick:e[13]||(e[13]=s=>ce("no_warranty"))},{default:r(()=>[...e[67]||(e[67]=[_(" Не гарантия - согласование ",-1)])]),_:1},8,["loading"]),i(d,{variant:"ghost","icon-name":"close",loading:F.value==="decline",onClick:e[14]||(e[14]=s=>ce("decline"))},{default:r(()=>[...e[68]||(e[68]=[_(" Отклонить ",-1)])]),_:1},8,["loading"])])])):m("",!0),l("div",Pa,[l("label",Ga,[i(pe,{modelValue:V.value.confirmed,"onUpdate:modelValue":e[15]||(e[15]=s=>V.value.confirmed=s)},null,8,["modelValue"]),e[70]||(e[70]=_("Гарантия подтверждена",-1))]),l("label",Fa,[i(pe,{modelValue:V.value.declined,"onUpdate:modelValue":e[16]||(e[16]=s=>V.value.declined=s)}
1,null,8,["modelValue"]),e[71]||(e[71]=_("В гарантии отказано",-1))]),l("label",Ja,[i(pe,{modelValue:V.value.userAgrees,"onUpdate:modelValue":e[17]||(e[17]=s=>V.value.userAgrees=s)},null,8,["modelValue"]),e[72]||(e[72]=_("Клиент согласен",-1))])]),i(Ke,{modelValue:V.value.message,"onUpdate:modelValue":e[18]||(e[18]=s=>V.value.message=s),label:"Комментарий по гарантии",rows:"3"},null,8,["modelValue"]),q.value?(t(),o("div",Ka,[i(d,{variant:"primary","icon-name":"check",loading:ve.value,onClick:vl},{default:r(()=>[...e[73]||(e[73]=[_(" Сохранить решение ",-1)])]),_:1},8,["loading"])])):m("",!0)])):g.value==="files"?(t(),o("div",Ha,[$.value.length?(t(),o(I,{key:1},[Ce.value.length?(t(),o("div",Wa,[(t(!0),o(I,null,L(Ce.value,s=>(t(),o("button",{key:s.filePublicId,type:"button",class:"cl__photo",onClick:K=>U.value=s},[l("img",{src:s.downloadUrl,alt:s.name},null,8,Qa)],8,Ya))),128))])):m("",!0),te.value?(t(),o("a",{key:1,href:te.value.downloadUrl,target:"_blank",rel:"noopener",class:"cl__doc"},[i(ml,{name:"doc",size:16}),_(" Квитанция ТК: "+n(te.value.name),1)],8,Xa)):m("",!0)],64)):(t(),w(J,{key:0,icon:"image",title:"Вложений нет",hint:"Фото изделия и квитанции появляются здесь после подачи заявки клиентом."}))])):(t(),o("div",Za,[q.value?(t(),o("div",et,[i(Ke,{modelValue:P.value,"onUpdate:modelValue":e[19]||(e[19]=s=>P.value=s),placeholder:"Ответ клиенту или заметка в журнал...",rows:"2","auto-grow":"","hide-details":"",density:"comfortable"},null,8,["modelValue"]),i(d,{variant:"default","icon-name":"check",loading:se.value,disabled:!P.value.trim(),onClick:Ze},{default:r(()=>[...e[74]||(e[74]=[_(" Отправить ",-1)])]),_:1},8,["loading","disabled"])])):m("",!0),(ze=(Me=k.value)==null?void 0:Me.logs)!=null&&ze.length?(t(),o("ol",lt,[(t(!0),o(I,null,L(k.value.logs,(s,K)=>(t(),o("li",{key:K,class:"cl__event"},[e[75]||(e[75]=l("span",{class:"cl__dot"},null,-1)),l("div",null,[l("div",at,n(s.message),1),l("div",tt,n(f(Oe)(s.createdAt)),1)])]))),128))])):(t(),w(J,{key:1,icon:"orders",title:"Журнал пуст",hint:"Переходы и события заявки появятся здесь."}))]))])],64)):(t(),w(J,{key:1,icon:"inbox",title:"Выберите заявку",hint:"Слева - список заявок. Выберите заявку, чтобы вести её жизненный цикл."}))]}),_:1})],2),i(Z,{modelValue:G.value,"onUpdate:modelValue":e[22]||(e[22]=u=>G.value=u),"max-width":"460"},{default:r(()=>[i(_e,null,{default:r(()=>[i(Pe,{class:"aq-dialog-title"},{default:r(()=>[...e[76]||(e[76]=[_("Новая заявка",-1)])]),_:1}),i(Ge,null,{default:r(()=>[i(Je,{modelValue:de.value,"onUpdate:modelValue":e[20]||(e[20]=u=>de.value=u),items:[{value:"order",label:"Заказ"},{value:"reclamation",label:"Рекламация"}],"item-title":"label","item-value":"value",label:"Тип заявки"},null,8,["modelValue"])]),_:1}),i(Fe,{class:"aq-dialog-actions"},{default:r(()=>[i(d,{variant:"ghost",onClick:e[21]||(e[21]=u=>G.value=!1)},{default:r(()=>[...e[77]||(e[77]=[_("Отмена",-1)])]),_:1}),i(d,{variant:"primary","icon-name":"check",loading:ue.value,onClick:sl},{default:r(()=>[...e[78]||(e[78]=[_("Создать",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),i(Z,{modelValue:R.value,"onUpdate:modelValue":e[27]||(e[27]=u=>R.value=u),"max-width":"460"},{default:r(()=>[i(_e,null,{default:r(()=>[i(Pe,{class:"aq-dialog-title"},{default:r(()=>[_(n(x.value.id?"Позиция":"Новая позиция"),1)]),_:1}),i(Ge,null,{default:r(()=>[l("div",st,[i(ee,{modelValue:x.value.sku,"onUpdate:modelValue":e[23]||(e[23]=u=>x.value.sku=u),label:"SKU",class:"span-2"},null,8,["modelValue"]),i(ee,{modelValue:x.value.qty,"onUpdate:modelValue":e[24]||(e[24]=u=>x.value.qty=u),label:"Количество",type:"number",min:"0",step:"0.001"},null,8,["modelValue"]),i(ee,{modelValue:x.value.priceRub,"onUpdate:modelValue":e[25]||(e[25]=u=>x.value.priceRub=u),modelModifiers:{number:!0},label:"Цена за ед., ₽",type:"number"},null,8,["modelValue"])])]),_:1}),i(Fe,{class:"aq-dialog-actions"},{default:r(()=>[i(d,{variant:"ghost",onClick:e[26]||(e[26]=u=>R.value=!1)},{default:r(()=>[...e[79]||(e[79]=[_("Отмена",-1)])]),_:1}),i(d,{variant:"primary","icon-name":"check",loading:re.value,onClick:il},{default:r(()=>[...e[80]||(e[80]=[_("Сохранить",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),i(Z,{"model-value":!!U.value,"max-width":"900","onUpdate:modelValue":e[29]||(e[29]=u=>U.value=null)},{default:r(()=>[l("div",{class:"cl__lb",onClick:e[28]||(e[28]=u=>U.value=null)},[U.value?(t(),o("img",{key:0,src:U.value.downloadUrl,alt:U.value.name},null,8,nt)):m("",!0)])]),_:1},8,["model-value"]),i(Z,{modelValue:Y.value,"onUpdate:modelValue":e[31]||(e[31]=u=>Y.value=u),"max-width":"820",scrollable:""},{default:r(()=>[i(_e,{class:"cl__act"},{default:r(()=>[l("div",ot,[l("div",it,n(oe.value),1),l("div",ut,[i(d,{variant:"ghost",size:"sm","icon-name":"download",onClick:al},{default:r(()=>[...e[81]||(e[81]=[_("В новой вкладке",-1)])]),_:1}),i(d,{variant:"ghost",size:"sm","icon-only":"","icon-name":"close","aria-label":"Закрыть",onClick:e[30]||(e[30]=u
1=>Y.value=!1)})])]),l("iframe",{srcdoc:ne.value,class:"cl__act-frame",title:oe.value},null,8,dt)]),_:1})]),_:1},8,["modelValue"])])}}}),Vt=kl(rt,[["__scopeId","data-v-a890d6ed"]]);export{Vt as default};

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.