1import{D as I,A as V,B as $,C as L,o as a,e as n,E as e,H as d,M as g,J as r,g as c,F as h,i as k,R as N,d as x,_ as H,K as E,z as b,y,G as F}from"./vendor-vue-Di4RTkPk.js";import{u as P}from"./adminIntegrations-Dqz58Z0m.js";import{u as T}from"./admin-C1P30u7N.js";import{b as j,_ as z}from"./index-BxMp0e3-.js";import"./vendor-map-UnOmKGRd.js";import"./vendor-DvlYjsnA.js";const G={class:"page"},J={class:"page-header"},K={key:0,class:"page-title"},q={class:"page-subtitle"},O={key:0,class:"error-banner"},Q={key:1,class:"loading-spinner"},W={key:2,class:"card"},X={class:"table-wrapper"},Y={class:"data-table"},Z={key:0},ee={class:"muted"},se={key:0},te={key:0},oe={key:1,class:"unlinked"},ae=["onClick"],ne={class:"modal-card"},le={class:"modal-title"},re={key:0,class:"error-banner"},ie={class:"form-group"},de=["value"],ue={key:0,class:"form-hint"},ce={class:"modal-actions"},me=["disabled"],_e=I({__name:"CrmAccountAmocrmUsersView",setup(ve){const A=F(),C=E(),l=P(),f=T(),{setHeader:U,clearHeader:M}=j(),m=b(()=>String(A.params.id||"")),v=b(()=>l.accountById.get(m.value)||null);V(async()=>{U({title:"ÐенеджеÑÑ AmoCRM"}),l.accounts.length||await l.loadAccounts(),m.value&&l.loadAmocrmUsers(m.value),f.loadAllUsers()}),$(()=>M()),L(m,o=>{o&&l.loadAmocrmUsers(o)});function _(o){return[o.name,o.surname].filter(Boolean).join(" ")||o.email}const R=b(()=>[...f.users].sort((o,s)=>_(o).localeCompare(_(s),"ru")));function w(o){const s=f.users.find(t=>t.id===o);return s?_(s):o}function S(o){if(!o)return"â";const s=new Date(o);return isNaN(s.getTime())?"â":s.toLocaleString("ru-RU")}const i=y(null),u=y(""),p=y("");function B(o){i.value=o,u.value=o.platform_user_id,p.value=""}async function D(){if(!(!i.value||!u.value))try{await l.setAmocrmUserPlatformUser(m.value,i.value.id,u.value),i.value=null}catch{p.value=l.error||"Ðе ÑдалоÑÑ Ð¿ÑивÑзаÑÑ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑа"}}return(o,s)=>(a(),n("div",G,[e("div",J,[e("button",{class:"btn btn-secondary btn-sm",onClick:s[0]||(s[0]=t=>d(C).push("/admin/integrations/crm-accounts"))}," â Ð ÑпиÑÐºÑ Ð°ÐºÐºÐ°ÑнÑов "),v.value?(a(),n("h2",K,[g(r(v.value.display_name||v.value.subdomain)+" ",1),e("span",q,"/ "+r(v.value.subdomain),1)])):c("",!0)]),s[8]||(s[8]=e("div",{class:"info-block"}," ÐдеÑÑ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑÑ AmoCRM, коÑоÑÑе Ñ
оÑÑ Ñаз оÑкÑÑвали Ð½Ð°Ñ Ð²Ð¸Ð´Ð¶ÐµÑ Ð² каÑÑоÑке Ñделки. ÐÑи пеÑвом оÑкÑÑÑии они пÑивÑзÑваÑÑÑÑ Ðº ÑоÑÑÑÐ´Ð½Ð¸ÐºÑ Ð°Ð²ÑомаÑиÑеÑки по email; еÑли email в AmoCRM и Ñ Ð½Ð°Ñ ÑазнÑй â вÑбеÑиÑе ÑоÑÑÑдника вÑÑÑнÑÑ. Ð ÑÑнÑÑ Ð¿ÑивÑÐ·ÐºÑ Ð²Ð¸Ð´Ð¶ÐµÑ Ð¿Ð¾Ñом не пеÑезапиÑеÑ, и Ñделки ÑÑого менеджеÑа Ñами попадÑÑ Ð½Ð° вÑбÑанного ÑоÑÑÑдника. ",-1)),d(l).error&&!i.value?(a(),n("div",O,r(d(l).error),1)):c("",!0),d(l).loading&&!d(l).amocrmUsers.length?(a(),n("div",Q,"ÐагÑÑзка...")):(a(),n("div",W,[e("div",X,[e("table",Y,[s[5]||(s[5]=e("thead",null,[e("tr",null,[e("th",null,"ÐÐµÐ½ÐµÐ´Ð¶ÐµÑ AmoCRM"),e("th",null,"Ðогин в AmoCRM"),e("th",null,"СоÑÑÑдник Ñ Ð½Ð°Ñ"),e("th",null,"ÐоÑледний визиÑ"),e("th")])],-1)),e("tbody",null,[d(l).amocrmUsers.length===0?(a(),n("tr",Z,[...s[4]||(s[4]=[e("td",{colspan:"5",class:"empty-cell"}," Ðока никого â Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ Ð¿Ð¾ÑвиÑÑÑ Ð·Ð´ÐµÑÑ, когда оÑкÑÐ¾ÐµÑ Ð²Ð¸Ð´Ð¶ÐµÑ Ð² AmoCRM. ",-1)])])):c("",!0),(a(!0),n(h,null,k(d(l).amocrmUsers,t=>(a(),n("tr",{key:t.id},[e("td",null,[e("div",null,r(t.display_name||"â"),1),e("div",ee,[g(" ID "+r(t.amocrm_user_id),1),t.is_admin?(a(),n("span",se," · админ AmoCRM")):c("",!0)])]),e("td",null,r(t.login||"â"),1),e("td",null,[t.platform_user_id?(a(),n("span",te,r(w(t.platform_user_id
1)),1)):(a(),n("span",oe,"не пÑивÑзан"))]),e("td",null,r(S(t.last_seen_at)),1),e("td",null,[e("button",{class:"btn btn-secondary btn-sm",onClick:pe=>B(t)},r(t.platform_user_id?"ÐзмениÑÑ":"ÐÑивÑзаÑÑ"),9,ae)])]))),128))])])])])),i.value?(a(),n("div",{key:3,class:"modal-overlay",onClick:s[3]||(s[3]=N(t=>i.value=null,["self"]))},[e("div",ne,[e("h3",le,r(i.value.display_name||`ÐÐµÐ½ÐµÐ´Ð¶ÐµÑ ${i.value.amocrm_user_id}`),1),p.value?(a(),n("div",re,r(p.value),1)):c("",!0),e("div",ie,[s[7]||(s[7]=e("label",null,"СоÑÑÑдник плаÑÑоÑмÑ",-1)),x(e("select",{"onUpdate:modelValue":s[1]||(s[1]=t=>u.value=t),class:"form-control"},[s[6]||(s[6]=e("option",{value:"",disabled:""},"ÐÑбеÑиÑе...",-1)),(a(!0),n(h,null,k(R.value,t=>(a(),n("option",{key:t.id,value:t.id},r(_(t))+r(t.email&&_(t)!==t.email?` â ${t.email}`:""),9,de))),128))],512),[[H,u.value]]),i.value.login?(a(),n("div",ue,"Ðогин в AmoCRM: "+r(i.value.login),1)):c("",!0)]),e("div",ce,[e("button",{class:"btn btn-secondary",onClick:s[2]||(s[2]=t=>i.value=null)},"ÐÑмена"),e("button",{class:"btn btn-primary",disabled:d(l).loading||!u.value||u.value===i.value.platform_user_id,onClick:D},"СоÑ
ÑаниÑÑ",8,me)])])])):c("",!0)]))}}),Ae=z(_e,[["__scopeId","data-v-647103de"]]);export{Ae 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.