1import{r as d,t as f,F as i,j as s,x as y,B as l,C as T,D as K,z as $}from"./index-BSDW1oXO.js";import{A as Q}from"./AppLayout-Cygsc5g6.js";import{T as V}from"./textarea-Dt-aCe2h.js";import{T as ee}from"./TimeTreeRepairProgressPanel-DJIzcqGo.js";import{A as te}from"./arrow-left-BZi9p_2F.js";import{U as se}from"./upload-4z0etFfm.js";import{C as ae}from"./circle-check-CoKTsn8F.js";import{Z as re}from"./zap-D4r2ryjp.js";import{T as ie}from"./badge-C9VVw_VW.js";import"./DriverOfflineQueueContext-BEufZpdi.js";import"./index-kDhvbWGq.js";import"./select--Ol-BrhX.js";import"./chevron-down-BLn-uhAC.js";import"./settings-CGT12rKW.js";import"./wrench-Bpj9hFtT.js";import"./index-Byu38Y_L.js";import"./progress-CzQR2Smy.js";import"./search-D9fK1HFq.js";import"./eye-DF0rd5JS.js";import"./truck-BwipagV7.js";import"./users-DBgza2Az.js";import"./chart-column-B79fz39p.js";import"./chevron-right-DYXrKHZe.js";import"./clock-3-EOigJxhq.js";import"./phone-C9TJVbMn.js";function He(){const[I,j]=d.useState(""),[m,p]=d.useState([]),[N,x]=d.useState(!1),[v,u]=d.useState(!1);f.orders.create.useMutation({onSuccess:()=>{i.success("å·¥å®å»ºç«æå")},onError:e=>{i.error(`建ç«å¤±æ: ${e.message}`)}});const C=f.timetree.importFullHistory.useMutation({onSuccess:e=>{u(!1),i.success(`â
æåå¯å
¥ ${e.imported} çå·¥å®ï¼ï¼å溯 ${e.totalDaysBack} 天ï¼`)},onError:e=>{u(!1),i.error(`å¯å
¥å¤±æ: ${e.message}`)}}),M=async()=>{u(!0);try{await C.mutateAsync({})}catch(e){console.error("å¯å
¥æ·å²è¡ç¨å¤±æ:",e)}},S=e=>{const t=/(?:09\d{8}|0\d{1,2}-?\d{3,4}-?\d{4})/,a=e.match(t);return a?a[0]:void 0},k=e=>{const t=e.replace(/09\d{8}|0\d{1,2}-?\d{3,4}-?\d{4}/g,"").replace(/\d{1,2}:\d{2}/g,"").trim(),a=t.match(/[å°æ¾³é馿¸¯][\w\d\-èè¡è·¯å··å¼éåå¸ç¸£é®éæ]+/);return a?a[0]:t.substring(0,50)},w=e=>{let t=e.match(/(?:å§å|客æ¶|è¯çµ¡äºº)[:ï¼]\s*([\u4e00-\u9fff]{2,4})/);if(t||(t=e.match(/(?:^|\s)([\u4e00-\u9fff]{2,4})(?:\s|$|[0-9]|[a-zA-Z])/),t))return t[1]},H=e=>{let t=e.match(/(\d{4}[-/]\d{1,2}[-/]\d{1,2})/);if(t)return t[1].replace(/\//g,"-");if(t=e.match(/(\d{1,2})[-/](\d{1,2})/),t&&!e.match(/\d{4}/)){const r=new Date().getFullYear(),c=t[1].padStart(2,"0"),n=t[2].padStart(2,"0");return`${r}-${c}-${n}`}},h=(e,t)=>{let a=parseInt(e);const r=t.toUpperCase().trim();return r==="PM"||r==="P.M."?a!==12&&(a+=12):(r==="AM"||r==="A.M.")&&a===12&&(a=0),a.toString().padStart(2,"0")},A=e=>{let t=e.match(/(\d{1,2}):(\d{2})\s*(AM|PM|am|pm)\s*[-~]\s*(\d{1,2}):(\d{2})\s*(AM|PM|am|pm)/i);if(t){const a=h(t[1],t[3]),r=t[2],c=h(t[4],t[6]),n=t[5];return`${a}:${r}-${c}:${n}`}if(t=e.match(/(\d{1,2}):(\d{2})\s*(AM|PM|am|pm)/i),t){const a=h(t[1],t[3]),r=t[2];return`${a}:${r}`}if(t=e.match(/(\d{1,2}):(\d{2})\s*[-~]\s*(\d{1,2}):(\d{2})/),t){const a=t[1].padStart(2,"0"),r=t[2],c=t[3].padStart(2,"0"),n=t[4];return`${a}:${r}-${c}:${n}`}if(t=e.match(/(\d{1,2}):(\d{2})/),t){const a=t[1].padStart(2,"0"),r=t[2];return`${a}:${r}`}},D=e=>
1/^åæ¶|^cancel/i.test(e.trim()),P=e=>{const t={細佬:"David",豪:"Ho",æ:"Wang Xu"};for(const[a,r]of Object.entries(t))if(e.includes(a))return r},z=e=>{const t=[];let a=!1,r=!1;return/é»è²|已宿|宿/.test(e)&&(a=!0,t.push("completed")),/æ¾å|ä¼å/.test(e)&&t.push("vacation"),/éè¦é¶ä»¶|è¨è²¨|é¶ä»¶/.test(e)&&(t.push("parts_needed"),r=!0),/è£ä¿®|è£æ½¢/.test(e)&&(t.push("renovation"),r=!0),{tags:t,isCompleted:a,isPending:r}},Y=()=>{const t=I.split(` 2`).filter(a=>a.trim()).map((a,r)=>{const c=D(a),n=S(a),L=k(a),U=w(a),Z=H(a),o=A(a),q=P(a),{tags:_,isCompleted:W,isPending:X}=z(a);let g,b;if(o&&o.includes("-")){const[G,J]=o.split("-");g=G,b=J}else g=o;return{id:`temp-${r}`,title:a.substring(0,50),description:a,phone:n,address:L,customerName:U,scheduledDate:Z,scheduledTime:g,scheduledEndTime:b,technicianName:q,tags:_,isCompleted:W,isPending:X,isCancelled:c,rawText:a}});p(t),i.success(`已解æ ${t.length} çå·¥å®`)},E=f.timetree.quickSync.useMutation({onSuccess:e=>{x(!1),e.importResult?i.success(`â èªååæ¥å®æï¼æåå¯å ¥ ${e.importResult.imported} çå·¥å®ï¼è·³é ${e.importResult.duplicateSkipped} çéè¤`):i.info(`ð å·²åå¾ ${e.events.length} çäºä»¶ï¼å¯æå確èªå¾å¯å ¥`),j(""),p([])},onError:e=>{x(!1),i.error(`忥失æ: ${e.message}`)}}),R=async()=>{x(!0);try{await E.mutateAsync({daysBack:1,daysForward:14,autoImport:!0})}catch(e){console.error("å¿«é忥失æ:",e)}},F=e=>{p(m.filter(t=>t.id!==e))},B=m.filter(e=>e.isCancelled).length,O=m.filter(e=>!e.isCancelled).length;return s.jsx(Q,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:313",title:"TimeTree å¯å ¥",children:s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:314",className:"container mx-auto py-6 px-4 space-y-6",children:[s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:315",className:"flex items-center justify-between",children:[s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:316",className:"flex-1",children:[s.jsx("h1",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:317",className:"text-3xl font-bold mb-2",children:"Timetree å·¥å®å¯å ¥"}),s.jsx("p",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:318",className:"text-muted-foreground",children:"è²¼ä¸ Timetree äºä»¶å §å®¹ï¼ç³»çµ±æèªåèå¥å®¢æ¶å§åãé ç´æ¥ææéãé»è©±è碼ãå°åååæ¶çæ "})]}),s.jsx(y,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:322",href:"/admin",children:s.jsxs(l,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:323",variant:"outline",size:"sm",className:"gap-2 ml-4",children:[s.jsx(te,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:328",size:24}),"è¿å主é "]})})]}),s.jsx(ee,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:334"}),s.jsxs(T,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:337",className:"p-6 space-y-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:338",children:[s.jsx("label",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:339",className:"text-sm font-medium mb-2 block",children:"è²¼ä¸ Timetree å §å®¹"}),s.jsx(V,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:340",placeholder:`æ¯è¡ä¸çå·¥å® 3æ¯æ´æ ¼å¼ï¼ 4- æ£å¸¸å·¥å®ï¼å°å é»è©± æè¿° 5- åæ¶å·¥å®ï¼åæ¶ å°å é»è©± æè¿°`,value:I,onChange:e=>j(e.target.value),className:"min-h-32 font-mono text-sm"})]}),s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:348",className:"flex gap-2 flex-wrap",children:[s.jsxs(l,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:349",onClick:Y,variant:"outline",className:"gap-2",children:[s.jsx(se,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:350",size:16}),"è§£æå·¥å®"]}),s.jsxs(l,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:353",onClick:R,disabled:m.length===0||N,className:"gap-2",children:[s.jsx(ae,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:358",size:16}),N?"å¯å ¥ä¸...":"å¯å ¥å·¥å®"]}),s.jsxs(l,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:361",onClick:M,disabled:v,variant:"outline",className:"gap-2",title:"èªåå¯å ¥ TimeTree éå» 365 天 + 系統éè¡å¤©æ¸çè¡ç¨",children:[s.jsx(K,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:368",size:16}),v?"å¯å ¥ä¸...":"å¯å ¥æ·å²è¡ç¨"]}),s.jsx(y,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:371",href:"/admin/ai-dashboard",children:s.jsxs(l,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:372",variant:"outline",className:"gap-2",children:[s.jsx(re,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:373",size:16}),"AI 婿"]})})]})]}),m.length>0&&s.jsxs(T,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:382",className:"p-6 space-y-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:383",className:"flex justify-between items-center",children:[s.jsx("h2",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:384",className:"text-lg font-semibold",children:"è§£æçµæ"}),s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:385",className:"text-sm text-muted-foreground",children:["ææï¼",O," | åæ¶ï¼",B]})]}),s.jsx("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:390",className:"space-y-2 max-h-96 overflow-y-auto",children:m.map(e=>s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:392",className:`p-3 rounded-lg border flex justify-between items-start gap-2 ${e.isCancelled?"bg-red-50 border-red-200 line-through text-red-700":"bg-blue-50 border-blue-200"}`,children:[s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:400",className:"flex-1 min-w-0",children:[s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:401",className:"flex items-center gap-2 mb-1",children:[e.isCancelled&&s.jsx($,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:403",size:16,className:"text-red-500 flex-shrink-0"}),s.jsx("span",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:405",className:"font-medium truncate",children:e.title})]}),s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:408",className:"text-xs space-y-1",children:[e.customerName&&s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:410",className:"text-muted-foreground",children:["ð¤ ",e.customerName]}),e.technicianName&&s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:413",className:"text-muted-foreground",children:["ð§ ",e.technicianName]}),e.scheduledDate&&s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:416",className:"text-muted-foreground",children:["ð ",e.scheduledDate,e.scheduledTime&&s.jsxs("span",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:419",children:[` ${e.scheduledTime}`,e.scheduledEndTime&&` - ${e.scheduledEndTime}`]})]}),e.address&&s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:427",className:"text-muted-foreground",children:["ð ",e.address]}),e.phone&&s.jsxs("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:430",className:"text-muted-foreground",children:["ð ",e.phone]}
5),e.tags.length>0&&s.jsx("div",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:433",className:"flex flex-wrap gap-1 mt-1",children:e.tags.map(t=>s.jsx("span",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:435",className:`px-2 py-0.5 rounded text-xs font-medium ${e.isCompleted?"bg-black text-white":e.isPending?"bg-yellow-100 text-yellow-800":"bg-blue-100 text-blue-800"}`,children:t==="completed"?"â 宿":t==="vacation"?"æ¾å":t==="parts_needed"?"éé¶ä»¶":t==="renovation"?"è£ä¿®":t},t))})]})]}),s.jsx("button",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:451",onClick:()=>F(e.id),className:"text-red-500 hover:text-red-700 flex-shrink-0",children:s.jsx(ie,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:455",size:16})})]},e.id))})]}),s.jsxs(T,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:464",className:"p-6 bg-blue-50 border-blue-200",children:[s.jsxs("h3",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:465",className:"font-semibold mb-3 flex items-center gap-2",children:[s.jsx($,{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:466",size:16,className:"text-blue-600"}),"使ç¨èªªæ"]}),s.jsxs("ul",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:469",className:"text-sm space-y-2 text-muted-foreground",children:[s.jsx("li",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:470",children:"⢠æ¯è¡è¼¸å
¥ä¸çå·¥å®"}),s.jsx("li",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:471",children:"⢠系統æèªåèå¥å®¢æ¶å§åï¼2-4 å䏿åï¼æãå§åï¼ãã客æ¶ï¼ãå¾çååï¼"}),s.jsx("li",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:472",children:"⢠系統æèªåèå¥é ç´æ¥æï¼YYYY-MM-DDãYYYY/MM/DD æ MM-DD æ ¼å¼ï¼"}),s.jsx("li",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:473",children:"⢠系統æèªåèå¥é ç´æéï¼HH:mm æ H:mm æ ¼å¼ï¼ä¹æ¯æ´ HH:mm-HH:mm æé段ï¼"}),s.jsx("li",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:474",children:"⢠系統æèªåèå¥å°ç£é»è©±è碼ï¼09xxxxxxxx æ 0x-xxxx-xxxx æ ¼å¼ï¼"}),s.jsx("li",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:475",children:"⢠系統æèªåèå¥å°åï¼å
å«å°ååç¨±çææ¬ï¼"}),s.jsx("li",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:476",children:"â¢ å¦æè¡é¦å¯«ãåæ¶ãæãcancelãï¼è©²å·¥å®ææ¨ç¤ºçºåæ¶ï¼ç´
è²ï¼ä¸¦ä¸æè¢«å¯å
¥"}),s.jsx("li",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:477",children:"⢠å¯ä»¥æåç§»é¤ä¸éè¦çå·¥å®"}),s.jsx("li",{"data-loc":"client/src/pages/admin/TimetreeImport.tsx:478",children:"⢠確èªç¡èª¤å¾é»æãå¯å
¥å·¥å®ã宿"})]})]})]})})}export{He 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.