app-service.js 195 KB

1
  1. if("undefined"==typeof Promise||Promise.prototype.finally||(Promise.prototype.finally=function(e){const t=this.constructor;return this.then((a=>t.resolve(e()).then((()=>a))),(a=>t.resolve(e()).then((()=>{throw a}))))}),"undefined"!=typeof uni&&uni&&uni.requireGlobal){const e=uni.requireGlobal();ArrayBuffer=e.ArrayBuffer,Int8Array=e.Int8Array,Uint8Array=e.Uint8Array,Uint8ClampedArray=e.Uint8ClampedArray,Int16Array=e.Int16Array,Uint16Array=e.Uint16Array,Int32Array=e.Int32Array,Uint32Array=e.Uint32Array,Float32Array=e.Float32Array,Float64Array=e.Float64Array,BigInt64Array=e.BigInt64Array,BigUint64Array=e.BigUint64Array}uni.restoreGlobal&&uni.restoreGlobal(Vue,weex,plus,setTimeout,clearTimeout,setInterval,clearInterval),function(e){"use strict";function t(e,t,...a){uni.__log__?uni.__log__(e,t,...a):console[e].apply(console,[...a,t])}function a(e,t){return"string"==typeof e?t:e}const l=(t,a=0)=>(a,l=e.getCurrentInstance())=>{!e.isInSSRComponentSetup&&e.injectHook(t,a,l)},o=l("onShow",3),n=l("onLoad",2),s=l("onReachBottom",2),c=l("onPullDownRefresh",2),r=[{text:"首页",icon:"/static/tabbar/home.svg",activeIcon:"/static/tabbar/home-active.svg",path:"/pages/index/index"},{text:"全部服务",icon:"/static/tabbar/services.svg",activeIcon:"/static/tabbar/services-active.svg",path:"/pages/service/all/index"},{text:"订单",icon:"/static/tabbar/order.svg",activeIcon:"/static/tabbar/order-active.svg",path:"/pages/order/list/index"},{text:"我的",icon:"/static/tabbar/my.svg",activeIcon:"/static/tabbar/my-active.svg",path:"/pages/my/index"}],i=(e,t)=>{const a=e.__vccOpts||e;for(const[l,o]of t)a[l]=o;return a},d=i({__name:"index",setup(a){const l=e.ref(r||[]),o=e.ref("");e.onMounted((()=>{const e=getCurrentPages();if(e.length>0){const t=e[e.length-1].route;o.value=t.startsWith("/")?t:"/"+t}}));const n=e=>{if(!e||!o.value)return!1;const t=e.startsWith("/")?e:"/"+e;return(o.value.startsWith("/")?o.value:"/"+o.value)===t};return(a,o)=>(e.openBlock(),e.createElementBlock("view",{class:"custom-tabbar"},[e.createElementVNode("view",{class:"tabbar-border"}),e.createElementVNode("view",{class:"tabbar-list"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,((a,l)=>(e.openBlock(),e.createElementBlock("view",{key:l,class:"tabbar-item",onClick:e=>(e=>{const a=e.startsWith("/")?e:"/"+e;n(a)||uni.reLaunch({url:a,fail:e=>{t("error","at components/custom-tabbar/index.vue:72","跳转失败:",e)}})})(a.path)},[e.createElementVNode("image",{class:"tab-icon",src:n(a.path)?a.activeIcon:a.icon,mode:"aspectFit"},null,8,["src"]),e.createElementVNode("view",{class:e.normalizeClass(["tab-text",{"tab-text-active":n(a.path)}])},e.toDisplayString(a.text),3)],8,["onClick"])))),128))])]))}},[["__scopeId","data-v-a8cf1d93"]]),m=i({__name:"index",setup:t=>(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"home-page"},[e.createElementVNode("view",{class:"header-section"},[e.createElementVNode("image",{src:"/static/images/index-header.png",class:"header-bg",mode:"widthFix"})]),e.createElementVNode("view",{class:"notice-section"},[e.createElementVNode("view",{class:"notice-bar"},[e.createElementVNode("image",{src:"/static/images/index-notice.png",class:"notice-icon",mode:"aspectFit"}),e.createElementVNode("text",{class:"notice-text"},"【重要通知】尊敬的用户,由于近期接送需求激增,请各位宠主尽量提前24小时进行服务预约,感谢您的理解与配合!")])]),e.createElementVNode("view",{class:"main-nav-section"},[e.createElementVNode("view",{class:"nav-container"},[e.createElementVNode("view",{class:"nav-card large-card"},[e.createElementVNode("image",{src:"/static/images/pickup-dropoff.png",class:"card-bg",mode:"aspectFill"}),e.createElementVNode("view",{class:"card-info"},[e.createElementVNode("text",{class:"card-title"},"宠物接送"),e.createElementVNode("text",{class:"card-desc"},"支持单操/往返服务")])]),e.createElementVNode("view",{class:"right-stack"},[e.createElementVNode("view",{class:"nav-card small-card"},[e.createElementVNode("image",{src:"/static/images/feed-walk.png",class:"card-bg",mode:"aspectFill"}),e.createElementVNode("view",{class:"card-info"},[e.createElementVNode("text",{class:"card-title"},"上门喂遛"),e.createElementVNode("text",{class:"card-desc"},"每次上门基础费用")])]),e.createElementVNode("view",{class:"nav-card small-card"},[e.createElementVNode("image",{src:"/static/images/laundry-clean.png",class:"card-bg",mode:"aspectFill"}),e.createElementVNode("view",{class:"card-info"},[e.createElementVNode("text",{class:"card-title"},"上门洗护"),e.createElementVNode("text",{class:"card-desc"},"每次上门基础费用")])])])])]),e.createVNode(d)]))},[["__scopeId","data-v-74b5b56e"]]),u=i({__name:"index",props:{title:{type:String,default:""},showBack:{type:Boolean,default:!0},bgColor:{type:String,default:"#ffffff"},color:{type:String,default:"#000000"}},setup(t){const a=e.ref(44);e.onMounted((()=>{const e=uni.getSystemInfoSync();a.value=e.statusBarHeight||44}));const l=()=>{uni.navigateBack()};return(o,n)=>(e.openBlock(),e.createElementBlock("view",{class:"nav-bar",style:e.normalizeStyle({backgroundColor:t.bgColor})},[e.createElementVNode("view",{class:"status-bar",style:e.normalizeStyle({height:a.value+"px"})},null,4),e.createElementVNode("view",{class:"nav-content"},[t.showBack?(e.openBlock(),e.createElementBlock("view",{key:0,class:"left-box",onClick:l},[e.createElementVNode("view",{class:"back-arrow",style:e.normalizeStyle({borderColor:t.color})},null,4)])):e.createCommentVNode("",!0),e.createElementVNode("view",{class:"title-box"},[e.createElementVNode("text",{class:"title-text",style:e.normalizeStyle({color:t.color})},e.toDisplayString(t.title),5)]),e.createElementVNode("view",{class:"right-box"},[e.renderSlot(o.$slots,"right",{},void 0,!0)])])],4))}},[["__scopeId","data-v-ad1d7ee4"]]),v="http://111.228.46.254/api",p={clientid:"fe63fea7be31b0200b496d08bc6b517d","X-Platform-Code":"MfJkMNMW2JKXBuPcbP2rxkD3ynXmReAZZFm4fN7cAGwGJdKCmd"},g=Object.freeze(Object.defineProperty({__proto__:null,BASE_URL:v,DEFAULT_HEADERS:p,TIMEOUT:1e4},Symbol.toStringTag,{value:"Module"})),V=(e={})=>new Promise(((t,a)=>{const l=uni.getStorageSync("token")||"",o=(e.method||"GET").toUpperCase(),n="GET"===o||"DELETE"===o?e.params||e.data||{}:e.data||{};uni.request({url:v+e.url,method:o,data:n,header:{...p,"Content-Type":"application/json",Authorization:l?`Bearer ${l}`:"",...e.header},timeout:1e4,success:e=>{if(200!==e.statusCode)return uni.showToast({title:"网络请求异常",icon:"none"}),a(e);const{code:l,msg:o,data:n,total:s,rows:c}=e.data;200===l?t(void 0!==c?{total:s,rows:c}:n):401===l?(uni.removeStorageSync("token"),uni.reLaunch({url:"/pages/login/index"}),a(e.msg)):(uni.showToast({title:o||"操作失败",icon:"none"}),a(e.msg))},fail:e=>{uni.showToast({title:"网络异常,请稍后重试",icon:"none"}),a(e)}})}));function N(){return V({url:"/service/list/listAll",method:"get"})}const E=i({__name:"index",setup(a){const l=e.ref(""),o=e.ref(0),n=e.ref([]),s=e.ref([]),c=e.computed((()=>{let e=n.value;if(s.value.length>0){const t=new Set(s.value);e=e.map((e=>({...e,categories:e.categories.map((e=>({...e,items:e.items.filter((e=>t.has(e.id)))}))).filter((e=>e.items.length>0))}))).filter((e=>e.categories.some((e=>e.items.length>0))))}const t=l.value.trim().toLowerCase();return t?e.map((e=>({...e,categories:e.categories.map((e=>({...e,items:e.items.filter((e=>e.name.toLowerCase().includes(t)))}))).filter((e=>e.items.length>0))}))).filter((e=>e.categories.some((e=>e.items.length>0)))):e})),r=e.computed((()=>0!==c.value.length&&c.value[o.value]?c.value[o.value].categories:[])),i=async()=>{try{const e=await V({url:"/system/store/listMyServices",method:"get"}),a=(null==e?void 0:e.data)??(null==e?void 0:e.rows)??e??[];s.value=Array.isArray(a)?a.map(String):[],t("log","at pages/service/all/index.vue:99","我的可用服务ID:",s.value)}catch(e){t("error","at pages/service/all/index.vue:101","获取可用服务列表失败,将展示全部服务",e),s.value=[]}};e.onMounted((()=>{(async()=>{try{const[e,a]=await Promise.all([V({url:"/service/classification/listAll",method:"get"}),N()]);t("log","at pages/service/all/index.vue:113","分类数据:",e),t("log","at pages/service/all/index.vue:114","服务数据:",a),n.value=e.map((e=>{const l=a.filter((t=>t.classificationId===e.id));return t("log","at pages/service/all/index.vue:121",`分类 ${e.name} 的服务:`,l),{title:e.name,categories:[{items:l.map((e=>({...e,name:e.name,icon:e.iconUrl,type:e.id})))}]}})),t("log","at pages/service/all/index.vue:136","最终数据结构:",n.value)}catch(e){t("error","at pages/service/all/index.vue:138","加载服务数据失败:",e),uni.showToast({title:"加载失败",icon:"none"})}})(),i()}));return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"all-services-page"},[e.createVNode(u,{title:"全部分类",showBack:!1}),e.createElementVNode("view",{class:"main-content"},[e.createElementVNode("scroll-view",{"scroll-y":"",class:"sidebar"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,((t,a)=>(e.openBlock(),e.createElementBlock("view",{key:a,class:e.normalizeClass(["sidebar-item",{active:o.value===a}]),onClick:e=>o.value=a},[e.createElementVNode("text",null,e.toDisplayString(t.title),1)],10,["onClick"])))),128))]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"content-view"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,((t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"category-section",key:a},[e.createElementVNode("view",{class:"service-grid"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,((t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"service-cell",key:a,onClick:e=>(e=>{e.id?(uni.setStorageSync("currentService",e),uni.navigateTo({url:`/pages/service/detail/index?serviceId=${e.id}`})):uni.showToast({title:e.name+" 功能即将上线",icon:"none"})})(t)},[e.createElementVNode("view",{class:"icon-wrapper"},[e.createElementVNode("image",{src:t.icon,class:"service-icon",mode:"aspectFit"},null,8,["src"])]),e.createElementVNode("text",{class:"service-name"},e.toDisplayString(t.name),1)],8,["onClick"])))),128))])])))),128))])]),e.createVNode(d)]))}},[["__scopeId","data-v-ea494a89"]]),f=[{font_class:"arrow-down",unicode:""},{font_class:"arrow-left",unicode:""},{font_class:"arrow-right",unicode:""},{font_class:"arrow-up",unicode:""},{font_class:"auth",unicode:""},{font_class:"auth-filled",unicode:""},{font_class:"back",unicode:""},{font_class:"bars",unicode:""},{font_class:"calendar",unicode:""},{font_class:"calendar-filled",unicode:""},{font_class:"camera",unicode:""},{font_class:"camera-filled",unicode:""},{font_class:"cart",unicode:""},{font_class:"cart-filled",unicode:""},{font_class:"chat",unicode:""},{font_class:"chat-filled",unicode:""},{font_class:"chatboxes",unicode:""},{font_class:"chatboxes-filled",unicode:""},{font_class:"chatbubble",unicode:""},{font_class:"chatbubble-filled",unicode:""},{font_class:"checkbox",unicode:""},{font_class:"checkbox-filled",unicode:""},{font_class:"checkmarkempty",unicode:""},{font_class:"circle",unicode:""},{font_class:"circle-filled",unicode:""},{font_class:"clear",unicode:""},{font_class:"close",unicode:""},{font_class:"closeempty",unicode:""},{font_class:"cloud-download",unicode:""},{font_class:"cloud-download-filled",unicode:""},{font_class:"cloud-upload",unicode:""},{font_class:"cloud-upload-filled",unicode:""},{font_class:"color",unicode:""},{font_class:"color-filled",unicode:""},{font_class:"compose",unicode:""},{font_class:"contact",unicode:""},{font_class:"contact-filled",unicode:""},{font_class:"down",unicode:""},{font_class:"bottom",unicode:""},{font_class:"download",unicode:""},{font_class:"download-filled",unicode:""},{font_class:"email",unicode:""},{font_class:"email-filled",unicode:""},{font_class:"eye",unicode:""},{font_class:"eye-filled",unicode:""},{font_class:"eye-slash",unicode:""},{font_class:"eye-slash-filled",unicode:""},{font_class:"fire",unicode:""},{font_class:"fire-filled",unicode:""},{font_class:"flag",unicode:""},{font_class:"flag-filled",unicode:""},{font_class:"folder-add",unicode:""},{font_class:"folder-add-filled",unicode:""},{font_class:"font",unicode:""},{font_class:"forward",unicode:""},{font_class:"gear",unicode:""},{font_class:"gear-filled",unicode:""},{font_class:"gift",unicode:""},{font_class:"gift-filled",unicode:""},{font_class:"hand-down",unicode:""},{font_class:"hand-down-filled",unicode:""},{font_class:"hand-up",unicode:""},{font_class:"hand-up-filled",unicode:""},{font_class:"headphones",unicode:""},{font_class:"heart",unicode:""},{font_class:"heart-filled",unicode:""},{font_class:"help",unicode:""},{font_class:"help-filled",unicode:""},{font_class:"home",unicode:""},{font_class:"home-filled",unicode:""},{font_class:"image",unicode:""},{font_class:"image-filled",unicode:""},{font_class:"images",unicode:""},{font_class:"images-filled",unicode:""},{font_class:"info",unicode:""},{font_class:"info-filled",unicode:""},{font_class:"left",unicode:""},{font_class:"link",unicode:""},{font_class:"list",unicode:""},{font_class:"location",unicode:""},{font_class:"location-filled",unicode:""},{font_class:"locked",unicode:""},{font_class:"locked-filled",unicode:""},{font_class:"loop",unicode:""},{font_class:"mail-open",unicode:""},{font_class:"mail-open-filled",unicode:""},{font_class:"map",unicode:""},{font_class:"map-filled",unicode:""},{font_class:"map-pin",unicode:""},{font_class:"map-pin-ellipse",unicode:""},{font_class:"medal",unicode:""},{font_class:"medal-filled",unicode:""},{font_class:"mic",unicode:""},{font_class:"mic-filled",unicode:""},{font_class:"micoff",unicode:""},{font_class:"micoff-filled",unicode:""},{font_class:"minus",unicode:""},{font_class:"minus-filled",unicode:""},{font_class:"more",unicode:""},{font_class:"more-filled",unicode:""},{font_class:"navigate",unicode:""},{font_class:"navigate-filled",unicode:""},{font_class:"notification",unicode:""},{font_class:"notification-filled",unicode:""},{font_class:"paperclip",unicode:""},{font_class:"paperplane",unicode:""},{font_class:"paperplane-filled",unicode:""},{font_class:"person",unicode:""},{font_class:"person-filled",unicode:""},{font_class:"personadd",unicode:""},{font_class:"personadd-filled",unicode:""},{font_class:"personadd-filled-copy",unicode:""},{font_class:"phone",unicode:""},{font_class:"phone-filled",unicode:""},{font_class:"plus",unicode:""},{font_class:"plus-filled",unicode:""},{font_class:"plusempty",unicode:""},{font_class:"pulldown",unicode:""},{font_class:"pyq",unicode:""},{font_class:"qq",unicode:""},{font_class:"redo",unicode:""},{font_class:"redo-filled",unicode:""},{font_class:"refresh",unicode:""},{font_class:"refresh-filled",unicode:""},{font_class:"refreshempty",unicode:""},{font_class:"reload",unicode:""},{font_class:"right",unicode:""},{font_class:"scan",unicode:""},{font_class:"search",unicode:""},{font_class:"settings",unicode:""},{font_class:"settings-filled",unicode:""},{font_class:"shop",unicode:""},{font_class:"shop-filled",unicode:""},{font_class:"smallcircle",unicode:""},{font_class:"smallcircle-filled",unicode:""},{font_class:"sound",unicode:""},{font_class:"sound-filled",unicode:""},{font_class:"spinner-cycle",unicode:""},{font_class:"staff",unicode:""},{font_class:"staff-filled",unicode:""},{font_class:"star",unicode:""},{font_class:"star-filled",unicode:""},{font_class:"starhalf",unicode:""},{font_class:"trash",unicode:""},{font_class:"trash-filled",unicode:""},{font_class:"tune",unicode:""},{font_class:"tune-filled",unicode:""},{font_class:"undo",unicode:""},{font_class:"undo-filled",unicode:""},{font_class:"up",unicode:""},{font_class:"top",unicode:""},{font_class:"upload",unicode:""},{font_class:"upload-filled",unicode:""},{font_class:"videocam",unicode:""},{font_class:"videocam-filled",unicode:""},{font_class:"vip",unicode:""},{font_class:"vip-filled",unicode:""},{font_class:"wallet",unicode:""},{font_class:"wallet-filled",unicode:""},{font_class:"weibo",unicode:""},{font_class:"weixin",unicode:""}];const w=i({name:"UniIcons",emits:["click"],props:{type:{type:String,default:""},color:{type:String,default:"#333333"},size:{type:[Number,String],default:16},customPrefix:{type:String,default:""},fontFamily:{type:String,default:""}},data:()=>({icons:f}),computed:{unicode(){let e=this.icons.find((e=>e.font_class===this.type));return e?e.unicode:""},iconSize(){return"number"==typeof(e=this.size)||/^[0-9]*$/g.test(e)?e+"px":e;var e},styleObj(){return""!==this.fontFamily?`color: ${this.color}; font-size: ${this.iconSize}; font-family: ${this.fontFamily};`:`color: ${this.color}; font-size: ${this.iconSize};`}},methods:{_onClick(e){this.$emit("click",e)}}},[["render",function(t,a,l,o,n,s){return e.openBlock(),e.createElementBlock("text",{style:e.normalizeStyle(s.styleObj),class:e.normalizeClass(["uni-icons",["uniui-"+l.type,l.customPrefix,l.customPrefix?l.type:""]]),onClick:a[0]||(a[0]=(...e)=>s._onClick&&s._onClick(...e))},[e.renderSlot(t.$slots,"default",{},void 0,!0)],6)}],["__scopeId","data-v-b25a9929"]]),h=[{value:0,label:"待派单",color:"#f56c6c"},{value:1,label:"待接单",color:"#e6a23c"},{value:2,label:"待服务",color:"#49a3ff"},{value:3,label:"服务中",color:"#49a3ff"},{value:4,label:"已完成",color:"#67c23a"},{value:5,label:"已取消",color:"#909399"}];function k(e){return V({url:"/order/subOrder/cancel",method:"put",data:e})}function y(e){return V({url:"/system/areaStation/list",method:"get",params:e})}const x=i({__name:"index",setup(l){const o=e.ref(!1),s=e.ref(-1),c=e.ref(0),r=e.ref(""),i=e.ref({current:1,size:10,total:0}),m=e.ref([{title:"全部订单",value:-1},...h.map((e=>({title:e.label,value:e.value,color:e.color})))]),v=e.ref([{text:"全部类型",value:0}]),p=e.ref([]),g=e.ref([]),E=e.ref({});n((e=>{if(e&&void 0!==e.status){const t=Number(e.status);isNaN(t)||(s.value=t)}})),e.onMounted((()=>{(async()=>{try{const e=await N();if(e&&e.length>0){p.value=e;const t=e.map(((e,t)=>({text:e.name,value:t+1,id:e.id})));v.value=[{text:"全部类型",value:0},...t]}}catch(e){t("error","at pages/order/list/index.vue:200","加载服务类型失败:",e)}})(),(async()=>{try{const e=await y();if(e&&e.data){g.value=e.data;const t={};for(const a of e.data)a&&void 0!==a.id&&null!==a.id&&(t[a.id]=a);E.value=t}}catch(e){t("error","at pages/order/list/index.vue:219","加载区域站点失败:",e)}})(),C()}));const f=e.computed((()=>{const e=v.value.find((e=>e.value===c.value));return e?e.text:"全部类型"})),x=e=>{if(!e||!e.site)return"";const t=E.value[e.site];if(!t)return"";const a=t.parentId?E.value[t.parentId]:void 0;if(!a)return t.name||"";if(0===a.type)return a.name||"";if(1===a.type){const e=a.parentId?E.value[a.parentId]:void 0;return`${(null==e?void 0:e.name)||""}/${a.name||""}`}return a.name||""},b=e=>{const t=Number(e.detail.value);c.value=t,i.value.current=1,C()},B=e.ref([]),C=async()=>{o.value=!0;try{const a=v.value.find((e=>e.value===c.value)),l={pageNum:i.value.current,pageSize:i.value.size,status:-1!==s.value?s.value:void 0,service:a&&a.id?a.id:void 0,content:r.value||void 0},n=await(e=l,V({url:"/order/subOrder/list",method:"get",params:e}));if(t("log","at pages/order/list/index.vue:319","后端返回数据:",n),n){const e=n.rows||[];t("log","at pages/order/list/index.vue:322","rows:",e),B.value=e.map((e=>S(e))),t("log","at pages/order/list/index.vue:324","转换后的orders:",B.value),i.value.total=n.total||0}}catch(a){t("error","at pages/order/list/index.vue:328","加载订单列表失败:",a)}finally{o.value=!1}var e},S=e=>{const t=(a=e.status,h.find((e=>e.value===a)));var a;const l=(e=>{const t=p.value.find((t=>t.id===e));return t?t.name:"未知服务"})(e.service),o=(e=>{const t=null==e?void 0:e.type;return 0===t||"0"===t||1===t||"1"===t?"往返":""})(e),n=(e=>{const t=null==e?void 0:e.type;return 0===t||"0"===t?{label:"接",type:"blue"}:1===t||"1"===t?{label:"送",type:"green"}:2===t||"2"===t?{label:"单程接",type:"blue"}:3===t||"3"===t?{label:"单程送",type:"green"}:null})(e),s=[];return o&&s.push(o),n&&s.push(n.label),{...e,id:e.code||e.id,rawId:e.id,serviceType:l,serviceTags:s,petName:e.petName||"未知",petBreed:e.petBreed||"未知",userName:e.customerName||"未知",address:e.toAddress||e.fromAddress||x(e),shopName:e.storeName||"未知",userPhone:e.contactPhoneNumber||"",bookTime:e.serviceTime||"",createTime:e.createTime||"",statusText:t?t.label:"未知",statusClass:t?`text-${t.color.replace("#","")}`:"text-gray",assigneeName:e.fulfillerName||"",cancelTime:e.cancelTime||""}},_=()=>{i.value.current=1,C()},T=e.ref(!1),D=e.ref(""),I=e.ref(null),M=()=>{T.value=!1},A=async()=>{const e=D.value.trim();if(e)try{uni.showLoading({title:"处理中"}),await k({orderId:I.value.rawId,reason:e}),uni.hideLoading(),uni.showToast({title:"订单已取消",icon:"success"}),T.value=!1,C()}catch(a){uni.hideLoading(),t("error","at pages/order/list/index.vue:404","取消订单失败:",a),uni.showToast({title:"取消失败",icon:"none"})}else uni.showToast({title:"取消原因不能为空",icon:"none"})},P=e=>{uni.navigateTo({url:`/pages/order/detail/index?id=${e.rawId}`})};return(t,l)=>{var n;const c=a(e.resolveDynamicComponent("uni-icons"),w);return e.openBlock(),e.createElementBlock("view",{class:"order-list-page"},[e.createVNode(u,{title:"订单列表",showBack:!1}),e.createElementVNode("view",{class:"sticky-header"},[e.createElementVNode("scroll-view",{"scroll-x":"",class:"tabs-scroll","show-scrollbar":!1},[e.createElementVNode("view",{class:"tabs-row"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(t=>(e.openBlock(),e.createElementBlock("view",{key:t.value,class:e.normalizeClass(["tab-item",{active:s.value===t.value}]),onClick:e=>{return a=t.value,s.value=a,i.value.current=1,void C();var a}},[e.createElementVNode("text",null,e.toDisplayString(t.title),1)],10,["onClick"])))),128))])]),e.createElementVNode("view",{class:"filter-row"},[e.createElementVNode("picker",{range:v.value,"range-key":"text",onChange:b},[e.createElementVNode("view",{class:"dropdown-btn"},[e.createElementVNode("text",null,e.toDisplayString(f.value),1),e.createVNode(c,{type:"bottom",size:"12",color:"#333"})])],40,["range"]),e.createElementVNode("view",{class:"search-wrap"},[e.createVNode(c,{type:"search",size:"14",color:"#999"}),e.withDirectives(e.createElementVNode("input",{class:"search-input","onUpdate:modelValue":l[0]||(l[0]=e=>r.value=e),placeholder:"订单号/商户/宠主/手机号","placeholder-class":"placeholder-style",onConfirm:_},null,544),[[e.vModelText,r.value]])])])]),e.createElementVNode("view",{class:"list-container"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"order-card",key:t.id,onClick:e=>P(t)},[e.createElementVNode("view",{class:"order-head"},[e.createElementVNode("text",{class:"order-no"},e.toDisplayString(t.id),1),e.createElementVNode("text",{class:e.normalizeClass(["status-text",t.statusClass])},e.toDisplayString(t.statusText),3)]),e.createElementVNode("view",{class:"order-body"},[e.createElementVNode("view",{class:"service-row"},[e.createElementVNode("text",{class:"service-name"},e.toDisplayString(t.serviceType),1),t.serviceTags[0]?(e.openBlock(),e.createElementBlock("text",{key:0,class:"service-tag tag-orange"},e.toDisplayString(t.serviceTags[0]),1)):e.createCommentVNode("",!0),"接"===t.serviceTags[1]?(e.openBlock(),e.createElementBlock("text",{key:1,class:"service-tag tag-blue"},"接")):e.createCommentVNode("",!0),"送"===t.serviceTags[1]?(e.openBlock(),e.createElementBlock("text",{key:2,class:"service-tag tag-green"},"送")):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"pet-row"},[e.createElementVNode("view",{class:"pet-avatar-text"},[e.createElementVNode("text",null,e.toDisplayString(t.petName.substring(0,1).toUpperCase()),1)]),e.createElementVNode("view",{class:"pet-desc"},[e.createElementVNode("text",{class:"bold"},e.toDisplayString(t.petName),1),e.createElementVNode("text",{class:"sub"},e.toDisplayString(t.petBreed),1)]),e.createElementVNode("text",{class:"user-desc"},e.toDisplayString(t.userName),1)]),e.createElementVNode("view",{class:"info-list"},[e.createElementVNode("view",{class:"info-item"},[e.createVNode(c,{type:"location",size:"14",color:"#999"}),e.createElementVNode("text",null,e.toDisplayString(t.address),1)]),e.createElementVNode("view",{class:"info-item"},[e.createVNode(c,{type:"shop",size:"14",color:"#999"}),e.createElementVNode("text",null,e.toDisplayString(t.shopName)+" "+e.toDisplayString(t.userPhone),1)]),e.createElementVNode("view",{class:"info-item"},[e.createVNode(c,{type:"calendar",size:"14",color:"#999"}),e.createElementVNode("text",null,"预约: "+e.toDisplayString(t.bookTime),1)])]),e.createElementVNode("view",{class:"time-info-block"},[e.createElementVNode("text",{class:"create-time"},"下单: "+e.toDisplayString(t.createTime),1),e.createElementVNode("view",{class:"assign-info"},[e.createElementVNode("text",{class:"assign-label"},"履约信息:"),t.assigneeName?(e.openBlock(),e.createElementBlock("text",{key:0,class:"assign-name"},e.toDisplayString(t.assigneeName),1)):(e.openBlock(),e.createElementBlock("text",{key:1,class:"assign-none"},"暂未指派"))]),"已取消"===t.statusText&&t.cancelTime?(e.openBlock(),e.createElementBlock("text",{key:0,class:"cancel-time"},"取消: "+e.toDisplayString(t.cancelTime),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("view",{class:"order-foot"},[e.createElementVNode("view",{class:"actions"},["待派单"===t.statusText||"待接单"===t.statusText?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("button",{size:"mini",class:"action-btn btn-cancel",onClick:e.withModifiers((e=>(e=>{I.value=e,D.value="",T.value=!0})(t)),["stop"])},"取消订单",8,["onClick"]),e.createElementVNode("button",{size:"mini",class:"action-btn btn-primary",onClick:e.withModifiers((e=>P(t)),["stop"])},"查看详情",8,["onClick"])],64)):["服务中","待商家确认","已完成"].includes(t.statusText)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[["服务中","已完成"].includes(t.statusText)?(e.openBlock(),e.createElementBlock("button",{key:0,size:"mini",class:"action-btn btn-cancel",onClick:e.withModifiers((e=>(e=>{uni.navigateTo({url:`/pages/my/complaint/submit/index?orderId=${e.rawId}&fulfillerId=${e.fulfiller}&orderCode=${e.id}`})})(t)),["stop"])},"投诉订单",8,["onClick"])):e.createCommentVNode("",!0),e.createElementVNode("button",{size:"mini",class:"action-btn btn-primary",onClick:e.withModifiers((e=>P(t)),["stop"])},"查看详情",8,["onClick"])],64)):(e.openBlock(),e.createElementBlock("button",{key:2,size:"mini",class:"action-btn btn-primary",onClick:e.withModifiers((e=>P(t)),["stop"])},"查看详情",8,["onClick"]))])])],8,["onClick"])))),128)),o.value||0!==B.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-state"},[e.createElementVNode("text",{class:"empty-text"},"暂无相关订单")])),o.value?(e.openBlock(),e.createElementBlock("view",{key:1,class:"loading-state"},[e.createElementVNode("text",{class:"loading-text"},"加载中...")])):e.createCommentVNode("",!0)]),T.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"custom-modal"},[e.createElementVNode("view",{class:"modal-mask",onClick:M}),e.createElementVNode("view",{class:"modal-content"},[e.createElementVNode("view",{class:"modal-title"},"提示"),e.createElementVNode("view",{class:"modal-body"},[e.createElementVNode("view",{style:{"margin-bottom":"20rpx","font-size":"28rpx",color:"#666"}},"确定要取消订单 ["+e.toDisplayString(null==(n=I.value)?void 0:n.id)+"] 吗?",1),e.withDirectives(e.createElementVNode("textarea",{class:"cancel-input","onUpdate:modelValue":l[1]||(l[1]=e=>D.value=e),placeholder:"必填,请输入取消原因","placeholder-class":"ph-color","show-confirm-bar":!1},null,512),[[e.vModelText,D.value]])]),e.createElementVNode("view",{class:"modal-footer"},[e.createElementVNode("view",{class:"modal-btn btn-cancel",onClick:M},"取消"),e.createElementVNode("view",{class:"modal-btn btn-confirm",onClick:A},"确定")])])])):e.createCommentVNode("",!0),e.createVNode(d)])}}},[["__scopeId","data-v-2e54f322"]]),b=function(e,t,a){let l=Promise.resolve();return l.then((()=>e())).catch((e=>{const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}))};function B(){return V({url:"/system/user/getInfo",method:"get"})}const C={0:"/static/images/my-pendingdispatch.png",1:"/static/images/my-pendingaccept.png",2:"/static/images/my-inservice.png",3:"/static/images/my-pendingservice.png",4:"/static/images/my-finished.png",5:"/static/images/my-cancel.png"};const S=i({components:{customTabbar:d},data:()=>({userInfo:null,showServicePopup:!1,debugTapCount:0,customerSetting:{wechatAccount:"",phoneNumber:"",qrCode:"",qrCodeUrl:"",enterpriseWechatLink:""},orderItems:h.map((e=>({key:e.value,label:e.label,icon:C[e.value]||"/static/images/my-pendingdispatch.png"}))),menuItems:[{title:"宠物档案",icon:"/static/images/my-pet.png",path:"/pages/my/pet/list/index"},{title:"用户管理",icon:"/static/images/my-customer.png",path:"/pages/my/user/list/index"},{title:"投诉管理",icon:"/static/images/my-complaint.png",path:"/pages/my/complaint/list/index"},{title:"服务费统计",icon:"/static/images/my-fee.png",path:"/pages/my/fee/statistics/index"},{title:"客服中心",icon:"/static/images/my-customerservice.png",path:""},{title:"协议中心",icon:"/static/images/my-agreement.png",path:"/pages/my/agreement/list/index"},{title:"系统设置",icon:"/static/images/my-systemsetting.png",path:"/pages/my/settings/index"}]}),onShow(){this.fetchUserInfo(),this.fetchCustomerSetting()},methods:{async fetchUserInfo(){if(uni.getStorageSync("token"))try{const e=await B();e&&e.user&&(this.userInfo=e.user)}catch(e){t("error","at pages/my/index.vue:167","获取用户信息失败",e)}else this.userInfo=null},async fetchCustomerSetting(){try{const t=await(e=2,V({url:"/system/customerServiceSetting/"+e,method:"get"}));t&&Object.assign(this.customerSetting,t)}catch(a){t("error","at pages/my/index.vue:182","获取客服配置失败",a)}var e},goToLogin(){this.userInfo||uni.navigateTo({url:"/pages/login/index"})},goToOrder(e){"all"===e?uni.reLaunch({url:"/pages/order/list/index"}):uni.reLaunch({url:`/pages/order/list/index?status=${e}`})},goToMenu(e){"客服中心"!==e.title?e.path&&uni.navigateTo({url:e.path}):this.showServicePopup=!0},closeServicePopup(){this.showServicePopup=!1},previewQRCode(){this.customerSetting.qrCodeUrl&&uni.previewImage({urls:[this.customerSetting.qrCodeUrl]})},openOnlineService(){this.customerSetting.enterpriseWechatLink?uni.setClipboardData({data:this.customerSetting.wechatAccount||this.customerSetting.enterpriseWechatLink,success:()=>{uni.showToast({title:"客服账号已复制,请在微信中添加",icon:"none"})}}):uni.showToast({title:"在线客服暂未配置",icon:"none"})},callServicePhone(){const e=String(this.customerSetting.phoneNumber||"").trim();t("log","at pages/my/index.vue:241","=== callServicePhone 触发 ==="),t("log","at pages/my/index.vue:242","phone number:",e),t("log","at pages/my/index.vue:243","makePhoneCall 类型:",typeof uni.makePhoneCall),e?uni.makePhoneCall({phoneNumber:e,success:()=>{t("log","at pages/my/index.vue:250","拨号成功")},fail:e=>{t("error","at pages/my/index.vue:252","拨号失败:",JSON.stringify(e)),uni.showModal({title:"拨号失败",content:"object"==typeof e?JSON.stringify(e):String(e),showCancel:!1})}}):uni.showToast({title:"暂无客服电话",icon:"none"})},onDebugTap(){this.debugTapCount++,this.debugTapCount>=3&&(this.debugTapCount=0,this.showDebugLog())},showDebugLog(){try{const e=JSON.parse(uni.getStorageSync("__debug_logs")||"[]"),t="undefined"!=typeof plus?"yes":"no",a="undefined"!=typeof plus&&plus.device&&plus.device.dial?"yes":"no",l=`plus:${t} | plus.device.dial:${a} | window:${"undefined"!=typeof window?"yes":"no"} | makePhoneCall:${typeof uni.makePhoneCall} | 日志:${e.length}条`,o=e.length>0?e.slice(0,5).map((e=>`${e.t}\n${e.msg}`)).join("\n---\n"):"暂无错误日志";uni.showModal({title:"调试信息",content:`${l}\n\n${o}`,showCancel:!0,cancelText:"清队日志",confirmText:"关闭",success:e=>{e.cancel&&(uni.removeStorageSync("__debug_logs"),uni.showToast({title:"日志已清队",icon:"none"}))}})}catch(e){uni.showModal({title:"读取日志失败",content:e.message||String(e),showCancel:!1})}}}},[["render",function(t,a,l,o,n,s){var c;const r=e.resolveComponent("custom-tabbar");return e.openBlock(),e.createElementBlock("view",{class:"my-page"},[e.createElementVNode("view",{class:"header-bg"},[e.createElementVNode("image",{src:"/static/images/my-header.png",class:"header-img",mode:"widthFix"}),e.createElementVNode("view",{class:"user-block",onClick:a[0]||(a[0]=(...e)=>s.goToLogin&&s.goToLogin(...e)),onLongpress:a[1]||(a[1]=(...e)=>s.onDebugTap&&s.onDebugTap(...e))},[e.createElementVNode("image",{class:"user-avatar",src:(null==(c=n.userInfo)?void 0:c.avatarUrl)||"/static/images/default-avatar.png",mode:"aspectFill"},null,8,["src"]),e.createElementVNode("view",{class:"user-info"},[e.createElementVNode("text",{class:"user-name"},e.toDisplayString(n.userInfo?n.userInfo.nickName:"点击登录"),1),e.createElementVNode("text",{class:"user-desc-text"},e.toDisplayString(n.userInfo?n.userInfo.remark||"这位用户很懒,什么都没写 🐾":"登录后享受更多权益 🐾"),1)]),n.userInfo?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("view",{key:0,class:"css-right-arrow-gold"}))],32)]),e.createElementVNode("view",{class:"cute-card order-wrap"},[e.createElementVNode("view",{class:"card-head"},[e.createElementVNode("text",{class:"card-title"},"我的服务订单"),e.createElementVNode("view",{class:"card-more",onClick:a[2]||(a[2]=e=>s.goToOrder("all"))},[e.createElementVNode("text",null,"查看全部"),e.createElementVNode("view",{class:"css-right-arrow-small"})])]),e.createElementVNode("view",{class:"order-nav"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.orderItems,(t=>(e.openBlock(),e.createElementBlock("view",{class:"nav-item",key:t.key,onClick:e=>s.goToOrder(t.key)},[e.createElementVNode("view",{class:"icon-bulb"},[e.createElementVNode("image",{class:"custom-icon",src:t.icon,mode:"aspectFit"},null,8,["src"])]),e.createElementVNode("text",{class:"nav-label"},e.toDisplayString(t.label),1)],8,["onClick"])))),128))])]),e.createElementVNode("view",{class:"cute-card tool-wrap"},[e.createElementVNode("view",{class:"card-head"},[e.createElementVNode("text",{class:"card-title"},"服务与工具")]),e.createElementVNode("view",{class:"tool-grid"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.menuItems,(t=>(e.openBlock(),e.createElementBlock("view",{class:"tool-item",key:t.path||t.title,onClick:e=>s.goToMenu(t)},[e.createElementVNode("image",{class:"custom-icon tool-icon",src:t.icon,mode:"aspectFit"},null,8,["src"]),e.createElementVNode("text",{class:"tool-text"},e.toDisplayString(t.title),1)],8,["onClick"])))),128))])]),e.createElementVNode("view",{class:"footer-msg"},[e.createElementVNode("text",null,"~ 感谢您的陪伴 ~")]),n.showServicePopup?(e.openBlock(),e.createElementBlock("view",{key:0,class:"service-popup-mask",onClick:a[8]||(a[8]=(...e)=>s.closeServicePopup&&s.closeServicePopup(...e))},[e.createElementVNode("view",{class:"service-popup",onClick:a[7]||(a[7]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"service-header"},[e.createElementVNode("text",{class:"service-title"},"联系客服"),e.createElementVNode("view",{class:"css-close-btn",onClick:a[3]||(a[3]=(...e)=>s.closeServicePopup&&s.closeServicePopup(...e))})]),e.createElementVNode("view",{class:"qr-section"},[e.createElementVNode("text",{class:"qr-title"},"客服二维码"),e.createElementVNode("image",{class:"qr-img",src:n.customerSetting.qrCodeUrl||"/static/images/logo.png",mode:"aspectFit",onClick:a[4]||(a[4]=(...e)=>s.previewQRCode&&s.previewQRCode(...e))},null,8,["src"]),e.createElementVNode("text",{class:"qr-desc"},"点击查看大图")]),e.createElementVNode("view",{class:"service-list"},[e.createElementVNode("view",{class:"service-row"},[e.createElementVNode("view",{class:"service-icon-box online-bg"},[e.createElementVNode("image",{class:"service-icon-img",src:"/static/icon/my/customerservice/online.png",mode:"aspectFit"})]),e.createElementVNode("view",{class:"service-info"},[e.createElementVNode("text",{class:"service-name"},"在线客服"),e.createElementVNode("text",{class:"service-desc"},e.toDisplayString(n.customerSetting.wechatAccount||"企业微信专属客服在线解答"),1)]),e.createElementVNode("view",{class:"call-btn-mini green-btn",onClick:a[5]||(a[5]=(...e)=>s.openOnlineService&&s.openOnlineService(...e))},[e.createElementVNode("text",null,"去咨询")])]),e.createElementVNode("view",{class:"service-row"},[e.createElementVNode("view",{class:"service-icon-box phone-bg"},[e.createElementVNode("image",{class:"service-icon-img",src:"/static/icon/my/customerservice/phone.png",mode:"aspectFit"})]),e.createElementVNode("view",{class:"service-info"},[e.createElementVNode("text",{class:"service-name"},"客服电话"),e.createElementVNode("text",{class:"service-desc"},e.toDisplayString(n.customerSetting.phoneNumber||"暂无电话"),1)]),e.createElementVNode("view",{class:"call-btn-mini orange-btn",onClick:a[6]||(a[6]=(...e)=>s.callServicePhone&&s.callServicePhone(...e))},[e.createElementVNode("text",null,"拨打")])])])])])):e.createCommentVNode("",!0),e.createVNode(r)])}],["__scopeId","data-v-80ba30b2"]]),_=i({__name:"index",props:{visible:{type:Boolean,default:!1},title:{type:String,default:""},content:{type:String,default:""},maskClosable:{type:Boolean,default:!0}},emits:["update:visible","close"],setup(t,{emit:l}){const o=t,n=l,s=()=>{n("update:visible",!1),n("close")},c=()=>{o.maskClosable&&s()};return(l,o)=>{const n=a(e.resolveDynamicComponent("uni-icons"),w);return t.visible?(e.openBlock(),e.createElementBlock("view",{key:0,class:"policy-dialog",onClick:c},[e.createElementVNode("view",{class:"dialog-content",onClick:o[0]||(o[0]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"dialog-header"},[e.createElementVNode("text",{class:"dialog-title"},e.toDisplayString(t.title),1),e.createElementVNode("view",{class:"close-btn",onClick:s},[e.createVNode(n,{type:"closeempty",size:"20",color:"#999"})])]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"dialog-body"},[e.createElementVNode("view",{class:"policy-content"},[e.createElementVNode("text",{class:"policy-text"},e.toDisplayString(t.content),1)])]),e.createElementVNode("view",{class:"dialog-footer"},[e.createElementVNode("button",{class:"confirm-btn",onClick:s},"我知道了")])])])):e.createCommentVNode("",!0)}}},[["__scopeId","data-v-707cb82c"]]);function T(e){return V({url:`/system/agreement/${e}`,method:"get"})}const D=i({__name:"index",setup(l){const o=e.ref(""),n=e.ref(""),s=e.ref(!1),c=e.ref(!1),r=e.ref(""),i=e.ref(""),d=()=>uni.navigateBack(),m=()=>{s.value=!s.value},v=async()=>{var e;if(o.value)if(n.value)if(s.value)try{uni.showLoading({title:"登录中..."});const l=await(e={userSource:0,username:o.value,password:n.value,clientId:p.clientid,grantType:"password",source:1},V({url:"/auth/login",method:"post",data:e}));if(l.access_token){uni.setStorageSync("token",l.access_token);try{const e=await B();e&&e.user&&e.user.tenantId&&uni.setStorageSync("tenantId",e.user.tenantId)}catch(a){t("error","at pages/login/index.vue:138","获取用户信息失败",a)}uni.showToast({title:"登录成功",icon:"success"}),setTimeout((()=>{uni.reLaunch({url:"/pages/index/index"})}),1e3)}else uni.showToast({title:"登录异常:未获取到Token",icon:"none"})}catch(l){t("error","at pages/login/index.vue:149","Login error:",l)}finally{uni.hideLoading()}else uni.showToast({title:"请先阅读并勾选协议",icon:"none"});else uni.showToast({title:"请填写密码",icon:"none"});else uni.showToast({title:"请填写账号",icon:"none"})},g=async e=>{try{uni.showLoading({title:"加载中..."});const a=await T(e);a&&a.title?(r.value=a.title||"协议详情",i.value=a.content||"暂无内容",c.value=!0):(t("warn","at pages/login/index.vue:166","接口返回数据格式异常:",a),uni.showToast({title:"数据格式异常",icon:"none"}))}catch(a){t("error","at pages/login/index.vue:170","获取协议失败:",a),uni.showToast({title:"加载失败,请稍后重试",icon:"none"})}finally{uni.hideLoading()}};return(t,l)=>{const p=a(e.resolveDynamicComponent("uni-icons"),w);return e.openBlock(),e.createElementBlock("view",{class:"login-page"},[e.createVNode(u,{title:"登录",bgColor:"transparent",color:"#fff"}),e.createElementVNode("view",{class:"hero-bg"},[e.createElementVNode("view",{class:"deco-circle c1"}),e.createElementVNode("view",{class:"deco-circle c2"}),e.createElementVNode("view",{class:"deco-circle c3"}),e.createElementVNode("view",{class:"back-btn",onClick:d},[e.createVNode(p,{type:"left",size:"20",color:"#fff"})]),e.createElementVNode("view",{class:"hero-content"},[e.createElementVNode("view",{class:"logo-wrap"},[e.createVNode(p,{type:"headphones",size:"42",color:"#fff"})]),e.createElementVNode("text",{class:"brand-name"},"宠物服务平台"),e.createElementVNode("text",{class:"brand-desc"},"专业 · 安心 · 便捷")])]),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("text",{class:"form-title"},"账号登录"),e.createElementVNode("view",{class:"input-group"},[e.createElementVNode("view",{class:"input-icon-wrap"},[e.createVNode(p,{type:"person",size:"18",color:"#ffc837"})]),e.withDirectives(e.createElementVNode("input",{class:"custom-input","onUpdate:modelValue":l[0]||(l[0]=e=>o.value=e),placeholder:"请输入登录账号","placeholder-class":"input-placeholder"},null,512),[[e.vModelText,o.value]])]),e.createElementVNode("view",{class:"input-group"},[e.createElementVNode("view",{class:"input-icon-wrap"},[e.createVNode(p,{type:"locked",size:"18",color:"#ffc837"})]),e.withDirectives(e.createElementVNode("input",{class:"custom-input","onUpdate:modelValue":l[1]||(l[1]=e=>n.value=e),type:"password",placeholder:"请输入密码","placeholder-class":"input-placeholder"},null,512),[[e.vModelText,n.value]])]),e.createElementVNode("view",{class:"tip-row"},[e.createVNode(p,{type:"info",size:"13",color:"#ffaa00"}),e.createElementVNode("text",null,"账号由后台创建,不支持自主注册")]),e.createElementVNode("view",{class:"agreement-row"},[e.createElementVNode("checkbox-group",{onChange:m},[e.createElementVNode("label",{class:"agree-label"},[e.createElementVNode("checkbox",{checked:s.value,color:"#ffc837",style:{transform:"scale(0.7)"}},null,8,["checked"]),e.createElementVNode("text",{class:"agree-text"},"我已阅读并同意"),e.createElementVNode("text",{class:"text-link",onClick:l[2]||(l[2]=e.withModifiers((e=>g(2)),["stop"]))},"《隐私政策》"),e.createElementVNode("text",{class:"agree-text"},"和"),e.createElementVNode("text",{class:"text-link",onClick:l[3]||(l[3]=e.withModifiers((e=>g(4)),["stop"]))},"《托运协议》")])],32)]),e.createElementVNode("button",{class:"login-btn",onClick:v},"安全登录")]),e.createElementVNode("view",{class:"footer-hint"},[e.createElementVNode("text",null,"安全加密 · 保护您的账号信息")]),e.createVNode(_,{visible:c.value,"onUpdate:visible":l[4]||(l[4]=e=>c.value=e),title:r.value,content:i.value},null,8,["visible","title","content"])])}}},[["__scopeId","data-v-1d8b2eef"]]),I="https://images.unsplash.com/photo-1544568100-847a948585b9?q=80&w=600&auto=format&fit=crop",M=i({__name:"index",setup(a){const l=e.ref("intro"),o=e.ref(null);n((e=>{const a=uni.getStorageSync("currentService");a&&(o.value=a,t("log","at pages/service/detail/index.vue:74","获取到的服务数据:",a))}));const s=e.computed((()=>{if(!o.value)return{heroImg:I,heroTitle:"服务详情",heroSubTitle:"加载中...",price:"0",unit:"",booked:"0 人已约",title:"服务名称",intro:"加载中...",notice:"加载中...",introImages:[]};const e=o.value,t=e.price?(e.price/100).toFixed(2):"0.00";return{type:e.id,title:e.name,heroTitle:e.name,heroSubTitle:e.remark||"专业服务",heroImg:e.iconUrl||I,price:t,unit:"",booked:"0 人已约",intro:e.introduction||"暂无介绍",introImages:[],notice:e.orderInstruction||"暂无须知"}})),c=()=>{if(!o.value)return;let e="feed";const t=o.value.name||"";"1"===String(o.value.mode)||t.includes("接送")||t.includes("托运")?e="transport":(t.includes("洗")||t.includes("护"))&&(e="wash"),uni.navigateTo({url:`/pages/order/apply/index?service=${e}&serviceId=${o.value.id}`})};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"service-detail-page"},[e.createVNode(u,{title:"服务详情"}),e.createElementVNode("view",{class:"hero-section"},[e.createElementVNode("image",{src:s.value.heroImg,class:"hero-img",mode:"aspectFill"},null,8,["src"]),e.createElementVNode("view",{class:"hero-overlay"}),e.createElementVNode("view",{class:"hero-title-box"},[e.createElementVNode("text",{class:"hero-main-title"},e.toDisplayString(s.value.heroTitle),1),e.createElementVNode("text",{class:"hero-sub-title"},e.toDisplayString(s.value.heroSubTitle),1)])]),e.createElementVNode("view",{class:"info-section card"},[e.createElementVNode("view",{class:"service-price-row"},[e.createElementVNode("view",{class:"price-box"},[e.createElementVNode("text",{class:"price-label"},"订单服务费:"),e.createElementVNode("text",{class:"price-symbol"},"¥"),e.createElementVNode("text",{class:"price-num"},e.toDisplayString(s.value.price),1),e.createElementVNode("text",{class:"price-unit"},e.toDisplayString(s.value.unit),1)])]),e.createElementVNode("text",{class:"service-name-text"},e.toDisplayString(s.value.title),1)]),e.createElementVNode("view",{class:"tab-section card"},[e.createElementVNode("view",{class:"tab-header"},[e.createElementVNode("view",{class:e.normalizeClass(["tab-btn",{active:"intro"===l.value}]),onClick:a[0]||(a[0]=e=>l.value="intro")},[e.createElementVNode("text",null,"服务介绍")],2),e.createElementVNode("view",{class:e.normalizeClass(["tab-btn",{active:"notice"===l.value}]),onClick:a[1]||(a[1]=e=>l.value="notice")},[e.createElementVNode("text",null,"下单须知")],2)]),"intro"===l.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"tab-content"},[e.createElementVNode("text",{class:"content-title"},"服务介绍"),e.createElementVNode("rich-text",{nodes:s.value.intro,class:"content-text"},null,8,["nodes"]),s.value.introImages&&s.value.introImages.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"intro-images"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value.introImages,((t,a)=>(e.openBlock(),e.createElementBlock("image",{key:a,src:t,class:"intro-img",mode:"widthFix"},null,8,["src"])))),128))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),"notice"===l.value?(e.openBlock(),e.createElementBlock("view",{key:1,class:"tab-content"},[e.createElementVNode("text",{class:"content-title"},"下单须知"),e.createElementVNode("rich-text",{nodes:s.value.notice,class:"content-text"},null,8,["nodes"])])):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"footer-bar safe-bottom"},[e.createElementVNode("button",{class:"buy-btn",onClick:c},"立即预约")])]))}},[["__scopeId","data-v-79e5ac6e"]]),A=[{id:1,orderNo:"ORD202402048803",rating:5,content:"服务非常好,宠物接送很准时,司机态度很好!",time:"2024-02-05 10:30",serviceType:"宠物接送",userName:"王先生"},{id:2,orderNo:"ORD202402039001",rating:4,content:"上门喂遛服务不错,希望下次能多遛一会儿。",time:"2024-02-04 16:00",serviceType:"上门喂遛",userName:"周女士"},{id:3,orderNo:"ORD202402048806",rating:5,content:"洗护非常专业,毛发吹得很蓬松,下次还约。",time:"2024-02-05 18:00",serviceType:"上门洗护",userName:"刘小姐"}],P=i({__name:"index",setup(t){const a=e.ref(A);return(t,l)=>(e.openBlock(),e.createElementBlock("view",{class:"service-review-page"},[e.createElementVNode("view",{class:"summary-bar"},[e.createElementVNode("text",{class:"avg-score"},"4.8"),e.createElementVNode("text",{class:"avg-label"},"综合评分"),e.createElementVNode("text",{class:"total-count"},"共 "+e.toDisplayString(a.value.length)+" 条评价",1)]),e.createElementVNode("view",{class:"review-list"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"review-card",key:t.id},[e.createElementVNode("view",{class:"review-header"},[e.createElementVNode("view",{class:"user-info"},[e.createElementVNode("view",{class:"user-avatar"},[e.createElementVNode("text",null,e.toDisplayString(t.userName[0]),1)]),e.createElementVNode("text",{class:"user-name"},e.toDisplayString(t.userName),1)]),e.createElementVNode("text",{class:"stars"},e.toDisplayString("★".repeat(t.rating))+e.toDisplayString("☆".repeat(5-t.rating)),1)]),e.createElementVNode("text",{class:"review-content"},e.toDisplayString(t.content),1),e.createElementVNode("text",{class:"review-time"},e.toDisplayString(t.time),1)])))),128))])]))}},[["__scopeId","data-v-4a1e617f"]]),L=i({__name:"index",props:{modelValue:Boolean,title:{type:String,default:"请选择"},options:{type:Array,default:()=>[]},value:{type:[String,Number],default:""},labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"}},emits:["update:modelValue","select"],setup(t,{emit:a}){const l=t,o=a,n=e=>"string"==typeof e||"number"==typeof e?e:e[l.labelKey],s=e=>(e=>"string"==typeof e||"number"==typeof e?e:e[l.valueKey])(e)===l.value,c=()=>{o("update:modelValue",!1)};return(a,l)=>t.modelValue?(e.openBlock(),e.createElementBlock("view",{key:0,class:"center-select-mask",onClick:c,onTouchmove:l[1]||(l[1]=e.withModifiers((()=>{}),["stop","prevent"]))},[e.createElementVNode("view",{class:"center-select-container",onClick:l[0]||(l[0]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"select-header"},[e.createElementVNode("text",{class:"select-title"},e.toDisplayString(t.title),1),e.createElementVNode("view",{class:"close-btn",onClick:c},[e.createElementVNode("view",{class:"line line1"}),e.createElementVNode("view",{class:"line line2"})])]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"select-content"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,((t,a)=>(e.openBlock(),e.createElementBlock("view",{key:a,class:e.normalizeClass(["select-item",{active:s(t)}]),onClick:e=>(e=>{o("select",e),o("update:modelValue",!1)})(t)},[e.createElementVNode("text",{class:"item-label"},e.toDisplayString(n(t)),1),s(t)?(e.openBlock(),e.createElementBlock("view",{key:0,class:"checkmark"})):e.createCommentVNode("",!0)],10,["onClick"])))),128)),0===t.options.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-tip"},"暂无选项")):e.createCommentVNode("",!0)])])],32)):e.createCommentVNode("",!0)}},[["__scopeId","data-v-df88e928"]]);function U(e){return V({url:"/archieves/customer/"+e,method:"get"})}function z(e){return V({url:"/archieves/customer/listAll",method:"get",params:e})}function F(e){return V({url:"/archieves/pet/"+e,method:"get"})}const q=i({__name:"index",setup(t){const a=e.ref("transport"),l=e.ref(null),o=e.ref([]),s=e.ref([]),c=e.ref([]),r=e.ref([]),i=e.ref(!1),d=e.ref(!1),m=e.ref(!1),v=e.ref(!1),p=e.ref(!1),g=e.ref(""),N=e.ref(null),E=e.ref(null),f=e.ref(""),w=e.ref(""),h=e.ref(""),k=e.ref(""),y=e.ref(""),x=e.reactive({merchantId:"",shopName:"",customerId:"",customerName:"",petId:"",petName:"",packageName:"",transportMode:"round_trip",pickArea:"",pickAddress:"",pickEndArea:"",pickEndAddress:"",pickContact:"",pickPhone:"",pickTime:"",sendStartArea:"",sendStartAddress:"",sendArea:"",sendAddress:"",sendContact:"",sendPhone:"",sendTime:"",serviceArea:"",serviceAddress:"",feedTimes:[{start:"",end:""}],otherNote:"",transportNote:"",quoteAmount:""}),b=e.ref([[],[],[]]),B=e.ref([0,0,0]),C=e.reactive({type:"",index:0,field:""});n((e=>{e.service&&(a.value=e.service);const t=uni.getStorageSync("currentService");t&&(l.value=t),S(),O(),K(),H()}));const S=()=>{const e=[],t=new Date;for(let a=0;a<30;a++){const l=new Date(t);l.setDate(l.getDate()+a),e.push(`${String(l.getMonth()+1).padStart(2,"0")}-${String(l.getDate()).padStart(2,"0")}`)}b.value=[e,Array.from({length:24},((e,t)=>String(t).padStart(2,"0"))),Array.from({length:12},((e,t)=>String(5*t).padStart(2,"0")))]},_=(e,t=0,a="")=>{C.type=e,C.index=t,C.field=a,B.value=[0,0,0],p.value=!0},T=e=>{B.value=e.detail.value},D=()=>{const[e,t,a]=B.value,l=`${(new Date).getFullYear()}-${b.value[0][e]} ${b.value[1][t]}:${b.value[2][a]}:00`;"pick"===C.type?x.pickTime=l:"send"===C.type?x.sendTime=l:"feed"===C.type&&("start"===C.field?x.feedTimes[C.index].start=l:x.feedTimes[C.index].end=l),p.value=!1},I=e=>e?e.substring(5,16):"",M=e.computed((()=>I(x.pickTime))),A=e.computed((()=>I(x.sendTime))),P=e.ref([]),U=e.ref(""),z=e.computed((()=>{let e=r.value;for(let t of P.value){const a=e.find((e=>e.code===t.code));e=a&&a.children?a.children:[]}return e})),F=e=>{U.value=e,P.value=[],v.value=!0},q=e=>{var t;const a=P.value.length;return(null==(t=P.value[a])?void 0:t.code)===e.code};e.watch([E,N,r],(([e,t,a])=>{if(!e&&!t)return;const l=((null==e?void 0:e.areaCode)||"").replace(/,/g,"/"),o=l.split("/").pop()||"",n=$(l,a),s=(null==t?void 0:t.regionCode)||"",c=s.split("/").pop()||"",r=$(s,a);e&&(x.merchantId=e.id,x.shopName=e.name,x.pickEndArea=o,x.pickEndAddress=e.address||"",w.value=n,x.sendStartArea=o,x.sendStartAddress=e.address||"",h.value=n),t&&(x.customerId=t.id,x.customerName=t.name,x.pickArea=c,x.pickAddress=t.address||"",f.value=r,x.sendArea=c,x.sendAddress=t.address||"",k.value=r,x.serviceArea=c,x.serviceAddress=t.address||"",y.value=r,x.pickContact=t.name,x.pickPhone=t.phoneNumber||t.phone||"",x.sendContact=t.name,x.sendPhone=x.pickPhone)}),{deep:!0});const $=(e,t)=>{if(!e||!t||0===t.length)return"";const a=e.split("/").pop(),l=(e,t)=>{for(let a of e){if(a.code===t)return a.name;if(a.children){const e=l(a.children,t);if(e)return a.name+" / "+e}}return null};return l(t,a)||""},O=()=>{var e,t;return(t={pageNum:1,pageSize:50,serviceId:null==(e=l.value)?void 0:e.id},V({url:"/system/store/listOnOrder",method:"get",params:t})).then((e=>{o.value=e.rows||[]}))},K=()=>{return(e={pageNum:1,pageSize:20,content:g.value},V({url:"/archieves/customer/listOnOrder",method:"get",params:e})).then((e=>{s.value=e.rows||[]}));var e},R=e=>{return(t=e,V({url:"/archieves/pet/listByUser/"+t,method:"get"})).then((e=>{c.value=Array.isArray(e)?e:e.rows||[]}));var t},H=()=>V({url:"/system/region/listTree",method:"get"}).then((e=>{r.value=e||[]})),j=e=>{E.value=e,i.value=!1},G=()=>{if(!x.customerId)return uni.showToast({title:"先选择宠主",icon:"none"});m.value=!0},W=e.computed((()=>c.value.map((e=>({...e,_label:`${e.name} (${e.breed||"未知"})`}))))),J=e=>{x.petId=e.id,x.petName=e.name,m.value=!1},Z=e.computed((()=>{var e;return(null==(e=l.value)?void 0:e.name)||("transport"===a.value?"宠物接送":"上门喂遛")})),X=e.computed((()=>a.value)),Q=e.computed((()=>{var e;return(null==(e=l.value)?void 0:e.remark)||"专人专项 · 贴心呵护"})),Y=[{label:"往返",value:"round_trip"},{label:"单程接",value:"pick_up"},{label:"单程送",value:"return_home"}],ee=()=>x.feedTimes.push({start:"",end:""}),te=e.computed((()=>x.quoteAmount?parseFloat(x.quoteAmount).toFixed(2):"0.00")),ae=async()=>{var e,t,o,n,s,c,r,i;if(!(x.merchantId&&x.customerId&&x.petId&&x.quoteAmount))return uni.showToast({title:"请完善红星必填项",icon:"none"});uni.showLoading({title:"提交中...",mask:!0});try{const d=[],m=(null==(e=l.value)?void 0:e.mode)||0,u=null==(t=N.value)?void 0:t.name,v=(null==(o=N.value)?void 0:o.phone)||(null==(n=N.value)?void 0:n.phoneNumber);"transport"===a.value?("return_home"!==x.transportMode&&d.push({mode:m,type:"round_trip"===x.transportMode?0:2,contact:x.pickContact||u,contactPhoneNumber:x.pickPhone||v,serviceTime:x.pickTime,endServiceTime:x.pickTime,fromCode:x.pickArea,fromAddress:x.pickAddress,toCode:x.pickEndArea,toAddress:x.pickEndAddress}),"pick_up"!==x.transportMode&&d.push({mode:m,type:"round_trip"===x.transportMode?1:3,contact:x.sendContact||u,contactPhoneNumber:x.sendPhone||v,serviceTime:x.sendTime,endServiceTime:x.sendTime,fromCode:x.sendStartArea,fromAddress:x.sendStartAddress,toCode:x.sendArea,toAddress:x.sendAddress})):x.feedTimes.forEach((e=>d.push({mode:m,contact:u,contactPhoneNumber:v,serviceTime:e.start,endServiceTime:e.end||e.start,fromCode:x.serviceArea,fromAddress:x.serviceAddress,toCode:x.serviceArea,toAddress:x.serviceAddress})));const p="transport"===a.value?x.transportNote:x.otherNote,g={store:x.merchantId,storeSite:null==(s=E.value)?void 0:s.site,customer:x.customerId,pet:x.petId,groupPurchasePackageName:x.packageName,service:null==(c=l.value)?void 0:c.id,orderCommission:Math.round(100*Number(x.quoteAmount)),remark:p,tenantId:null==(r=E.value)?void 0:r.tenantId,subOrders:d};await(i=g,V({url:"/order/order/create",method:"post",data:i})),uni.showToast({title:"成功",icon:"success"}),setTimeout((()=>uni.reLaunch({url:"/pages/order/list/index"})),1e3)}catch(d){}finally{uni.hideLoading()}};return(t,l)=>(e.openBlock(),e.createElementBlock("view",{class:"order-apply-page"},[e.createVNode(u,{title:"下单预约"}),e.createElementVNode("view",{class:"apply-content"},[e.createElementVNode("text",{class:"section-title"},"01 服务类型"),e.createElementVNode("view",{class:"card service-info-card"},[e.createElementVNode("view",{class:"service-type-display"},[e.createElementVNode("view",{class:e.normalizeClass(["service-icon-box",a.value])},[e.createElementVNode("view",{class:e.normalizeClass(["pure-css-icon",X.value])},null,2)],2),e.createElementVNode("view",{class:"service-info-text"},[e.createElementVNode("text",{class:"main-name"},e.toDisplayString(Z.value),1),e.createElementVNode("text",{class:"sub-desc"},e.toDisplayString(Q.value),1)])])]),e.createElementVNode("text",{class:"section-title"},"02 基础信息"),e.createElementVNode("view",{class:"card basic-info-card"},[e.createElementVNode("view",{class:"field-item",onClick:l[0]||(l[0]=e=>i.value=!0)},[e.createElementVNode("text",{class:"field-label require"},"服务门店"),e.createElementVNode("text",{class:e.normalizeClass(["field-value",x.shopName?"":"placeholder"])},e.toDisplayString(x.shopName||"请选择商户门店"),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"field-item",onClick:l[1]||(l[1]=e=>d.value=!0)},[e.createElementVNode("text",{class:"field-label require"},"宠主用户"),e.createElementVNode("view",{class:"field-value-wrap"},[N.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("text",{class:"selected-name"},e.toDisplayString(N.value.name),1),e.createElementVNode("text",{class:"selected-phone"},e.toDisplayString(N.value.phone||N.value.phoneNumber),1)],64)):(e.openBlock(),e.createElementBlock("text",{key:1,class:"placeholder"},"点击搜索"))]),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"field-item",onClick:G},[e.createElementVNode("text",{class:"field-label require"},"选择宠物"),e.createElementVNode("text",{class:e.normalizeClass(["field-value",x.petName?"":"placeholder"])},e.toDisplayString(x.petName||"选择宠物档案"),3),e.createElementVNode("view",{class:"right-arrow"})])]),"transport"===a.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("text",{class:"section-title"},"03 接送路线与时间"),e.createElementVNode("view",{class:"card transport-card"},[e.createElementVNode("view",{class:"field-item"},[e.createElementVNode("text",{class:"field-label"},"团购套餐"),e.withDirectives(e.createElementVNode("input",{class:"field-input","onUpdate:modelValue":l[2]||(l[2]=e=>x.packageName=e),placeholder:"请输入套餐名称(选填)"},null,512),[[e.vModelText,x.packageName]])]),e.createElementVNode("text",{class:"form-item-label require"},"接送模式"),e.createElementVNode("view",{class:"mode-select"},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(Y,(t=>e.createElementVNode("view",{key:t.value,class:e.normalizeClass(["mode-btn",{active:x.transportMode===t.value}]),onClick:e=>x.transportMode=t.value},[e.createElementVNode("text",null,e.toDisplayString(t.label),1)],10,["onClick"]))),64))]),"return_home"!==x.transportMode?(e.openBlock(),e.createElementBlock("view",{key:0,class:"route-box"},[e.createElementVNode("view",{class:"route-icon pick"},"接"),e.createElementVNode("view",{class:"route-fields"},[e.createElementVNode("text",{class:"addr-label require"},"起点 (用户家)"),e.createElementVNode("view",{class:"route-picker-trigger",onClick:l[3]||(l[3]=e=>F("pick"))},[e.createElementVNode("text",{class:e.normalizeClass(["display-text",x.pickArea?"":"placeholder"])},e.toDisplayString(f.value||"选择省/市/区"),3),e.createElementVNode("view",{class:"right-arrow"})]),e.withDirectives(e.createElementVNode("input",{class:"route-input","onUpdate:modelValue":l[4]||(l[4]=e=>x.pickAddress=e),placeholder:"详细地址"},null,512),[[e.vModelText,x.pickAddress]]),e.createElementVNode("text",{class:"addr-label require"},"终点 (门店)"),e.createElementVNode("view",{class:"route-picker-trigger",onClick:l[5]||(l[5]=e=>F("pickEnd"))},[e.createElementVNode("text",{class:e.normalizeClass(["display-text",x.pickEndArea?"":"placeholder"])},e.toDisplayString(w.value||"选择省/市/区"),3),e.createElementVNode("view",{class:"right-arrow"})]),e.withDirectives(e.createElementVNode("input",{class:"route-input","onUpdate:modelValue":l[6]||(l[6]=e=>x.pickEndAddress=e),placeholder:"详细地址"},null,512),[[e.vModelText,x.pickEndAddress]]),e.createElementVNode("view",{class:"contact-row"},[e.withDirectives(e.createElementVNode("input",{class:"route-input half","onUpdate:modelValue":l[7]||(l[7]=e=>x.pickContact=e),placeholder:"联系人"},null,512),[[e.vModelText,x.pickContact]]),e.withDirectives(e.createElementVNode("input",{class:"route-input half","onUpdate:modelValue":l[8]||(l[8]=e=>x.pickPhone=e),placeholder:"电话",type:"tel"},null,512),[[e.vModelText,x.pickPhone]])]),e.createElementVNode("view",{class:"route-time-trigger",onClick:l[9]||(l[9]=e=>_("pick"))},[e.createElementVNode("text",{class:e.normalizeClass(x.pickTime?"":"placeholder")},e.toDisplayString(M.value||"设置接宠时间"),3)])])])):e.createCommentVNode("",!0),"pick_up"!==x.transportMode?(e.openBlock(),e.createElementBlock("view",{key:1,class:"route-box"},[e.createElementVNode("view",{class:"route-icon send"},"送"),e.createElementVNode("view",{class:"route-fields"},[e.createElementVNode("text",{class:"addr-label require"},"起点 (门店)"),e.createElementVNode("view",{class:"route-picker-trigger",onClick:l[10]||(l[10]=e=>F("sendStart"))},[e.createElementVNode("text",{class:e.normalizeClass(["display-text",x.sendStartArea?"":"placeholder"])},e.toDisplayString(h.value||"选择省/市/区"),3),e.createElementVNode("view",{class:"right-arrow"})]),e.withDirectives(e.createElementVNode("input",{class:"route-input","onUpdate:modelValue":l[11]||(l[11]=e=>x.sendStartAddress=e),placeholder:"详细地址"},null,512),[[e.vModelText,x.sendStartAddress]]),e.createElementVNode("text",{class:"addr-label require"},"终点 (用户家)"),e.createElementVNode("view",{class:"route-picker-trigger",onClick:l[12]||(l[12]=e=>F("send"))},[e.createElementVNode("text",{class:e.normalizeClass(["display-text",x.sendArea?"":"placeholder"])},e.toDisplayString(k.value||"选择省/市/区"),3),e.createElementVNode("view",{class:"right-arrow"})]),e.withDirectives(e.createElementVNode("input",{class:"route-input","onUpdate:modelValue":l[13]||(l[13]=e=>x.sendAddress=e),placeholder:"详细地址"},null,512),[[e.vModelText,x.sendAddress]]),e.createElementVNode("view",{class:"contact-row"},[e.withDirectives(e.createElementVNode("input",{class:"route-input half","onUpdate:modelValue":l[14]||(l[14]=e=>x.sendContact=e),placeholder:"联系人"},null,512),[[e.vModelText,x.sendContact]]),e.withDirectives(e.createElementVNode("input",{class:"route-input half","onUpdate:modelValue":l[15]||(l[15]=e=>x.sendPhone=e),placeholder:"电话",type:"tel"},null,512),[[e.vModelText,x.sendPhone]])]),e.createElementVNode("view",{class:"route-time-trigger",onClick:l[16]||(l[16]=e=>_("send"))},[e.createElementVNode("text",{class:e.normalizeClass(x.sendTime?"":"placeholder")},e.toDisplayString(A.value||"设置送宠时间"),3)])])])):e.createCommentVNode("",!0),e.createElementVNode("text",{class:"remarks-title"},"备注信息"),e.withDirectives(e.createElementVNode("textarea",{class:"remarks-textarea","onUpdate:modelValue":l[17]||(l[17]=e=>x.transportNote=e),placeholder:"请添加接送备注 (如宠物性格、接送要求等)"},null,512),[[e.vModelText,x.transportNote]])])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("text",{class:"section-title"},"03 服务细则"),e.createElementVNode("view",{class:"card feed-card"},[e.createElementVNode("view",{class:"field-item"},[e.createElementVNode("text",{class:"field-label"},"团购套餐"),e.withDirectives(e.createElementVNode("input",{class:"field-input","onUpdate:modelValue":l[18]||(l[18]=e=>x.packageName=e),placeholder:"请输入套餐名称(选填)"},null,512),[[e.vModelText,x.packageName]])]),e.createElementVNode("view",{class:"route-box"},[e.createElementVNode("view",{class:"route-icon service"},"服"),e.createElementVNode("view",{class:"route-fields"},[e.createElementVNode("text",{class:"addr-label require"},"上门服务地址"),e.createElementVNode("view",{class:"route-picker-trigger",onClick:l[19]||(l[19]=e=>F("service"))},[e.createElementVNode("text",{class:e.normalizeClass(["display-text",x.serviceArea?"":"placeholder"])},e.toDisplayString(y.value||"请选择省/市/区"),3),e.createElementVNode("view",{class:"right-arrow"})]),e.withDirectives(e.createElementVNode("input",{class:"route-input","onUpdate:modelValue":l[20]||(l[20]=e=>x.serviceAddress=e),placeholder:"详细地址 (街道/路名/门牌号)"},null,512),[[e.vModelText,x.serviceAddress]])])]),e.createElementVNode("view",{class:"booking-section"},[e.createElementVNode("view",{class:"booking-header"},[e.createElementVNode("text",{class:"label require"},"预约服务时间"),e.createElementVNode("view",{class:"count-tag"},"共 "+e.toDisplayString(x.feedTimes.length)+" 次",1)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.feedTimes,((t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"time-item-row",key:a},[e.createElementVNode("text",{class:"index"},e.toDisplayString(a+1)+".",1),e.createElementVNode("view",{class:"flex-time-box",onClick:e=>_("feed",a,"start")},[e.createElementVNode("text",{class:e.normalizeClass(["time-text",t.start?"":"placeholder"])},e.toDisplayString(I(t.start)||"开始"),3)],8,["onClick"]),e.createElementVNode("text",{class:"to-line"},"~"),e.createElementVNode("view",{class:"flex-time-box",onClick:e=>_("feed",a,"end")},[e.createElementVNode("text",{class:e.normalizeClass(["time-text",t.end?"":"placeholder"])},e.toDisplayString(I(t.end)||"结束"),3)],8,["onClick"]),e.createElementVNode("view",{class:"action-buttons"},[a===x.feedTimes.length-1?(e.openBlock(),e.createElementBlock("view",{key:0,class:"circle-btn add",onClick:ee},"+")):e.createCommentVNode("",!0),x.feedTimes.length>1?(e.openBlock(),e.createElementBlock("view",{key:1,class:"circle-btn remove",onClick:e=>{return t=a,x.feedTimes.splice(t,1);var t}},"-",8,["onClick"])):e.createCommentVNode("",!0)])])))),128))]),e.createElementVNode("text",{class:"remarks-title"},"备注信息"),e.withDirectives(e.createElementVNode("textarea",{class:"remarks-textarea","onUpdate:modelValue":l[21]||(l[21]=e=>x.otherNote=e),placeholder:"如有其他注意事项请备注"},null,512),[[e.vModelText,x.otherNote]])])],64)),e.createElementVNode("text",{class:"section-title"},"04 报价信息"),e.createElementVNode("view",{class:"card quote-card"},[e.createElementVNode("view",{class:"field-item"},[e.createElementVNode("text",{class:"field-label require"},"报价金额"),e.withDirectives(e.createElementVNode("input",{class:"field-input quote-input","onUpdate:modelValue":l[22]||(l[22]=e=>x.quoteAmount=e),type:"digit",placeholder:"填入数字"},null,512),[[e.vModelText,x.quoteAmount]]),e.createElementVNode("text",{class:"unit-text"},"元")]),e.createElementVNode("text",{class:"quote-tips"},"注:此价格将作为订单最终结算金额。")])]),e.createElementVNode("view",{class:"footer-bar safe-bottom"},[e.createElementVNode("view",{class:"quotation-box"},[e.createElementVNode("text",{class:"p-label"},"总计报价:"),e.createElementVNode("text",{class:"p-symbol"},"¥"),e.createElementVNode("text",{class:"p-amount"},e.toDisplayString(te.value),1)]),e.createElementVNode("button",{class:"submit-btn",onClick:ae},"立即下单")]),d.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"center-modal-mask",onClick:l[25]||(l[25]=e=>d.value=!1)},[e.createElementVNode("view",{class:"center-modal-content user-search-modal",onClick:l[24]||(l[24]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"modal-header"},[e.createElementVNode("view",{class:"search-box"},[e.createElementVNode("view",{class:"search-icon"}),e.withDirectives(e.createElementVNode("input",{class:"search-input","onUpdate:modelValue":l[23]||(l[23]=e=>g.value=e),placeholder:"搜索宠主姓名/手机号",onConfirm:K,"confirm-type":"search"},null,544),[[e.vModelText,g.value]]),e.createElementVNode("view",{class:"search-btn",onClick:K},"查询")])]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"modal-list-scroll"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"list-item",key:t.id,onClick:e=>(e=>{N.value=e,x.customerId=e.id,x.petId="",x.petName="",c.value=[],R(e.id),d.value=!1})(t)},[e.createElementVNode("view",{class:"user-info"},[e.createElementVNode("text",{class:"name"},e.toDisplayString(t.name),1),e.createElementVNode("text",{class:"phone"},e.toDisplayString(t.phone||t.phoneNumber),1)]),x.customerId===t.id?(e.openBlock(),e.createElementBlock("view",{key:0,class:"checkmark"})):e.createCommentVNode("",!0)],8,["onClick"])))),128)),0===s.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-tip"},"未找到相关宠主")):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0),v.value?(e.openBlock(),e.createElementBlock("view",{key:1,class:"center-modal-mask",onClick:l[28]||(l[28]=e=>v.value=!1)},[e.createElementVNode("view",{class:"center-modal-content region-modal",onClick:l[27]||(l[27]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"modal-header"},[e.createElementVNode("text",{class:"modal-title"},"选择区域"),e.createElementVNode("view",{class:"close-btn",onClick:l[26]||(l[26]=e=>v.value=!1)})]),e.createElementVNode("view",{class:"cascade-indicator"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.value,((t,a)=>(e.openBlock(),e.createElementBlock("text",{key:a,class:"path-node",onClick:e=>(e=>{P.value=P.value.slice(0,e)})(a)},e.toDisplayString(t.name),9,["onClick"])))),128)),P.value.length<3?(e.openBlock(),e.createElementBlock("text",{key:0,class:"path-node active"},"请选择")):e.createCommentVNode("",!0)]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"modal-list-scroll"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"list-item",key:t.code,onClick:e=>(e=>{if(P.value.push({code:e.code,name:e.name}),!e.children||0===e.children.length||P.value.length>=3){const t=P.value.map((e=>e.name)).join(" / "),a=e.code;"pick"===U.value?(x.pickArea=a,f.value=t):"pickEnd"===U.value?(x.pickEndArea=a,w.value=t):"sendStart"===U.value?(x.sendStartArea=a,h.value=t):"send"===U.value?(x.sendArea=a,k.value=t):"service"===U.value&&(x.serviceArea=a,y.value=t),v.value=!1}})(t)},[e.createElementVNode("text",{class:"item-text"},e.toDisplayString(t.name),1),q(t)?(e.openBlock(),e.createElementBlock("view",{key:0,class:"checkmark"})):e.createCommentVNode("",!0)],8,["onClick"])))),128))])])])):e.createCommentVNode("",!0),e.createVNode(L,{modelValue:i.value,"onUpdate:modelValue":l[29]||(l[29]=e=>i.value=e),title:"选择服务门店",options:o.value,labelKey:"name",valueKey:"id",value:x.merchantId,onSelect:j},null,8,["modelValue","options","value"]),e.createVNode(L,{modelValue:m.value,"onUpdate:modelValue":l[30]||(l[30]=e=>m.value=e),title:"选择指定宠物",options:W.value,labelKey:"_label",valueKey:"id",value:x.petId,onSelect:J},null,8,["modelValue","options","value"]),p.value?(e.openBlock(),e.createElementBlock("view",{key:2,class:"center-modal-mask",onClick:l[33]||(l[33]=e=>p.value=!1)},[e.createElementVNode("view",{class:"center-modal-content time-modal",onClick:l[32]||(l[32]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"modal-header"},[e.createElementVNode("text",{class:"modal-title"},"选择预约时间")]),e.createElementVNode("view",{class:"datetime-picker-body"},[e.createElementVNode("picker-view",{class:"picker-view",value:B.value,onChange:T},[e.createElementVNode("picker-view-column",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value[0],(t=>(e.openBlock(),e.createElementBlock("view",{class:"picker-item",key:t},e.toDisplayString(t),1)))),128))]),e.createElementVNode("picker-view-column",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value[1],(t=>(e.openBlock(),e.createElementBlock("view",{class:"picker-item",key:t},e.toDisplayString(t)+"时",1)))),128))]),e.createElementVNode("picker-view-column",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value[2],(t=>(e.openBlock(),e.createElementBlock("view",{class:"picker-item",key:t},e.toDisplayString(t)+"分",1)))),128))])],40,["value"])]),e.createElementVNode("view",{class:"modal-footer"},[e.createElementVNode("view",{class:"modal-cancel",onClick:l[31]||(l[31]=e=>p.value=!1)},"取消"),e.createElementVNode("view",{class:"modal-confirm",onClick:D},"确定")])])])):e.createCommentVNode("",!0)]))}},[["__scopeId","data-v-603f22da"]]);const $=i({__name:"index",setup(l){const o=e.ref("base"),s=e.ref("transport"),c=e.ref(""),r=e.ref(!0),i=[{title:"基础信息",name:"base"},{title:"履约者",name:"assignee"},{title:"服务进度",name:"progress"},{title:"订单日志",name:"log"}],d=e.computed((()=>({transport:"宠物接送",feed:"上门喂遛",wash:"上门洗护"}[s.value]))),m=e.reactive({id:"",code:"",statusKey:"serving",statusText:"服务中",status:2,petName:"",petBreed:"",petAge:"",petWeight:"",petGender:"",petVaccine:"",petCharacter:"",petHealth:"",userName:"",userPhone:"",address:"",shopName:"",createTime:"",bookTime:"",packageName:"",remark:"",assigneeName:"",cancelTime:"",pickAddress:"",pickTime:"",sendAddress:"",sendTime:"",fromAddress:"",toAddress:"",type:"transport",subOrderType:0,service:"",pet:"",customer:"",fulfiller:"",fulfillerName:"",assigneePhone:"-",assigneeZone:"-",petAvatarUrl:"",userAvatarUrl:"",assigneeAvatarUrl:""}),v=e.ref([]),p=e.ref([]),g=e.ref([]),N=async e=>{if(e){r.value=!0;try{const a=await function(e){return V({url:"/order/subOrder/getInfo",method:"get",params:{id:e}})}(e);if(t("log","at pages/order/detail/index.vue:339","订单详情返回:",a),a){m.id=a.id,m.code=a.code||a.id,m.status=a.status,m.statusKey=b(a.status),m.statusText=B(a.status),m.bookTime=a.serviceTime||"-",m.shopName=a.storeName||"-",m.userName=a.customerName||"-",m.userPhone=a.contactPhoneNumber||"-",m.assigneeName=a.fulfillerName||"-",m.remark=a.remark||"-",m.fromAddress=a.fromAddress||"-",m.toAddress=a.toAddress||"-",m.address=a.address||a.toAddress||"-",m.type=a.type||"transport",m.subOrderType=a.subOrderType,m.pet=a.usrPet,m.customer=a.usrCustomer,m.fulfiller=a.fulfiller,m.packageName=a.groupPurchasePackageName||a.packageName||"-",m.createTime=a.createTime||"-";const t=[];a.usrPet&&t.push(E(a.usrPet)),a.usrCustomer&&t.push(f(a.usrCustomer)),a.fulfiller&&t.push(h(a.fulfiller)),await Promise.all([...t,y(e),x(e)])}}catch(a){t("error","at pages/order/detail/index.vue:377","加载订单详情失败:",a),uni.showToast({title:"加载失败",icon:"none"})}finally{r.value=!1}}},E=async e=>{try{const a=await F(e);if(a){const e=a.data||a;t("log","at pages/order/detail/index.vue:389","宠物详情 res:",e),m.petName=e.name||"-",m.petBreed=e.breed||"-",m.petAge=e.age?`${e.age}岁`:"-",m.petWeight=e.weight?`${e.weight}kg`:"-",m.petGender=1===Number(e.gender)?"male":Number(e.gender)>0?"female":"",m.petVaccine=e.vaccineStatus||"-",m.petCharacter=e.cutePersonality||e.personality||"-",m.petHealth=e.healthStatus||"-",m.petAvatarUrl=e.avatarUrl||""}}catch(a){t("error","at pages/order/detail/index.vue:401","加载宠物信息失败:",a)}},f=async e=>{try{const a=await U(e);if(a){const e=a.data||a;t("log","at pages/order/detail/index.vue:410","客户详情 res:",e),m.userName=e.name||"-",m.userPhone=e.phone||"-",m.address=e.address||"-",m.userAvatarUrl=e.avatarUrl||""}}catch(a){t("error","at pages/order/detail/index.vue:417","加载客户信息失败:",a)}},h=async e=>{try{const l=await(a=e,V({url:"/fulfiller/fulfiller/"+a,method:"get"}));if(l){const e=l.data||l;t("log","at pages/order/detail/index.vue:426","履约者详情 res:",e),m.assigneeName=e.name||m.assigneeName,m.assigneePhone=e.phone||"-",m.assigneeZone=e.stationName||"-",m.assigneeAvatarUrl=e.avatarUrl||e.avatar||""}}catch(l){t("error","at pages/order/detail/index.vue:433","加载履约者信息失败:",l)}var a},y=async e=>{try{const t=await(a={orderId:e},V({url:"/order/subOrderLog/list",method:"get",params:a}))||[];v.value=t.filter((e=>0===Number(null==e?void 0:e.logType))),p.value=t.filter((e=>1===Number(null==e?void 0:e.logType)))}catch(l){t("error","at pages/order/detail/index.vue:444","加载订单日志失败:",l),v.value=[],p.value=[]}var a},x=async e=>{try{const t=await function(e){return V({url:"/fulfiller/complaint/listByOrder",method:"get",params:{orderId:e}})}(e);g.value=t||[]}catch(a){t("error","at pages/order/detail/index.vue:455","加载投诉记录失败:",a),g.value=[]}},b=e=>({0:"wait_dispatch",1:"wait_accept",2:"serving",3:"confirming",4:"done",5:"cancel"}[e]||"serving"),B=e=>({0:"待派单",1:"待接单",2:"服务中",3:"待商家确认",4:"已完成",5:"已取消"}[e]||"-"),C=e=>0===e||"0"===e?"接":1===e||"1"===e?"送":2===e||"2"===e?"单程接":3===e||"3"===e?"单程送":"接送";n((e=>{e.id&&"undefined"!==e.id?(c.value=e.id,t("log","at pages/order/detail/index.vue:492","订单详情页:接收到的订单ID =",e.id),N(e.id)):(t("error","at pages/order/detail/index.vue:495","订单详情页:缺少有效的订单ID,options =",e),uni.showToast({title:"订单ID无效",icon:"none"}),r.value=!1),e.service&&(s.value=e.service)}));const S=e.computed((()=>{const e=m.status,t=[{label:"商户下单",time:""},{label:"运营派单",time:""},{label:"履约接单",time:""},{label:"服务中",time:""},{label:"已完成",time:""}],a=e=>{const t=(v.value||[]).find((t=>parseInt(t.step)===e));return t?t.createTime||t.time:""},l=e=>{const t=(p.value||[]).find((t=>parseInt(t.step)===e));return t?t.createTime||t.time:""};let o=0;if(5===e){const e=a(5)||m.cancelTime||"";return[{label:"商户下单",time:a(0)||m.createTime||"",done:!0,active:!1},{label:"已取消",time:e,done:!0,active:!0}].map((e=>({...e,time:e.time?e.time.substring(5,16):""})))}t[0].time=a(0)||m.createTime||"",t[0].time&&(o=1),t[1].time=a(1)||"",(t[1].time||e>=1)&&(o=2),t[2].time=a(2)||l(0)||"",1===e?t[2].label="待履约者接单":e>=2&&(t[2].label="履约者已接单",t[2].time&&(o=3));const n=(()=>{const e=[...p.value||[]].reverse().find((e=>{const t=parseInt(e.step);return t>=1&&t<=98}));return e?e.createTime||e.time:""})();return t[3].time=a(3)||n||"",2===e?(t[3].label="待服务",n&&(o=4)):e>=3&&(t[3].label="服务进行中",t[3].time&&(o=4)),(4===e||a(4)||l(99))&&(t[4].time=a(4)||l(99)||"",o=5),t.map(((e,t)=>({label:e.label,time:e.time?e.time.substring(5,16):"",done:t<o,active:t===o})))})),_=e.computed((()=>{const e=[{label:"系统单号",value:m.code||m.id},{label:"服务类型",value:d.value},{label:"归属门店",value:m.shopName},{label:"宠主信息",value:`${m.userName} / ${m.userPhone}`},{label:"预约时间",value:m.bookTime},{label:"团购套餐",value:m.packageName},{label:"创建时间",value:m.createTime},{label:"订单备注",value:m.remark}];return"cancel"===m.statusKey&&e.push({label:"取消时间",value:m.cancelTime||"2024-02-02 11:30",highlight:!0}),e})),T=e.reactive({visible:!1,url:""}),D=()=>{T.visible=!1,T.url=""},I=e.computed((()=>(p.value||[]).map((e=>{const t=(null==e?void 0:e.photoUrls)||[],a=(Array.isArray(t)?t:"string"==typeof t?t.split(",").filter(Boolean):[]).map((e=>{const t=(e=>!!e&&[".mp4",".mov",".avi",".wmv",".webm",".ogg"].some((t=>String(e).toLowerCase().endsWith(t))))(e)?"video":"image";return{type:t,url:e}}));return{title:(null==e?void 0:e.title)||"-",time:(null==e?void 0:e.createTime)||(null==e?void 0:e.time)||"",desc:(null==e?void 0:e.content)||"",media:a}})))),M=e.computed((()=>(v.value||[]).map((e=>({time:e.createTime||e.time||"",title:e.title,desc:e.content}))))),A=e.ref(!1),P=e.ref(""),L=()=>{P.value="",A.value=!0},z=()=>{A.value=!1},q=async()=>{const e=P.value.trim();if(e)try{uni.showLoading({title:"处理中"}),await k({orderId:m.id,reason:e}),uni.hideLoading(),uni.showToast({title:"订单已取消",icon:"success"}),A.value=!1,N(m.id)}catch(a){uni.hideLoading(),t("error","at pages/order/detail/index.vue:675","取消订单失败:",a),uni.showToast({title:"取消失败",icon:"none"})}else uni.showToast({title:"取消原因不能为空",icon:"none"})};return(t,l)=>{const n=a(e.resolveDynamicComponent("uni-icons"),w);return e.openBlock(),e.createElementBlock("view",{class:"order-detail-page"},[e.createVNode(u,{title:"订单详情"}),r.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"skeleton-page"},[e.createElementVNode("view",{class:"skeleton-header skeleton-box"}),e.createElementVNode("view",{class:"skeleton-progress skeleton-box"}),e.createElementVNode("view",{class:"skeleton-row-cards"},[e.createElementVNode("view",{class:"skeleton-card skeleton-box"}),e.createElementVNode("view",{class:"skeleton-card skeleton-box"})]),e.createElementVNode("view",{class:"skeleton-content skeleton-box"})])):(e.openBlock(),e.createElementBlock("view",{key:1,class:"real-content fade-in"},[e.createElementVNode("view",{class:"order-header"},[e.createElementVNode("view",{class:"order-id-row"},[e.createElementVNode("text",{class:"order-id"},e.toDisplayString(m.code||m.id),1),e.createElementVNode("text",{class:e.normalizeClass(["status-badge",`badge-${m.statusKey}`])},e.toDisplayString(m.statusText),3),e.createElementVNode("text",{class:"service-badge"},e.toDisplayString(d.value),1)])]),e.createElementVNode("view",{class:"progress-card"},[e.createElementVNode("view",{class:"progress-steps"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,((t,a)=>(e.openBlock(),e.createElementBlock("view",{key:a,class:e.normalizeClass(["step-item",{done:t.done,active:t.active}])},[e.createElementVNode("view",{class:"step-circle"},[t.done?(e.openBlock(),e.createBlock(n,{key:0,type:"checkmarkempty",size:"12",color:"#fff"})):(e.openBlock(),e.createElementBlock("text",{key:1,class:"step-num"},e.toDisplayString(a+1),1))]),a<S.value.length-1?(e.openBlock(),e.createElementBlock("view",{key:0,class:e.normalizeClass(["step-line",{done:t.done}])},null,2)):e.createCommentVNode("",!0),e.createElementVNode("text",{class:"step-label"},e.toDisplayString(t.label),1),e.createElementVNode("text",{class:"step-time"},e.toDisplayString(t.time),1)],2)))),128))])]),e.createElementVNode("view",{class:"info-row-cards"},[e.createElementVNode("view",{class:"info-card pet-card"},[e.createElementVNode("text",{class:"card-label"},"宠物档案"),e.createElementVNode("view",{class:"pet-header"},[e.createElementVNode("view",{class:"pet-avatar"},[m.petAvatarUrl?(e.openBlock(),e.createElementBlock("image",{key:0,src:m.petAvatarUrl,mode:"aspectFill",class:"avatar-img"},null,8,["src"])):(e.openBlock(),e.createElementBlock("text",{key:1},e.toDisplayString((m.petName||"宠")[0]),1))]),e.createElementVNode("view",{class:"pet-basic"},[e.createElementVNode("text",{class:"pet-name"},[e.createTextVNode(e.toDisplayString(m.petName||"-")+" ",1),"male"===m.petGender?(e.openBlock(),e.createElementBlock("text",{key:0,class:"gender-male"},"♂")):"female"===m.petGender?(e.openBlock(),e.createElementBlock("text",{key:1,class:"gender-female"},"♀")):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"pet-tags"},[m.petAge?(e.openBlock(),e.createElementBlock("text",{key:0,class:"mini-tag"},e.toDisplayString(m.petAge),1)):e.createCommentVNode("",!0),m.petWeight?(e.openBlock(),e.createElementBlock("text",{key:1,class:"mini-tag"},e.toDisplayString(m.petWeight),1)):e.createCommentVNode("",!0),m.petBreed?(e.openBlock(),e.createElementBlock("text",{key:2,class:"breed-badge"},e.toDisplayString(m.petBreed),1)):e.createCommentVNode("",!0)])])]),e.createElementVNode("view",{class:"pet-attrs"},[e.createElementVNode("view",{class:"attr-item"},[e.createElementVNode("text",{class:"attr-label"},"品种"),e.createElementVNode("text",{class:"attr-val"},e.toDisplayString(m.petBreed||"-"),1)]),e.createElementVNode("view",{class:"attr-item"},[e.createElementVNode("text",{class:"attr-label"},"疫苗状态"),e.createElementVNode("text",{class:"attr-val highlight"},e.toDisplayString(m.petVaccine||"-"),1)]),e.createElementVNode("view",{class:"attr-item full"},[e.createElementVNode("text",{class:"attr-label"},"性格特点"),e.createElementVNode("text",{class:"attr-val"},e.toDisplayString(m.petCharacter||"-"),1)])])]),e.createElementVNode("view",{class:"info-card user-card"},[e.createElementVNode("text",{class:"card-label"},"用户信息"),e.createElementVNode("view",{class:"user-header"},[e.createElementVNode("view",{class:"user-avatar"},[m.userAvatarUrl?(e.openBlock(),e.createElementBlock("image",{key:0,src:m.userAvatarUrl,mode:"aspectFill",class:"avatar-img"},null,8,["src"])):(e.openBlock(),e.createBlock(n,{key:1,type:"person",size:"26",color:"#aaa"}))]),e.createElementVNode("view",{class:"user-basic"},[e.createElementVNode("text",{class:"user-name-text"},e.toDisplayString(m.userName),1),e.createElementVNode("text",{class:"user-phone"},e.toDisplayString(m.userPhone),1)])]),e.createElementVNode("view",{class:"service-address-box"},[e.createElementVNode("text",{class:"addr-label"},"服务地址"),e.createElementVNode("text",{class:"addr-text"},e.toDisplayString(m.address),1)])])]),e.createElementVNode("view",{class:"detail-tabs-wrap"},[e.createElementVNode("view",{class:"tab-nav"},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(i,(t=>e.createElementVNode("view",{key:t.name,class:e.normalizeClass(["tab-nav-item",{active:o.value===t.name}]),onClick:e=>o.value=t.name},[e.createElementVNode("text",null,e.toDisplayString(t.title),1)],10,["onClick"]))),64))]),"base"===o.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"tab-content"},[e.createElementVNode("view",{class:"base-info-grid"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"bi-item",key:t.label},[e.createElementVNode("text",{class:"bi-label"},e.toDisplayString(t.label),1),e.createElementVNode("text",{class:e.normalizeClass(["bi-val",t.highlight?"highlight":""])},e.toDisplayString(t.value),3)])))),128))]),"transport"===m.type?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("text",{class:"sub-title"},"接送任务详情"),e.createElementVNode("view",{class:"task-card transport-card"},[e.createElementVNode("view",{class:"task-header"},[e.createElementVNode("text",{class:e.normalizeClass(["type-tag",(s=m.subOrderType,0===s||"0"===s||2===s||"2"===s?"tag-blue":"tag-orange")])},e.toDisplayString(C(m.subOrderType)),3),e.createElementVNode("text",{class:"task-time"},e.toDisplayString(m.serviceTime),1)]),e.createElementVNode("view",{class:"task-body"},[e.createElementVNode("view",{class:"task-row"},[e.createElementVNode("text",{class:"task-label"},"起点"),e.createElementVNode("text",{class:"task-value"},e.toDisplayString(m.fromAddress||"-"),1)]),e.createElementVNode("view",{class:"task-row"},[e.createElementVNode("text",{class:"task-label"},"终点"),e.createElementVNode("text",{class:"task-value"},e.toDisplayString(m.toAddress||"-"),1)]),e.createElementVNode("view",{class:"task-row contact-row"},[e.createElementVNode("text",{class:"task-value"},e.toDisplayString(m.userName)+" — "+e.toDisplayString(m.userPhone),1)])])])],64)):e.createCommentVNode("",!0),["feeding","washing"].includes(m.type)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("text",{class:"sub-title"},"服务执行要求"),e.createElementVNode("view",{class:"task-card req-card"},[e.createElementVNode("view",{class:"req-item"},[e.createElementVNode("text",{class:"req-label"},"服务地址"),e.createElementVNode("text",{class:"req-value"},e.toDisplayString(m.address),1)])])],64)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),"assignee"===o.value?(e.openBlock(),e.createElementBlock("view",{key:1,class:"tab-content"},["wait_dispatch"===m.statusKey?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-state"},[e.createVNode(n,{type:"clock",size:"40",color:"#ccc"}),e.createElementVNode("text",{class:"empty-text"},"等待派单中...")])):(e.openBlock(),e.createElementBlock("view",{key:1,class:"assignee-card"},[e.createElementVNode("view",{class:"assignee-header"},[e.createElementVNode("view",{class:"assignee-avatar"},[m.assigneeAvatarUrl?(e.openBlock(),e.createElementBlock("image",{key:0,src:m.assigneeAvatarUrl,mode:"aspectFill",class:"avatar-img"},null,8,["src"])):(e.openBlock(),e.createBlock(n,{key:1,type:"person",size:"30",color:"#aaa"}))]),e.createElementVNode("view",{class:"assignee-info"},[e.createElementVNode("text",{class:"assignee-name"},e.toDisplayString(m.assigneeName),1),e.createElementVNode("text",{class:"assignee-phone"},"联系电话:"+e.toDisplayString(m.assigneePhone),1),e.createElementVNode("text",{class:"assignee-zone"},"归属区域:"+e.toDisplayString(m.assigneeZone),1)])])]))])):e.createCommentVNode("",!0),"progress"===o.value?(e.openBlock(),e.createElementBlock("view",{key:2,class:"tab-content"},[["wait_dispatch","wait_accept"].includes(m.statusKey)||0===I.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-state"},[e.createVNode(n,{type:"info",size:"40",color:"#ccc"}),e.createElementVNode("text",{class:"empty-text"},"服务尚未开始或暂无进度")])):(e.openBlock(),e.createElementBlock("view",{key:1,class:"timeline"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(I.value,((t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"tl-item",key:a},[e.createElementVNode("view",{class:"tl-dot"}),e.createElementVNode("view",{class:"tl-body"},[e.createElementVNode("text",{class:"tl-time"},e.toDisplayString(t.time),1),e.createElementVNode("text",{class:"tl-title"},e.toDisplayString(t.title),1),e.createElementVNode("text",{class:"tl-desc"},e.toDisplayString(t.desc),1),t.media&&t.media.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"tl-media"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.media,((a,l)=>(e.openBlock(),e.createElementBlock("view",{key:l,class:"media-item"},["image"===a.type?(e.openBlock(),e.createElementBlock("image",{key:0,mode:"aspectFill",src:a.url,class:"p-img",onClick:e=>((e,t)=>{const a=t.filter((e=>"image"===e.type)).map((e=>e.url));uni.previewImage({current:e,urls:a})})(a.url,t.media)},null,8,["src","onClick"])):"video"===a.type?(e.openBlock(),e.createElementBlock("view",{key:1,class:"p-video-box",onClick:e=>{return t=a.url,T.url=t,void(T.visible=!0);var t}},[e.createElementVNode("image",{src:"/static/video-placeholder.png",mode:"aspectFill",class:"p-img",style:{background:"#000"}}),e.createElementVNode("view",{class:"play-icon-overlay"},[e.createVNode(n,{type:"videocam-filled",size:"30",color:"#fff"})])],8,["onClick"])):e.createCommentVNode("",!0)])))),128))])):e.createCommentVNode("",!0)])])))),128))]))])):e.createCommentVNode("",!0),"log"===o.value?(e.openBlock(),e.createElementBlock("view",{key:3,class:"tab-content"},[0===M.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-state"},[e.createVNode(n,{type:"info",size:"40",color:"#ccc"}),e.createElementVNode("text",{class:"empty-text"},"暂无订单日志")])):(e.openBlock(),e.createElementBlock("view",{key:1,class:"timeline"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M.value,((t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"tl-item",key:a},[e.createElementVNode("view",{class:"tl-dot log-dot"}),e.createElementVNode("view",{class:"tl-body"},[e.createElementVNode("text",{class:"tl-time"},e.toDisplayString(t.time),1),e.createElementVNode("text",{class:"tl-title"},e.toDisplayString(t.title),1),e.createElementVNode("text",{class:"tl-desc"},e.toDisplayString(t.desc),1)])])))),128))]))])):e.createCommentVNode("",!0)])])),T.visible?(e.openBlock(),e.createElementBlock("view",{key:2,class:"video-preview-mask",onClick:e.withModifiers(D,["stop"])},[e.createElementVNode("video",{src:T.url,autoplay:"",controls:"",class:"preview-video",onClick:l[0]||(l[0]=e.withModifiers((()=>{}),["stop"]))},null,8,["src"]),e.createElementVNode("view",{class:"close-video-btn",onClick:e.withModifiers(D,["stop"])},[e.createVNode(n,{type:"closeempty",size:"24",color:"#fff"})])])):e.createCommentVNode("",!0),!r.value&&["wait_dispatch","wait_accept"].includes(m.statusKey)?(e.openBlock(),e.createElementBlock("view",{key:3,class:"cancel-bar safe-bottom"},[e.createElementVNode("button",{class:"cancel-order-btn",onClick:L},"取消订单")])):e.createCommentVNode("",!0),A.value?(e.openBlock(),e.createElementBlock("view",{key:4,class:"custom-modal"},[e.createElementVNode("view",{class:"modal-mask",onClick:z}),e.createElementVNode("view",{class:"modal-content"},[e.createElementVNode("view",{class:"modal-title"},"提示"),e.createElementVNode("view",{class:"modal-body"},[e.createElementVNode("view",{style:{"margin-bottom":"20rpx","font-size":"28rpx",color:"#666"}},"确定要取消订单 ["+e.toDisplayString(m.id)+"] 吗?",1),e.withDirectives(e.createElementVNode("textarea",{class:"cancel-input","onUpdate:modelValue":l[1]||(l[1]=e=>P.value=e),placeholder:"必填,请输入取消原因","placeholder-class":"ph-color","show-confirm-bar":!1},null,512),[[e.vModelText,P.value]])]),e.createElementVNode("view",{class:"modal-footer"},[e.createElementVNode("view",{class:"modal-btn btn-cancel",onClick:z},"取消"),e.createElementVNode("view",{class:"modal-btn btn-confirm",onClick:q},"确定")])])])):e.createCommentVNode("",!0)]);var s}}},[["__scopeId","data-v-b796b4fc"]]),O=i({__name:"index",setup(t){const a=["宠物接送","上门喂遛","上门洗护","宠物就医","综合服务"],l=e.reactive({name:"",contact:"",phone:"",address:"",serviceType:"",intro:""}),o=e=>{l.serviceType=a[e.detail.value]},n=()=>{l.name&&l.phone?(uni.showToast({title:"申请已提交,请等待审核",icon:"success"}),setTimeout((()=>uni.navigateBack()),1500)):uni.showToast({title:"请填写必要信息",icon:"none"})};return(t,s)=>(e.openBlock(),e.createElementBlock("view",{class:"store-apply-page"},[e.createElementVNode("view",{class:"hero-banner"},[e.createElementVNode("text",{class:"hero-title"},"商家入驻申请"),e.createElementVNode("text",{class:"hero-desc"},"加入我们,共享宠物服务市场")]),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label"},"商家名称"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":s[0]||(s[0]=e=>l.name=e),placeholder:"请输入商家名称"},null,512),[[e.vModelText,l.name]])]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label"},"联系人"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":s[1]||(s[1]=e=>l.contact=e),placeholder:"请输入联系人姓名"},null,512),[[e.vModelText,l.contact]])]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label"},"联系电话"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":s[2]||(s[2]=e=>l.phone=e),type:"number",placeholder:"请输入联系电话"},null,512),[[e.vModelText,l.phone]])]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label"},"经营地址"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":s[3]||(s[3]=e=>l.address=e),placeholder:"请输入经营地址"},null,512),[[e.vModelText,l.address]])]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label"},"服务类型"),e.createElementVNode("picker",{range:a,onChange:o},[e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(l.serviceType||"请选择"),1)],32)]),e.createElementVNode("view",{class:"form-item column"},[e.createElementVNode("text",{class:"form-label"},"商家简介"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":s[4]||(s[4]=e=>l.intro=e),placeholder:"请简要介绍商家情况"},null,512),[[e.vModelText,l.intro]])])]),e.createElementVNode("button",{class:"submit-btn",onClick:n},"提交申请")]))}},[["__scopeId","data-v-e14e45db"]]),K=i({__name:"index",setup(a){const l=e.ref([]),n=e.ref(""),r=e.ref(1),i=e.ref(10),d=e.ref(!0),m=async(e=!1)=>{try{uni.showNavigationBarLoading();const t=await(a={pageNum:r.value,pageSize:i.value,keyword:n.value},V({url:"/archieves/pet/list",method:"get",params:a})),o=(null==t?void 0:t.rows)||[];l.value=e?[...l.value,...o]:o,d.value=l.value.length<((null==t?void 0:t.total)||0)}catch(o){t("error","at pages/my/pet/list/index.vue:72","获取宠物列表失败:",o)}finally{uni.hideNavigationBarLoading(),uni.stopPullDownRefresh()}var a};o((()=>{r.value=1,m()})),c((()=>{r.value=1,m()})),s((()=>{d.value&&(r.value++,m(!0))}));const v=()=>{r.value=1,m()},p=()=>uni.navigateTo({url:"/pages/my/pet/add/index"}),g=e=>uni.navigateTo({url:`/pages/my/pet/edit/index?id=${e.id}`}),N=e=>{uni.showModal({title:"提示",content:"确认删除该宠物档案吗?",success:async t=>{if(t.confirm)try{uni.showLoading({title:"处理中..."}),await(a=e.id,V({url:"/archieves/pet/"+a,method:"delete"})),uni.hideLoading(),uni.showToast({title:"删除成功",icon:"success"}),m()}catch(l){uni.hideLoading()}var a}})};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"pet-list-page"},[e.createVNode(u,{title:"宠物档案"}),e.createElementVNode("view",{class:"action-bar"},[e.createElementVNode("view",{class:"search-box"},[e.createElementVNode("text",{class:"search-icon"},"🔍"),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":a[0]||(a[0]=e=>n.value=e),placeholder:"搜索宠物名/主人",class:"search-input","confirm-type":"search",onConfirm:v},null,544),[[e.vModelText,n.value]])]),e.createElementVNode("view",{class:"add-btn",onClick:p},"+ 新增档案")]),e.createElementVNode("view",{class:"list-container"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"pet-card",key:t.id,onClick:e=>(e=>{g(e)})(t)},[e.createElementVNode("image",{src:t.avatarUrl||"/static/default-avatar.png",class:"pet-photo",mode:"aspectFill"},null,8,["src"]),e.createElementVNode("view",{class:"card-info"},[e.createElementVNode("view",{class:"info-top"},[e.createElementVNode("text",{class:"pet-name"},e.toDisplayString(t.name),1),e.createElementVNode("text",{class:"owner-name"},e.toDisplayString(t.ownerName||"-"),1)]),e.createElementVNode("text",{class:"pet-meta"},e.toDisplayString(t.breed||"-")+" · "+e.toDisplayString(t.age||0)+"岁",1),e.createElementVNode("view",{class:"health-overview"},[e.createElementVNode("text",{class:"health-badge"},e.toDisplayString(t.healthStatus||"健康"),1),e.createElementVNode("text",{class:"vaccine-info"},"疫苗: "+e.toDisplayString(t.vaccineStatus||"无"),1)]),e.createElementVNode("view",{class:"card-footer"},[e.createElementVNode("view",{class:"action-btn-group"},[e.createElementVNode("view",{class:"btn-item detail",onClick:e.withModifiers((e=>(e=>uni.navigateTo({url:`/pages/my/pet/detail/index?id=${e.id}`}))(t)),["stop"])},"详情",8,["onClick"]),e.createElementVNode("view",{class:"btn-item edit",onClick:e.withModifiers((e=>g(t)),["stop"])},"编辑",8,["onClick"]),e.createElementVNode("view",{class:"btn-item delete",onClick:e.withModifiers((e=>N(t)),["stop"])},"删除",8,["onClick"])])])])],8,["onClick"])))),128)),0===l.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,style:{"text-align":"center",color:"#999",padding:"50rpx 0","font-size":"28rpx"}}," 暂无宠物数据 ")):e.createCommentVNode("",!0)])]))}},[["__scopeId","data-v-1948596f"]]);function R(e){return V({url:"/system/dict/data/type/"+e,method:"get"})}function H(e){return new Promise(((t,a)=>{const l=uni.getStorageSync("token")||"";b((()=>Promise.resolve().then((()=>g)))).then((({BASE_URL:o,DEFAULT_HEADERS:n})=>{uni.uploadFile({url:o+"/resource/oss/upload",filePath:e,name:"file",header:{Authorization:l?`Bearer ${l}`:"",...n},success:e=>{const l=JSON.parse(e.data);200===l.code?t(l.data):(uni.showToast({title:l.msg||"上传失败",icon:"none"}),a(l.msg))},fail:e=>{uni.showToast({title:"网络异常",icon:"none"}),a(e)}})})).catch(a)}))}const j={houseTypeOptions:[{label:"楼梯",value:"stairs"},{label:"电梯",value:"elevator"}],entryMethodOptions:[{label:"密码开门",value:"password"},{label:"钥匙开门",value:"key"}]},G=i({__name:"index",setup(a){const l=e.ref(!0),o=e.ref(!1),s=e.ref(!1),c=e.ref(!1),r=e.ref(!1),i=e.ref(!1),d=e.ref(!1),m=e.ref(!1),v=e.ref(!1),p=e.ref(!1),g=e.ref(!1),N=e.ref(""),E=[{label:"猫",value:1},{label:"狗",value:2},{label:"其他",value:3}],f=[{label:"未知",value:0},{label:"公",value:1},{label:"母",value:2}],w=[{label:"小型(0-10kg)",value:"small"},{label:"中型(10-25kg)",value:"medium"},{label:"大型(25kg+)",value:"large"}],{houseTypeOptions:h,entryMethodOptions:k}=j,y=["健康","亚健康","疾病"],x=["无","已打1次","已打2次","已打3次"],b=[{label:"否",value:0},{label:"是",value:1}],B=e.ref([]),C=e.ref([]),S=e.ref(null),_=e.ref(""),T=e.ref(""),D=e.reactive({id:"",avatar:"",name:"",userId:"",type:1,breed:"",gender:0,age:"",weight:"",size:"",arrivalTime:"",houseType:"",entryMethod:"",entryPassword:"",keyLocation:"",personality:"",cutePersonality:"",healthStatus:"健康",aggression:0,vaccineStatus:"无",medicalHistory:"",allergies:"",remark:""});n((async e=>{e.id?(S.value=e.id,await I(),await M()):(uni.showToast({title:"参数错误",icon:"none"}),setTimeout((()=>uni.navigateBack()),1500))}));const I=async()=>{try{const[e,t]=await Promise.all([z({status:0}),R("sys_pet_breed")]),a=Array.isArray(e)?e:(null==e?void 0:e.data)||[];B.value=a.map((e=>({id:e.id||e.userId,name:e.name||e.customerName})));const l=Array.isArray(t)?t:(null==t?void 0:t.data)||[];C.value=l.map((e=>e.dictLabel||e.dictValue||e.label||e.value))}catch(e){t("error","at pages/my/pet/edit/index.vue:244","初始化数据失败",e)}},M=async()=>{try{l.value=!0;const e=await F(S.value);if(e){const t=e.data||e;Object.assign(D,t),N.value=t.avatarUrl||""}}catch(e){t("error","at pages/my/pet/edit/index.vue:257","获取宠物详情失败",e)}finally{l.value=!1}},A=e.computed((()=>{var e;return(null==(e=E.find((e=>e.value===D.type)))?void 0:e.label)||"请选择"})),P=e.computed((()=>{const e=B.value.find((e=>String(e.id)===String(D.userId)));return e?e.name:"请选择主人"})),U=e.computed((()=>{var e;return(null==(e=f.find((e=>e.value===D.gender)))?void 0:e.label)||"未知"})),q=e.computed((()=>{var e;return(null==(e=w.find((e=>e.value===D.size)))?void 0:e.label)||"请选择"})),$=e.computed((()=>{var e;return(null==(e=h.find((e=>e.value===D.houseType)))?void 0:e.label)||"请选择"})),O=e.computed((()=>{var e;return(null==(e=k.find((e=>e.value===D.entryMethod)))?void 0:e.label)||"请选择"})),K=e.computed((()=>{var e;return(null==(e=b.find((e=>e.value===D.aggression)))?void 0:e.label)||"否"})),G=e.computed((()=>{if(!_.value.trim())return C.value;const e=_.value.toLowerCase().trim();return C.value.filter((t=>t.toLowerCase().includes(e)))})),W=()=>{g.value=!1,_.value="",T.value=""},J=()=>{uni.chooseImage({count:1,sizeType:["compressed"],sourceType:["album","camera"],success:async e=>{try{uni.showLoading({title:"上传中..."});const t=await H(e.tempFilePaths[0]);D.avatar=t.ossId,N.value=t.url,uni.hideLoading(),uni.showToast({title:"头像上传成功",icon:"success"})}catch(a){uni.hideLoading(),t("error","at pages/my/pet/edit/index.vue:309","上传头像失败",a)}}})},Z=()=>{const e=T.value.trim();e&&(D.breed=e,C.value.includes(e)||C.value.push(e),g.value=!1,_.value="",T.value="")},X=async()=>{if(!D.name)return uni.showToast({title:"请输入宠物名称",icon:"none"});if(!D.userId)return uni.showToast({title:"请选择所属主人",icon:"none"});if(!D.breed)return uni.showToast({title:"请输入或选择品种",icon:"none"});if(!D.size)return uni.showToast({title:"请选择体型",icon:"none"});if(!D.age)return uni.showToast({title:"请输入年龄",icon:"none"});try{uni.showLoading({title:"保存中"}),await(e=D,V({url:"/archieves/pet",method:"put",data:e})),uni.hideLoading(),uni.showToast({title:"保存成功",icon:"success"}),setTimeout((()=>uni.navigateBack()),1e3)}catch(t){uni.hideLoading()}var e};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"pet-edit-page"},[e.createVNode(u,{title:"编辑宠物档案"}),e.createElementVNode("view",{class:"avatar-section",onClick:J},[e.createElementVNode("image",{src:N.value||"/static/images/profile.png",class:"avatar-img",mode:"aspectFill"},null,8,["src"]),e.createElementVNode("view",{class:"avatar-tip"},"点击修改宠物头像")]),l.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"loading-state"},[e.createElementVNode("view",{class:"spinner"}),e.createElementVNode("text",{class:"loading-txt"},"加载中...")])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("view",{class:"section-title"},"基础信息"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"宠物名称"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[0]||(a[0]=e=>D.name=e),placeholder:"请输入宠物名称"},null,512),[[e.vModelText,D.name]])]),e.createElementVNode("view",{class:"form-item",onClick:a[1]||(a[1]=e=>o.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"宠物类型"),e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(A.value),1),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[2]||(a[2]=e=>s.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"所属主人"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!D.userId}])},e.toDisplayString(P.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[3]||(a[3]=e=>g.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"品种"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!D.breed}])},e.toDisplayString(D.breed||"可选择或自填品种"),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[4]||(a[4]=e=>c.value=!0)},[e.createElementVNode("text",{class:"form-label"},"性别"),e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(U.value),1),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[5]||(a[5]=e=>r.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"体型"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!D.size}])},e.toDisplayString(q.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"年龄(岁)"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[6]||(a[6]=e=>D.age=e),type:"number",placeholder:"请输入年龄"},null,512),[[e.vModelText,D.age]])]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"体重(kg)"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[7]||(a[7]=e=>D.weight=e),type:"digit",placeholder:"请输入体重"},null,512),[[e.vModelText,D.weight]])])]),e.createElementVNode("view",{class:"section-title"},"性格特征"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label"},"性格关键词"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[8]||(a[8]=e=>D.personality=e),placeholder:"例如活泼、粘人"},null,512),[[e.vModelText,D.personality]])]),e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label"},"萌宠性格描述"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[9]||(a[9]=e=>D.cutePersonality=e),placeholder:"详细描述宠物的性格"},null,512),[[e.vModelText,D.cutePersonality]])])]),e.createElementVNode("view",{class:"section-title"},"家庭信息"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item",onClick:a[10]||(a[10]=e=>i.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"房屋类型"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!D.houseType}])},e.toDisplayString($.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[11]||(a[11]=e=>d.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"入门方式"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!D.entryMethod}])},e.toDisplayString(O.value),3),e.createElementVNode("view",{class:"right-arrow"})]),"password"===D.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:0,class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"门锁密码"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[12]||(a[12]=e=>D.entryPassword=e),placeholder:"请输入门锁密码"},null,512),[[e.vModelText,D.entryPassword]])])):e.createCommentVNode("",!0),"key"===D.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:1,class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"钥匙存放处"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[13]||(a[13]=e=>D.keyLocation=e),placeholder:"请输入取钥匙位置"},null,512),[[e.vModelText,D.keyLocation]])])):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"section-title"},"健康状况"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item",onClick:a[14]||(a[14]=e=>m.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"健康状态"),e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(D.healthStatus||"请选择"),1),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[15]||(a[15]=e=>v.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"疫苗接种"),e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(D.vaccineStatus||"请选择"),1),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[16]||(a[16]=e=>p.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"攻击倾向"),e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(K.value),1),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label require"},"既往病史"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[17]||(a[17]=e=>D.medicalHistory=e),placeholder:"如有病史请务必记录"},null,512),[[e.vModelText,D.medicalHistory]])]),e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label require"},"过敏史"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[18]||(a[18]=e=>D.allergies=e),placeholder:"如有过敏源请务必记录"},null,512),[[e.vModelText,D.allergies]])]),e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label"},"补充备注"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[19]||(a[19]=e=>D.remark=e),placeholder:"请输入其他备注信息"},null,512),[[e.vModelText,D.remark]])])]),e.createElementVNode("view",{class:"footer-bar"},[e.createElementVNode("button",{class:"save-btn",onClick:X},"保存修改")]),g.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"center-modal-mask",onClick:W},[e.createElementVNode("view",{class:"center-modal-content",onClick:a[22]||(a[22]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"modal-header"},[e.createElementVNode("view",{class:"search-box"},[e.createElementVNode("view",{class:"search-icon"}),e.withDirectives(e.createElementVNode("input",{class:"search-input","onUpdate:modelValue":a[20]||(a[20]=e=>_.value=e),placeholder:"搜索品种...",focus:""},null,512),[[e.vModelText,_.value]])])]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"customer-list-scroll"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(G.value,((t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"customer-item",key:a,onClick:e=>{return a=t,D.breed=a,g.value=!1,void(_.value="");var a}},[e.createElementVNode("text",{class:"name"},e.toDisplayString(t),1),D.breed===t?(e.openBlock(),e.createElementBlock("view",{key:0,class:"checkmark"})):e.createCommentVNode("",!0)],8,["onClick"])))),128))]),e.createElementVNode("view",{class:"breed-footer"},[e.withDirectives(e.createElementVNode("input",{class:"breed-custom-input","onUpdate:modelValue":a[21]||(a[21]=e=>T.value=e),placeholder:"或手动录入新品种"},null,512),[[e.vModelText,T.value]]),e.createElementVNode("view",{class:"add-confirm-btn",onClick:Z},"更新")])])])):e.createCommentVNode("",!0),e.createVNode(L,{modelValue:o.value,"onUpdate:modelValue":a[23]||(a[23]=e=>o.value=e),title:"宠物类型",options:E,value:D.type,onSelect:a[24]||(a[24]=e=>D.type=e.value)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:s.value,"onUpdate:modelValue":a[25]||(a[25]=e=>s.value=e),title:"所属主人",options:B.value,labelKey:"name",valueKey:"id",value:D.userId,onSelect:a[26]||(a[26]=e=>D.userId=e.id)},null,8,["modelValue","options","value"]),e.createVNode(L,{modelValue:c.value,"onUpdate:modelValue":a[27]||(a[27]=e=>c.value=e),title:"选择性别",options:f,value:D.gender,onSelect:a[28]||(a[28]=e=>D.gender=e.value)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:r.value,"onUpdate:modelValue":a[29]||(a[29]=e=>r.value=e),title:"选择体型",options:w,value:D.size,onSelect:a[30]||(a[30]=e=>D.size=e.value)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:i.value,"onUpdate:modelValue":a[31]||(a[31]=e=>i.value=e),title:"房屋类型",options:e.unref(h),value:D.houseType,onSelect:a[32]||(a[32]=e=>D.houseType=e.value)},null,8,["modelValue","options","value"]),e.createVNode(L,{modelValue:d.value,"onUpdate:modelValue":a[33]||(a[33]=e=>d.value=e),title:"入门方式",options:e.unref(k),value:D.entryMethod,onSelect:a[34]||(a[34]=e=>D.entryMethod=e.value)},null,8,["modelValue","options","value"]),e.createVNode(L,{modelValue:m.value,"onUpdate:modelValue":a[35]||(a[35]=e=>m.value=e),title:"当前健康状态",options:y,value:D.healthStatus,onSelect:a[36]||(a[36]=e=>D.healthStatus=e)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:v.value,"onUpdate:modelValue":a[37]||(a[37]=e=>v.value=e),title:"疫苗接种状态",options:x,value:D.vaccineStatus,onSelect:a[38]||(a[38]=e=>D.vaccineStatus=e)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:p.value,"onUpdate:modelValue":a[39]||(a[39]=e=>p.value=e),title:"是否有攻击倾向",options:b,value:D.aggression,onSelect:a[40]||(a[40]=e=>D.aggression=e.value)},null,8,["modelValue","value"])],64))]))}},[["__scopeId","data-v-7fc7b40c"]]),W=i({__name:"index",setup(a){const l=e.ref(!1),o=e.ref(!1),s=e.ref(!1),c=e.ref(!1),r=e.ref(!1),i=e.ref(!1),d=e.ref(!1),m=e.ref(!1),v=e.ref(!1),p=e.ref(""),g=[{label:"未知",value:0},{label:"公",value:1},{label:"母",value:2}],N=[{label:"小型(0-10kg)",value:"small"},{label:"中型(10-25kg)",value:"medium"},{label:"大型(25kg+)",value:"large"}],{houseTypeOptions:E,entryMethodOptions:f}=j,w=["健康","亚健康","疾病"],h=["无","已打1次","已打2次","已打3次"],k=[{label:"否",value:0},{label:"是",value:1}],y=e.ref([]),x=e.ref([]),b=e.ref(""),B=e.ref(""),C=e.ref("");n((async()=>{await(async()=>{try{const e=await z({status:0}),t=Array.isArray(e)?e:(null==e?void 0:e.data)||[];y.value=t.map((e=>({id:e.id||e.userId,name:e.name||e.customerName,phone:e.phone||e.contactPhoneNumber||e.phone})))}catch(e){t("error","at pages/my/pet/add/index.vue:230","获取主人列表失败",e)}})();try{const e=await R("sys_pet_breed"),t=Array.isArray(e)?e:(null==e?void 0:e.data)||[];x.value=t.map((e=>e.dictLabel||e.dictValue||e.label||e.value))}catch(e){t("error","at pages/my/pet/add/index.vue:239","获取宠物品种字典失败",e)}}));const S=e.reactive({avatar:"",name:"",userId:"",breed:"",gender:0,age:"",weight:"",size:"",houseType:"",entryMethod:"",entryPassword:"",keyLocation:"",personality:"",cutePersonality:"",healthStatus:"健康",aggression:0,vaccineStatus:"无",medicalHistory:"",allergies:"",remark:""}),_=e.computed((()=>{const e=y.value.find((e=>e.id===S.userId));return e?`${e.name} - ${e.phone}`:"请选择主人"})),T=e.computed((()=>{var e;return(null==(e=g.find((e=>e.value===S.gender)))?void 0:e.label)||"请选择"})),D=e.computed((()=>{var e;return(null==(e=N.find((e=>e.value===S.size)))?void 0:e.label)||"请选择"})),I=e.computed((()=>{var e;return(null==(e=E.find((e=>e.value===S.houseType)))?void 0:e.label)||"请选择"})),M=e.computed((()=>{var e;return(null==(e=f.find((e=>e.value===S.entryMethod)))?void 0:e.label)||"请选择"})),A=e.computed((()=>{var e;return(null==(e=k.find((e=>e.value===S.aggression)))?void 0:e.label)||"请选择"})),P=e.computed((()=>{if(!b.value)return y.value;const e=b.value.toLowerCase().trim();return y.value.filter((t=>t.name&&t.name.toLowerCase().includes(e)||t.phone&&t.phone.includes(e)))})),U=e.computed((()=>{if(!B.value.trim())return x.value;const e=B.value.toLowerCase().trim();return x.value.filter((t=>t.toLowerCase().includes(e)))})),F=()=>{v.value=!1,B.value="",C.value=""},q=()=>{const e=C.value.trim();e&&(S.breed=e,x.value.includes(e)||x.value.push(e),v.value=!1,B.value="",C.value="")},$=()=>{uni.chooseImage({count:1,sizeType:["compressed"],sourceType:["album","camera"],success:async e=>{try{uni.showLoading({title:"上传中..."});const t=await H(e.tempFilePaths[0]);S.avatar=t.ossId,p.value=t.url,uni.hideLoading(),uni.showToast({title:"头像上传成功",icon:"success"})}catch(a){uni.hideLoading(),t("error","at pages/my/pet/add/index.vue:323","上传头像失败",a)}}})},O=async()=>{if(!S.name)return uni.showToast({title:"请输入宠物名称",icon:"none"});if(!S.userId)return uni.showToast({title:"请选择所属主人",icon:"none"});if(!S.breed)return uni.showToast({title:"请输入品种",icon:"none"});if(!S.size)return uni.showToast({title:"请选择体型",icon:"none"});if(!S.weight)return uni.showToast({title:"请输入体重",icon:"none"});if(!S.age)return uni.showToast({title:"请输入年龄",icon:"none"});if(!S.houseType)return uni.showToast({title:"请选择家庭房屋类型",icon:"none"});if(!S.entryMethod)return uni.showToast({title:"请选择入门方式",icon:"none"});if(!S.healthStatus)return uni.showToast({title:"请选择健康状态",icon:"none"});if(!S.vaccineStatus)return uni.showToast({title:"请选择疫苗情况",icon:"none"});if(!S.medicalHistory)return uni.showToast({title:"请输入既往病史",icon:"none"});if(!S.allergies)return uni.showToast({title:"请输入过敏史",icon:"none"});try{uni.showLoading({title:"保存中"}),await(e=S,V({url:"/archieves/pet",method:"post",data:e})),uni.hideLoading(),uni.showToast({title:"新增成功",icon:"success"}),setTimeout((()=>uni.navigateBack()),1e3)}catch(t){uni.hideLoading(),uni.showToast({title:"保存失败",icon:"none"})}var e};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"pet-add-page"},[e.createVNode(u,{title:"新增宠物档案"}),e.createElementVNode("view",{class:"avatar-section",onClick:$},[e.createElementVNode("image",{src:p.value||"/static/images/profile.png",class:"avatar-img",mode:"aspectFill"},null,8,["src"]),e.createElementVNode("view",{class:"avatar-tip"},"点击上传宠物头像")]),e.createElementVNode("view",{class:"section-title"},"基础信息"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"宠物名称"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[0]||(a[0]=e=>S.name=e),placeholder:"请输入宠物名称"},null,512),[[e.vModelText,S.name]])]),e.createElementVNode("view",{class:"form-item",onClick:a[1]||(a[1]=e=>m.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"所属主人"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!S.userId}])},e.toDisplayString(_.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[2]||(a[2]=e=>v.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"品种"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!S.breed}])},e.toDisplayString(S.breed||"可选择或自填品种"),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[3]||(a[3]=e=>l.value=!0)},[e.createElementVNode("text",{class:"form-label"},"性别"),e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(T.value),1),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[4]||(a[4]=e=>o.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"体型"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!S.size}])},e.toDisplayString(D.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"年龄(岁)"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[5]||(a[5]=e=>S.age=e),type:"number",placeholder:"请输入年龄"},null,512),[[e.vModelText,S.age]])]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"体重(kg)"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[6]||(a[6]=e=>S.weight=e),type:"digit",placeholder:"请输入体重"},null,512),[[e.vModelText,S.weight]])])]),e.createElementVNode("view",{class:"section-title"},"性格特征"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label"},"性格关键词"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[7]||(a[7]=e=>S.personality=e),placeholder:"例如活泼、粘人"},null,512),[[e.vModelText,S.personality]])]),e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label"},"萌宠性格描述"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[8]||(a[8]=e=>S.cutePersonality=e),placeholder:"详细描述宠物的性格"},null,512),[[e.vModelText,S.cutePersonality]])])]),e.createElementVNode("view",{class:"section-title"},"家庭信息"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item",onClick:a[9]||(a[9]=e=>s.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"房屋类型"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!S.houseType}])},e.toDisplayString(I.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[10]||(a[10]=e=>c.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"入门方式"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!S.entryMethod}])},e.toDisplayString(M.value),3),e.createElementVNode("view",{class:"right-arrow"})]),"password"===S.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:0,class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"门锁密码"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[11]||(a[11]=e=>S.entryPassword=e),placeholder:"请输入门锁密码"},null,512),[[e.vModelText,S.entryPassword]])])):e.createCommentVNode("",!0),"key"===S.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:1,class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"钥匙存放处"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[12]||(a[12]=e=>S.keyLocation=e),placeholder:"请输入取钥匙位置"},null,512),[[e.vModelText,S.keyLocation]])])):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"section-title"},"健康状况"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item",onClick:a[13]||(a[13]=e=>r.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"健康状态"),e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(S.healthStatus||"请选择"),1),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[14]||(a[14]=e=>i.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"疫苗接种"),e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(S.vaccineStatus||"请选择"),1),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[15]||(a[15]=e=>d.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"攻击倾向"),e.createElementVNode("view",{class:"picker-value"},e.toDisplayString(A.value),1),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label require"},"既往病史"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[16]||(a[16]=e=>S.medicalHistory=e),placeholder:"如有病史请务必记录"},null,512),[[e.vModelText,S.medicalHistory]])]),e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label require"},"过敏史"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[17]||(a[17]=e=>S.allergies=e),placeholder:"如有过敏源请务必记录"},null,512),[[e.vModelText,S.allergies]])]),e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label"},"补充备注"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[18]||(a[18]=e=>S.remark=e),placeholder:"请输入其他备注信息"},null,512),[[e.vModelText,S.remark]])])]),e.createElementVNode("view",{class:"footer-bar"},[e.createElementVNode("button",{class:"save-btn",onClick:O},"保存档案")]),m.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"center-modal-mask",onClick:a[23]||(a[23]=e=>m.value=!1)},[e.createElementVNode("view",{class:"center-modal-content",onClick:a[22]||(a[22]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"modal-header"},[e.createElementVNode("view",{class:"search-box"},[e.createElementVNode("view",{class:"search-icon"}),e.withDirectives(e.createElementVNode("input",{class:"search-input","onUpdate:modelValue":a[19]||(a[19]=e=>b.value=e),placeholder:"搜索主人姓名或手机号",focus:""},null,512),[[e.vModelText,b.value]]),b.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"clear-icon",onClick:a[20]||(a[20]=e=>b.value="")})):e.createCommentVNode("",!0)])]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"customer-list-scroll"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"customer-item",key:t.id,onClick:e=>{return a=t,S.userId=a.id,m.value=!1,void(b.value="");var a}},[e.createElementVNode("view",{class:"item-info"},[e.createElementVNode("text",{class:"name"},e.toDisplayString(t.name),1),e.createElementVNode("text",{class:"phone"},e.toDisplayString(t.phone),1)]),S.userId===t.id?(e.openBlock(),e.createElementBlock("view",{key:0,class:"checkmark"})):e.createCommentVNode("",!0)],8,["onClick"])))),128)),0===P.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-tip"},"未找到匹配的主人")):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"modal-footer"},[e.createElementVNode("button",{class:"modal-close-btn",onClick:a[21]||(a[21]=e=>m.value=!1)},"关闭")])])])):e.createCommentVNode("",!0),v.value?(e.openBlock(),e.createElementBlock("view",{key:1,class:"center-modal-mask",onClick:F},[e.createElementVNode("view",{class:"center-modal-content",onClick:a[26]||(a[26]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"modal-header"},[e.createElementVNode("view",{class:"search-box"},[e.createElementVNode("view",{class:"search-icon"}),e.withDirectives(e.createElementVNode("input",{class:"search-input","onUpdate:modelValue":a[24]||(a[24]=e=>B.value=e),placeholder:"查找品种...",focus:""},null,512),[[e.vModelText,B.value]])])]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"customer-list-scroll"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(U.value,((t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"customer-item",key:a,onClick:e=>{return a=t,S.breed=a,v.value=!1,void(B.value="");var a}},[e.createElementVNode("text",{class:"name"},e.toDisplayString(t),1),S.breed===t?(e.openBlock(),e.createElementBlock("view",{key:0,class:"checkmark"})):e.createCommentVNode("",!0)],8,["onClick"])))),128))]),e.createElementVNode("view",{class:"breed-footer"},[e.withDirectives(e.createElementVNode("input",{class:"breed-custom-input","onUpdate:modelValue":a[25]||(a[25]=e=>C.value=e),placeholder:"或手动录入新品种"},null,512),[[e.vModelText,C.value]]),e.createElementVNode("view",{class:"add-confirm-btn",onClick:q},"添加")])])])):e.createCommentVNode("",!0),e.createVNode(L,{modelValue:l.value,"onUpdate:modelValue":a[27]||(a[27]=e=>l.value=e),title:"选择性别",options:g,value:S.gender,onSelect:a[28]||(a[28]=e=>S.gender=e.value)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:o.value,"onUpdate:modelValue":a[29]||(a[29]=e=>o.value=e),title:"选择体型",options:N,value:S.size,onSelect:a[30]||(a[30]=e=>S.size=e.value)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:s.value,"onUpdate:modelValue":a[31]||(a[31]=e=>s.value=e),title:"房屋类型",options:e.unref(E),value:S.houseType,onSelect:a[32]||(a[32]=e=>S.houseType=e.value)},null,8,["modelValue","options","value"]),e.createVNode(L,{modelValue:c.value,"onUpdate:modelValue":a[33]||(a[33]=e=>c.value=e),title:"入门方式",options:e.unref(f),value:S.entryMethod,onSelect:a[34]||(a[34]=e=>S.entryMethod=e.value)},null,8,["modelValue","options","value"]),e.createVNode(L,{modelValue:r.value,"onUpdate:modelValue":a[35]||(a[35]=e=>r.value=e),title:"当前健康状态",options:w,value:S.healthStatus,onSelect:a[36]||(a[36]=e=>S.healthStatus=e)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:i.value,"onUpdate:modelValue":a[37]||(a[37]=e=>i.value=e),title:"疫苗接种状态",options:h,value:S.vaccineStatus,onSelect:a[38]||(a[38]=e=>S.vaccineStatus=e)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:d.value,"onUpdate:modelValue":a[39]||(a[39]=e=>d.value=e),title:"是否有攻击倾向",options:k,value:S.aggression,onSelect:a[40]||(a[40]=e=>S.aggression=e.value)},null,8,["modelValue","value"])]))}},[["__scopeId","data-v-b7dfe93e"]]),J=i({__name:"index",setup(a){const l=e.ref(null),o=e.ref({}),s={small:"小型",medium:"中型",large:"大型"},{houseTypeOptions:c,entryMethodOptions:r}=j;n((e=>{e.id&&(l.value=e.id,i())}));const i=async()=>{try{uni.showLoading({title:"加载中..."});const e=await F(l.value);o.value=e||{},uni.hideLoading()}catch(e){uni.hideLoading(),t("error","at pages/my/pet/detail/index.vue:152","获取详情失败",e)}},d=e.computed((()=>s[o.value.size]||"未知体型")),m=e.computed((()=>{const e=c.find((e=>e.value===o.value.houseType));return e?e.label:"未记录"})),v=e.computed((()=>{const e=r.find((e=>e.value===o.value.entryMethod));return e?e.label:"未记录"})),p=e.computed((()=>{const e=o.value.healthStatus;return"健康"===e?"green":"疾病"===e?"red":"orange"})),g=()=>{uni.navigateTo({url:`/pages/my/pet/edit/index?id=${l.value}`})};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"pet-detail-page"},[e.createVNode(u,{title:"宠物档案详情",bgColor:"#ffecd2",color:"#333"}),e.createElementVNode("view",{class:"pet-hero"},[e.createElementVNode("view",{class:"hero-bg"}),e.createElementVNode("view",{class:"hero-content"},[e.createElementVNode("image",{src:o.value.avatarUrl||o.value.avatar||"https://images.unsplash.com/photo-1552053831-71594a27632d?q=80&w=600&auto=format&fit=crop",class:"hero-avatar",mode:"aspectFill"},null,8,["src"]),e.createElementVNode("view",{class:"hero-main"},[e.createElementVNode("text",{class:"pet-name"},e.toDisplayString(o.value.name||"加载中..."),1),e.createElementVNode("view",{class:"tag-list"},[e.createElementVNode("text",{class:e.normalizeClass(["gender-icon",1===o.value.gender?"male":"female"])},e.toDisplayString(1===o.value.gender?"♂":"♀"),3),e.createElementVNode("text",{class:"size-tag"},e.toDisplayString(d.value),1)])]),e.createElementVNode("text",{class:"pet-summary"},e.toDisplayString(o.value.breed)+" · "+e.toDisplayString(o.value.age||0)+"岁 · "+e.toDisplayString(o.value.weight||0)+"kg",1)])]),e.createElementVNode("view",{class:"detail-container"},[e.createElementVNode("view",{class:"section-card"},[e.createElementVNode("view",{class:"section-header"},[e.createElementVNode("view",{class:"title-line"}),e.createElementVNode("text",{class:"section-title"},"基础信息")]),e.createElementVNode("view",{class:"info-grid"},[e.createElementVNode("view",{class:"info-item"},[e.createElementVNode("text",{class:"label"},"所属主人"),e.createElementVNode("text",{class:"value"},e.toDisplayString(o.value.ownerName||o.value.userName||o.value.customerName||"-"),1)]),e.createElementVNode("view",{class:"info-item"},[e.createElementVNode("text",{class:"label"},"主人电话"),e.createElementVNode("text",{class:"value"},e.toDisplayString(o.value.ownerPhone||o.value.phonenumber||"-"),1)]),e.createElementVNode("view",{class:"info-item col-2"},[e.createElementVNode("text",{class:"label"},"性格关键词"),e.createElementVNode("text",{class:"value"},e.toDisplayString(o.value.personality||"无"),1)]),e.createElementVNode("view",{class:"info-item col-2"},[e.createElementVNode("text",{class:"label"},"萌宠性格"),e.createElementVNode("text",{class:"value block"},e.toDisplayString(o.value.cutePersonality||"暂无详细描述"),1)])])]),e.createElementVNode("view",{class:"section-card"},[e.createElementVNode("view",{class:"section-header"},[e.createElementVNode("view",{class:"title-line"}),e.createElementVNode("text",{class:"section-title"},"家庭信息")]),e.createElementVNode("view",{class:"info-grid"},[e.createElementVNode("view",{class:"info-item"},[e.createElementVNode("text",{class:"label"},"房屋类型"),e.createElementVNode("text",{class:"value"},e.toDisplayString(m.value),1)]),e.createElementVNode("view",{class:"info-item"},[e.createElementVNode("text",{class:"label"},"入门方式"),e.createElementVNode("text",{class:"value"},e.toDisplayString(v.value),1)]),"password"===o.value.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:0,class:"info-item col-2"},[e.createElementVNode("text",{class:"label"},"门锁密码"),e.createElementVNode("text",{class:"value highlight"},e.toDisplayString(o.value.entryPassword||"-"),1)])):e.createCommentVNode("",!0),"key"===o.value.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:1,class:"info-item col-2"},[e.createElementVNode("text",{class:"label"},"钥匙存放处"),e.createElementVNode("text",{class:"value"},e.toDisplayString(o.value.keyLocation||"-"),1)])):e.createCommentVNode("",!0)])]),e.createElementVNode("view",{class:"section-card"},[e.createElementVNode("view",{class:"section-header"},[e.createElementVNode("view",{class:"title-line"}),e.createElementVNode("text",{class:"section-title"},"健康状况")]),e.createElementVNode("view",{class:"info-grid"},[e.createElementVNode("view",{class:"info-item"},[e.createElementVNode("text",{class:"label"},"健康状态"),e.createElementVNode("text",{class:e.normalizeClass(["value",p.value])},e.toDisplayString(o.value.healthStatus||"未知"),3)]),e.createElementVNode("view",{class:"info-item"},[e.createElementVNode("text",{class:"label"},"疫苗情况"),e.createElementVNode("text",{class:"value"},e.toDisplayString(o.value.vaccineStatus||"未记录"),1)]),e.createElementVNode("view",{class:"info-item"},[e.createElementVNode("text",{class:"label"},"攻击倾向"),e.createElementVNode("text",{class:e.normalizeClass(["value",o.value.aggression?"red":""])},e.toDisplayString(o.value.aggression?"是":"否"),3)]),e.createElementVNode("view",{class:"info-item col-2"},[e.createElementVNode("text",{class:"label"},"既往病史"),e.createElementVNode("text",{class:"value block"},e.toDisplayString(o.value.medicalHistory||"无"),1)]),e.createElementVNode("view",{class:"info-item col-2"},[e.createElementVNode("text",{class:"label"},"过敏史"),e.createElementVNode("text",{class:"value block"},e.toDisplayString(o.value.allergies||"无"),1)])])]),o.value.remark?(e.openBlock(),e.createElementBlock("view",{key:0,class:"section-card"},[e.createElementVNode("view",{class:"section-header"},[e.createElementVNode("view",{class:"title-line"}),e.createElementVNode("text",{class:"section-title"},"补充备注")]),e.createElementVNode("view",{class:"remark-content"},e.toDisplayString(o.value.remark),1)])):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"footer-bar"},[e.createElementVNode("button",{class:"edit-btn",onClick:g},"编辑档案")])]))}},[["__scopeId","data-v-d02f3b03"]]),Z=i({__name:"index",setup(l){const n=e.ref(""),r=e.ref([]),i=[{label:"状态",value:void 0},{label:"正常",value:0},{label:"停用",value:1}],d=e.ref(0),m=e=>{d.value=e.detail.value,E()},v=e.ref(1),p=e.ref(10),g=e.ref(!0),N=async(e=!1)=>{try{uni.showNavigationBarLoading();const t=await(a={pageNum:v.value,pageSize:p.value,keyword:n.value,status:i[d.value].value},V({url:"/archieves/customer/list",method:"get",data:a})),l=(null==t?void 0:t.rows)||[];r.value=e?[...r.value,...l]:l,g.value=r.value.length<((null==t?void 0:t.total)||0)}catch(l){t("error","at pages/my/user/list/index.vue:107","获取用户列表失败",l)}finally{uni.hideNavigationBarLoading(),uni.stopPullDownRefresh()}var a};o((()=>{v.value=1,N()})),c((()=>{v.value=1,N()})),s((()=>{g.value&&(v.value++,N(!0))}));const E=()=>{v.value=1,N()},f=()=>uni.navigateTo({url:"/pages/my/user/add/index"}),h=(e,t)=>{const a=t.status,l=e.detail.value?0:1,o=0===l?"启用":"停用";uni.showModal({title:"提示",content:`确认要${o}该用户吗?`,success:async e=>{if(e.confirm)try{uni.showLoading({title:"处理中..."}),await(n=t.id,s=l,V({url:"/archieves/customer/changeStatus",method:"put",data:{id:n,status:s}})),uni.hideLoading(),t.status=l,uni.showToast({title:`已${o}`,icon:"success"})}catch(c){uni.hideLoading(),t.status=l,setTimeout((()=>{t.status=a}),50)}else t.status=l,setTimeout((()=>{t.status=a}),50);var n,s}})};return(t,l)=>{const o=a(e.resolveDynamicComponent("uni-icons"),w);return e.openBlock(),e.createElementBlock("view",{class:"user-list-page"},[e.createVNode(u,{title:"用户列表",bgColor:"#fff",color:"#000"}),e.createElementVNode("view",{class:"action-bar"},[e.createElementVNode("view",{class:"search-box"},[e.createVNode(o,{type:"search",size:"14",color:"#999"}),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":l[0]||(l[0]=e=>n.value=e),placeholder:"搜索姓名/手机号",class:"search-input","confirm-type":"search",onConfirm:E},null,544),[[e.vModelText,n.value]])]),e.createElementVNode("picker",{range:i,"range-key":"label",onChange:m},[e.createElementVNode("view",{class:"filter-btn"},[e.createElementVNode("text",null,e.toDisplayString(i[d.value].label),1),e.createVNode(o,{type:"bottom",size:"12",color:"#666"})])],32),e.createElementVNode("button",{size:"mini",class:"add-btn",onClick:f},"+ 新增")]),e.createElementVNode("view",{class:"list-container"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"user-card",key:t.id},[e.createElementVNode("view",{class:"user-header"},[e.createElementVNode("image",{src:t.avatarUrl||"/static/default-avatar.png",class:"user-avatar",mode:"aspectFill"},null,8,["src"]),e.createElementVNode("view",{class:"user-info-main"},[e.createElementVNode("text",{class:"user-name"},e.toDisplayString(t.name),1),e.createElementVNode("text",{class:"phone-row"},e.toDisplayString(t.phone),1)]),e.createElementVNode("view",{class:"user-status"},[e.createElementVNode("switch",{checked:0===t.status,color:"#ff9800",style:{transform:"scale(0.6)"},onChange:e=>h(e,t)},null,40,["checked","onChange"]),e.createElementVNode("text",{class:"status-text"},e.toDisplayString(0===t.status?"正常":"禁用"),1)])]),e.createElementVNode("view",{class:"user-body"},[e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"住址:"),e.createElementVNode("text",{class:"value"},e.toDisplayString(t.address||"-"),1)]),e.createElementVNode("view",{class:"info-grid"},[e.createElementVNode("view",{class:"grid-cell",onClick:e=>(e=>uni.navigateTo({url:`/pages/my/pet/list/index?userId=${e.id}`}))(t)},[e.createElementVNode("text",{class:"label"},"关联宠物"),e.createElementVNode("text",{class:"value text-warning"},e.toDisplayString(t.petCount||0)+"只",1)],8,["onClick"]),e.createElementVNode("view",{class:"grid-cell",onClick:e=>uni.reLaunch({url:"/pages/order/list/index"})},[e.createElementVNode("text",{class:"label"},"订单数量"),e.createElementVNode("text",{class:"value"},e.toDisplayString(t.orderCount||0)+"单",1)],8,["onClick"])]),t.source||t.createTime?(e.openBlock(),e.createElementBlock("view",{key:0,class:"source-box"},[t.source?(e.openBlock(),e.createElementBlock("text",{key:0,class:"source-tag"},e.toDisplayString(t.source),1)):e.createCommentVNode("",!0),t.createTime?(e.openBlock(),e.createElementBlock("text",{key:1,class:"create-time"},"创建时间: "+e.toDisplayString(t.createTime),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"card-actions"},[e.createElementVNode("button",{size:"mini",class:"action-btn",onClick:e.withModifiers((e=>(e=>uni.navigateTo({url:`/pages/my/user/detail/index?id=${e.id}`}))(t)),["stop"])},"详情",8,["onClick"]),e.createElementVNode("button",{size:"mini",class:"action-btn",onClick:e.withModifiers((e=>(e=>uni.navigateTo({url:`/pages/my/user/edit/index?id=${e.id}`}))(t)),["stop"])},"编辑",8,["onClick"])])])))),128)),0===r.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,style:{"text-align":"center",color:"#999",padding:"50rpx 0","font-size":"28rpx"}}," 暂无用户数据 ")):e.createCommentVNode("",!0)])])}}},[["__scopeId","data-v-4caefb96"]]),X=i({__name:"index",setup(a){const{houseTypeOptions:l,entryMethodOptions:o}=j,s=[{label:"男",value:0},{label:"女",value:1}],c=e.ref(!0),r=e.ref(!1),i=e.ref([]),d=e.ref(""),m=e.ref(!1),v=e.ref(!1),p=e.ref(!1),g=e.ref(!1),N=e.ref(0),E=e.ref(null),f=e.ref(""),w=e.ref(null),h=e.ref(""),k=e.ref(null),x=e.ref(""),b=e.reactive({id:void 0,name:"",phone:"",gender:void 0,areaId:void 0,stationId:void 0,address:"",houseType:"",entryMethod:"",entryPassword:"",keyLocation:"",remark:"",avatar:void 0});n((async e=>{try{c.value=!0;const t=await y();if(i.value=Array.isArray(t)?t:(null==t?void 0:t.data)||[],e.id){const t=await U(e.id);if(t){const e=t.data||t;Object.assign(b,e),d.value=e.avatarUrl||"",B()}}}catch(a){t("error","at pages/my/user/edit/index.vue:182",a)}finally{c.value=!1}}));const B=()=>{if(!b.stationId)return;const e=i.value,t=e.find((e=>String(e.id)===String(b.stationId)));if(t){k.value=t.id,x.value=t.name;const a=e.find((e=>String(e.id)===String(t.parentId)));if(a){w.value=a.id,h.value=a.name;const t=e.find((e=>String(e.id)===String(a.parentId)));t&&(E.value=t.id,f.value=t.name)}}},C=()=>{N.value=0,g.value=!0},S=e.computed((()=>0===N.value?i.value.filter((e=>"0"===String(e.parentId)||!e.parentId)):1===N.value?i.value.filter((e=>String(e.parentId)===String(E.value))):i.value.filter((e=>String(e.parentId)===String(w.value))))),_=e=>0===N.value?E.value===e.id:1===N.value?w.value===e.id:k.value===e.id,T=e.computed((()=>b.stationId?`${f.value} - ${h.value} - ${x.value}`:"请选择")),D=e.computed((()=>{var e;return(null==(e=s.find((e=>e.value===b.gender)))?void 0:e.label)||"请选择"})),I=e.computed((()=>{var e;return(null==(e=l.find((e=>e.value===b.houseType)))?void 0:e.label)||"请选择"})),M=e.computed((()=>{var e;return(null==(e=o.find((e=>e.value===b.entryMethod)))?void 0:e.label)||"请选择"})),A=e=>{b.entryMethod=e.value,b.entryPassword="",b.keyLocation=""},P=()=>{uni.chooseImage({count:1,sizeType:["compressed"],success:async e=>{try{uni.showLoading({title:"上传中..."});const t=await H(e.tempFilePaths[0]);b.avatar=t.ossId,d.value=t.url,uni.hideLoading(),uni.showToast({title:"修改成功",icon:"success"})}catch(a){uni.hideLoading(),t("error","at pages/my/user/edit/index.vue:265","头像上传失败",a)}}})},z=async()=>{if(!b.name)return uni.showToast({title:"请输入姓名",icon:"none"});if(!b.phone)return uni.showToast({title:"请输入手机号",icon:"none"});if(!b.stationId)return uni.showToast({title:"请选择所属站点",icon:"none"});if(!b.address)return uni.showToast({title:"请输入详细住址",icon:"none"});if(!b.entryMethod)return uni.showToast({title:"请选择入门方式",icon:"none"});r.value=!0;try{await(e=b,V({url:"/archieves/customer",method:"put",data:e})),uni.showToast({title:"保存成功",icon:"success"}),setTimeout((()=>uni.navigateBack()),1e3)}catch(t){}finally{r.value=!1}var e};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"user-edit-page"},[e.createVNode(u,{title:"编辑用户",bgColor:"#fff",color:"#000"}),c.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"loading-state"},[e.createElementVNode("view",{class:"spinner"}),e.createElementVNode("text",{class:"loading-txt"},"同步资料中...")])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("view",{class:"avatar-section"},[e.createElementVNode("view",{class:"avatar-wrap",onClick:P},[d.value?(e.openBlock(),e.createElementBlock("image",{key:0,src:d.value,class:"avatar-img",mode:"aspectFill"},null,8,["src"])):(e.openBlock(),e.createElementBlock("view",{key:1,class:"avatar-placeholder"},[e.createElementVNode("view",{class:"avatar-icon"},[e.createElementVNode("view",{class:"head"}),e.createElementVNode("view",{class:"body"})])])),e.createElementVNode("text",{class:"avatar-tip"},"点击修改头像")])]),e.createElementVNode("view",{class:"section-title"},"基本资料"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"姓名"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[0]||(a[0]=e=>b.name=e),placeholder:"请输入姓名"},null,512),[[e.vModelText,b.name]])]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"手机号"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[1]||(a[1]=e=>b.phone=e),type:"number",placeholder:"请输入手机号"},null,512),[[e.vModelText,b.phone]])]),e.createElementVNode("view",{class:"form-item",onClick:a[2]||(a[2]=e=>m.value=!0)},[e.createElementVNode("text",{class:"form-label"},"性别"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:void 0===b.gender}])},e.toDisplayString(D.value),3),e.createElementVNode("view",{class:"right-arrow"})])]),e.createElementVNode("view",{class:"section-title"},"居住信息"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item",onClick:C},[e.createElementVNode("text",{class:"form-label require"},"所属站点"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:void 0===b.stationId}])},e.toDisplayString(T.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"详细住址"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[3]||(a[3]=e=>b.address=e),placeholder:"请输入街道/门牌号"},null,512),[[e.vModelText,b.address]])]),e.createElementVNode("view",{class:"form-item",onClick:a[4]||(a[4]=e=>v.value=!0)},[e.createElementVNode("text",{class:"form-label"},"房屋类型"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!b.houseType}])},e.toDisplayString(I.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[5]||(a[5]=e=>p.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"入门方式"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!b.entryMethod}])},e.toDisplayString(M.value),3),e.createElementVNode("view",{class:"right-arrow"})]),"password"===b.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:0,class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"开门密码"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[6]||(a[6]=e=>b.entryPassword=e),placeholder:"请输入密码"},null,512),[[e.vModelText,b.entryPassword]])])):e.createCommentVNode("",!0),"key"===b.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:1,class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"钥匙位置"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[7]||(a[7]=e=>b.keyLocation=e),placeholder:"如:地毯下"},null,512),[[e.vModelText,b.keyLocation]])])):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"section-title"},"其他"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label"},"备注说明"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[8]||(a[8]=e=>b.remark=e),placeholder:"请输入备注"},null,512),[[e.vModelText,b.remark]])])]),e.createElementVNode("view",{class:"footer-bar"},[e.createElementVNode("button",{class:"save-btn",loading:r.value,onClick:z},"保存修改",8,["loading"])])],64)),g.value?(e.openBlock(),e.createElementBlock("view",{key:2,class:"center-modal-mask",onClick:a[14]||(a[14]=e=>g.value=!1),onTouchmove:a[15]||(a[15]=e.withModifiers((()=>{}),["stop","prevent"]))},[e.createElementVNode("view",{class:"center-modal-content station-modal",onClick:a[13]||(a[13]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"modal-header"},[e.createElementVNode("text",{class:"modal-title"},"所属站点修改"),e.createElementVNode("view",{class:"close-btn",onClick:a[9]||(a[9]=e=>g.value=!1)})]),e.createElementVNode("view",{class:"step-indicator"},[e.createElementVNode("view",{class:e.normalizeClass(["step-item",{active:0===N.value}]),onClick:a[10]||(a[10]=e=>N.value=0)},e.toDisplayString(f.value||"城市"),3),e.createElementVNode("view",{class:"step-divider"},"/"),e.createElementVNode("view",{class:e.normalizeClass(["step-item",{active:1===N.value}]),onClick:a[11]||(a[11]=e=>E.value?N.value=1:null)},e.toDisplayString(h.value||"区域"),3),e.createElementVNode("view",{class:"step-divider"},"/"),e.createElementVNode("view",{class:e.normalizeClass(["step-item",{active:2===N.value}]),onClick:a[12]||(a[12]=e=>w.value?N.value=2:null)},e.toDisplayString(x.value||"站点"),3)]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"modal-list-scroll"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"list-item",key:t.id,onClick:e=>(e=>{0===N.value?(E.value=e.id,f.value=e.name,w.value=null,h.value="",k.value=null,x.value="",N.value=1):1===N.value?(w.value=e.id,h.value=e.name,k.value=null,x.value="",N.value=2):(k.value=e.id,x.value=e.name,b.stationId=e.id,b.areaId=w.value,g.value=!1)})(t)},[e.createElementVNode("text",{class:"item-text"},e.toDisplayString(t.name),1),_(t)?(e.openBlock(),e.createElementBlock("view",{key:0,class:"checkmark"})):e.createCommentVNode("",!0)],8,["onClick"])))),128)),0===S.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-tip"},"暂无数据")):e.createCommentVNode("",!0)])])],32)):e.createCommentVNode("",!0),e.createVNode(L,{modelValue:m.value,"onUpdate:modelValue":a[16]||(a[16]=e=>m.value=e),title:"性别修改",options:s,value:b.gender,onSelect:a[17]||(a[17]=e=>b.gender=e.value)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:v.value,"onUpdate:modelValue":a[18]||(a[18]=e=>v.value=e),title:"房屋类型",options:e.unref(l),value:b.houseType,onSelect:a[19]||(a[19]=e=>b.houseType=e.value)},null,8,["modelValue","options","value"]),e.createVNode(L,{modelValue:p.value,"onUpdate:modelValue":a[20]||(a[20]=e=>p.value=e),title:"入门方式",options:e.unref(o),value:b.entryMethod,onSelect:A},null,8,["modelValue","options","value"])]))}},[["__scopeId","data-v-769f0995"]]),Q=i({__name:"index",setup(a){const{houseTypeOptions:l,entryMethodOptions:o}=j,s=[{label:"男",value:0},{label:"女",value:1}],c=e.ref(!1),r=e.ref([]),i=e.ref(""),d=e.ref(!1),m=e.ref(!1),v=e.ref(!1),p=e.ref(!1),g=e.ref(0),N=e.ref(null),E=e.ref(""),f=e.ref(null),w=e.ref(""),h=e.ref(null),k=e.ref(""),x=e.reactive({name:"",phone:"",gender:void 0,areaId:void 0,stationId:void 0,address:"",houseType:"",entryMethod:"",entryPassword:"",keyLocation:"",remark:"",avatar:void 0});n((async()=>{try{const e=await y();r.value=Array.isArray(e)?e:(null==e?void 0:e.data)||[]}catch(e){t("error","at pages/my/user/add/index.vue:181","获取站点失败",e)}}));const b=()=>{g.value=0,p.value=!0},C=e.computed((()=>0===g.value?r.value.filter((e=>"0"===String(e.parentId)||!e.parentId)):1===g.value?r.value.filter((e=>String(e.parentId)===String(N.value))):r.value.filter((e=>String(e.parentId)===String(f.value))))),S=e=>0===g.value?N.value===e.id:1===g.value?f.value===e.id:h.value===e.id,_=e.computed((()=>x.stationId?`${E.value} - ${w.value} - ${k.value}`:"请选择")),T=e.computed((()=>{var e;return(null==(e=s.find((e=>e.value===x.gender)))?void 0:e.label)||"请选择"})),D=e.computed((()=>{var e;return(null==(e=l.find((e=>e.value===x.houseType)))?void 0:e.label)||"请选择"})),I=e.computed((()=>{var e;return(null==(e=o.find((e=>e.value===x.entryMethod)))?void 0:e.label)||"请选择"})),M=e=>{x.entryMethod=e.value,x.entryPassword="",x.keyLocation=""},A=()=>{uni.chooseImage({count:1,sizeType:["compressed"],success:async e=>{try{uni.showLoading({title:"上传中..."});const t=await H(e.tempFilePaths[0]);x.avatar=t.ossId,i.value=t.url,uni.hideLoading(),uni.showToast({title:"修改成功",icon:"success"})}catch(a){uni.hideLoading(),t("error","at pages/my/user/add/index.vue:259","头像上传失败",a)}}})},P=async()=>{var e,t,a;if(!x.name)return uni.showToast({title:"请输入姓名",icon:"none"});if(!x.phone)return uni.showToast({title:"请输入手机号",icon:"none"});if(!x.stationId)return uni.showToast({title:"请选择所属站点",icon:"none"});if(!x.address)return uni.showToast({title:"请输入详细住址",icon:"none"});if(!x.entryMethod)return uni.showToast({title:"请选择入门方式",icon:"none"});c.value=!0;try{const l={...x};let o=uni.getStorageSync("tenantId")||(null==(t=null==(e=await B())?void 0:e.user)?void 0:t.tenantId);o&&(l.tenantId=o),await(a=l,V({url:"/archieves/customer",method:"post",data:a})),uni.showToast({title:"新增成功",icon:"success"}),setTimeout((()=>uni.navigateBack()),1e3)}catch(l){}finally{c.value=!1}};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"user-add-page"},[e.createVNode(u,{title:"新增用户",bgColor:"#fff",color:"#000"}),e.createElementVNode("view",{class:"avatar-section"},[e.createElementVNode("view",{class:"avatar-wrap",onClick:A},[i.value?(e.openBlock(),e.createElementBlock("image",{key:0,src:i.value,class:"avatar-img",mode:"aspectFill"},null,8,["src"])):(e.openBlock(),e.createElementBlock("view",{key:1,class:"avatar-placeholder"},[e.createElementVNode("view",{class:"avatar-icon"},[e.createElementVNode("view",{class:"head"}),e.createElementVNode("view",{class:"body"})])])),e.createElementVNode("text",{class:"avatar-tip"},"点击修改头像")])]),e.createElementVNode("view",{class:"section-title"},"基本资料"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"姓名"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[0]||(a[0]=e=>x.name=e),placeholder:"请输入姓名"},null,512),[[e.vModelText,x.name]])]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"手机号"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[1]||(a[1]=e=>x.phone=e),type:"number",placeholder:"请输入手机号"},null,512),[[e.vModelText,x.phone]])]),e.createElementVNode("view",{class:"form-item",onClick:a[2]||(a[2]=e=>d.value=!0)},[e.createElementVNode("text",{class:"form-label"},"性别"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:void 0===x.gender}])},e.toDisplayString(T.value),3),e.createElementVNode("view",{class:"right-arrow"})])]),e.createElementVNode("view",{class:"section-title"},"居住信息"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item",onClick:b},[e.createElementVNode("text",{class:"form-label require"},"所属站点"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:void 0===x.stationId}])},e.toDisplayString(_.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"详细住址"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[3]||(a[3]=e=>x.address=e),placeholder:"请输入街道/门牌号"},null,512),[[e.vModelText,x.address]])]),e.createElementVNode("view",{class:"form-item",onClick:a[4]||(a[4]=e=>m.value=!0)},[e.createElementVNode("text",{class:"form-label"},"房屋类型"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!x.houseType}])},e.toDisplayString(D.value),3),e.createElementVNode("view",{class:"right-arrow"})]),e.createElementVNode("view",{class:"form-item",onClick:a[5]||(a[5]=e=>v.value=!0)},[e.createElementVNode("text",{class:"form-label require"},"入门方式"),e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:!x.entryMethod}])},e.toDisplayString(I.value),3),e.createElementVNode("view",{class:"right-arrow"})]),"password"===x.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:0,class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"开门密码"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[6]||(a[6]=e=>x.entryPassword=e),placeholder:"请输入密码"},null,512),[[e.vModelText,x.entryPassword]])])):e.createCommentVNode("",!0),"key"===x.entryMethod?(e.openBlock(),e.createElementBlock("view",{key:1,class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"钥匙位置"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[7]||(a[7]=e=>x.keyLocation=e),placeholder:"如:地毯下"},null,512),[[e.vModelText,x.keyLocation]])])):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"section-title"},"其他"),e.createElementVNode("view",{class:"form-card"},[e.createElementVNode("view",{class:"form-item vertical"},[e.createElementVNode("text",{class:"form-label"},"备注说明"),e.withDirectives(e.createElementVNode("textarea",{class:"form-textarea","onUpdate:modelValue":a[8]||(a[8]=e=>x.remark=e),placeholder:"请输入备注"},null,512),[[e.vModelText,x.remark]])])]),e.createElementVNode("view",{class:"footer-bar"},[e.createElementVNode("button",{class:"save-btn",loading:c.value,onClick:P},"新增用户",8,["loading"])]),p.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"center-modal-mask",onClick:a[14]||(a[14]=e=>p.value=!1),onTouchmove:a[15]||(a[15]=e.withModifiers((()=>{}),["stop","prevent"]))},[e.createElementVNode("view",{class:"center-modal-content station-modal",onClick:a[13]||(a[13]=e.withModifiers((()=>{}),["stop"]))},[e.createElementVNode("view",{class:"modal-header"},[e.createElementVNode("text",{class:"modal-title"},"请选择所属站点"),e.createElementVNode("view",{class:"close-btn",onClick:a[9]||(a[9]=e=>p.value=!1)})]),e.createElementVNode("view",{class:"step-indicator"},[e.createElementVNode("view",{class:e.normalizeClass(["step-item",{active:0===g.value}]),onClick:a[10]||(a[10]=e=>g.value=0)},e.toDisplayString(E.value||"请选择城市"),3),e.createElementVNode("view",{class:"step-divider"},"/"),e.createElementVNode("view",{class:e.normalizeClass(["step-item",{active:1===g.value}]),onClick:a[11]||(a[11]=e=>N.value?g.value=1:null)},e.toDisplayString(w.value||(1===g.value?"请选择区域":"区域")),3),e.createElementVNode("view",{class:"step-divider"},"/"),e.createElementVNode("view",{class:e.normalizeClass(["step-item",{active:2===g.value}]),onClick:a[12]||(a[12]=e=>f.value?g.value=2:null)},e.toDisplayString(k.value||(2===g.value?"请选择站点":"站点")),3)]),e.createElementVNode("scroll-view",{"scroll-y":"",class:"modal-list-scroll"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"list-item",key:t.id,onClick:e=>(e=>{0===g.value?(N.value=e.id,E.value=e.name,f.value=null,w.value="",h.value=null,k.value="",g.value=1):1===g.value?(f.value=e.id,w.value=e.name,h.value=null,k.value="",g.value=2):(h.value=e.id,k.value=e.name,x.stationId=e.id,x.areaId=f.value,p.value=!1)})(t)},[e.createElementVNode("text",{class:"item-text"},e.toDisplayString(t.name),1),S(t)?(e.openBlock(),e.createElementBlock("view",{key:0,class:"checkmark"})):e.createCommentVNode("",!0)],8,["onClick"])))),128)),0===C.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-tip"},"该目录下暂无站点信息")):e.createCommentVNode("",!0)])])],32)):e.createCommentVNode("",!0),e.createVNode(L,{modelValue:d.value,"onUpdate:modelValue":a[16]||(a[16]=e=>d.value=e),title:"选择性别",options:s,value:x.gender,onSelect:a[17]||(a[17]=e=>x.gender=e.value)},null,8,["modelValue","value"]),e.createVNode(L,{modelValue:m.value,"onUpdate:modelValue":a[18]||(a[18]=e=>m.value=e),title:"房屋类型",options:e.unref(l),value:x.houseType,onSelect:a[19]||(a[19]=e=>x.houseType=e.value)},null,8,["modelValue","options","value"]),e.createVNode(L,{modelValue:v.value,"onUpdate:modelValue":a[20]||(a[20]=e=>v.value=e),title:"入门方式",options:e.unref(o),value:x.entryMethod,onSelect:M},null,8,["modelValue","options","value"])]))}},[["__scopeId","data-v-49ac4129"]]),Y=i({__name:"index",setup(a){const{houseTypeOptions:l}=j,o=e=>{const t=l.find((t=>t.value===e));return t?t.label:e||"-"},s=e.ref({});n((e=>{e.id&&c(e.id)}));const c=async e=>{try{uni.showLoading({title:"加载中..."});const[t,a]=await Promise.all([y().catch((()=>[])),U(e)]),l=a||{},o=Array.isArray(t)?t:(null==t?void 0:t.data)||[];if(l.areaId){const e=o.find((e=>String(e.id)===String(l.areaId)));l.areaName=e?e.name:"-"}if(l.stationId){const e=o.find((e=>String(e.id)===String(l.stationId)));l.stationName=e?e.name:"-"}s.value=l}catch(a){t("error","at pages/my/user/detail/index.vue:79",a)}finally{uni.hideLoading()}},r=()=>{s.value.id&&uni.navigateTo({url:`/pages/my/user/edit/index?id=${s.value.id}`})};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"user-detail-page"},[e.createVNode(u,{title:"用户详情",bgColor:"#ffd53f",color:"#5c4314"}),e.createElementVNode("view",{class:"user-hero"},[e.createElementVNode("image",{src:s.value.avatarUrl||"https://img.icons8.com/?size=256&id=23235&format=png",class:"avatar",mode:"aspectFill"},null,8,["src"]),e.createElementVNode("view",{class:"hero-info"},[e.createElementVNode("text",{class:"user-name"},e.toDisplayString(s.value.name||"-"),1),void 0!==s.value.gender?(e.openBlock(),e.createElementBlock("text",{key:0,class:"gender-text"},"("+e.toDisplayString(1===s.value.gender?"女":"男")+")",1)):e.createCommentVNode("",!0)]),e.createElementVNode("text",{class:"user-phone"},e.toDisplayString(s.value.phone||"-"),1),s.value.tags&&s.value.tags.length>0?(e.openBlock(),e.createElementBlock("view",{key:0,class:"tag-list"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value.tags,(t=>(e.openBlock(),e.createElementBlock("text",{class:"tag-item",key:t.id},e.toDisplayString(t.name),1)))),128))])):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"info-card"},[e.createElementVNode("view",{class:"section-title"},"基本信息"),e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"状态"),e.createElementVNode("text",{class:e.normalizeClass(["value",{orange:0===s.value.status}])},e.toDisplayString(0===s.value.status?"正常":"禁用"),3)]),e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"所属区域"),e.createElementVNode("text",{class:"value"},e.toDisplayString(s.value.areaName||"-"),1)]),e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"所属站点"),e.createElementVNode("text",{class:"value"},e.toDisplayString(s.value.stationName||"-"),1)]),e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"所属品牌"),e.createElementVNode("text",{class:"value"},e.toDisplayString(s.value.tenantName||"-"),1)]),e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"录入时间"),e.createElementVNode("text",{class:"value"},e.toDisplayString(s.value.createTime||"-"),1)]),e.createElementVNode("view",{class:"section-title"},"居住信息"),e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"详细住址"),e.createElementVNode("text",{class:"value"},e.toDisplayString(s.value.address||"-"),1)]),e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"房屋类型"),e.createElementVNode("text",{class:"value"},e.toDisplayString(o(s.value.houseType)),1)]),e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"入门方式"),e.createElementVNode("text",{class:"value"},e.toDisplayString("password"===s.value.entryMethod?"密码":"key"===s.value.entryMethod?"钥匙":s.value.entryMethod||"-"),1)]),e.createElementVNode("view",{class:"info-row"},[e.createElementVNode("text",{class:"label"},"开门详情"),e.createElementVNode("text",{class:"value"},e.toDisplayString("password"===s.value.entryMethod?s.value.entryPassword||"-":s.value.keyLocation||"-"),1)]),s.value.remark?(e.openBlock(),e.createElementBlock("view",{key:0,class:"info-row",style:{"margin-top":"20rpx"}},[e.createElementVNode("text",{class:"label"},"备注"),e.createElementVNode("text",{class:"value"},e.toDisplayString(s.value.remark),1)])):e.createCommentVNode("",!0)]),e.createElementVNode("button",{class:"edit-btn",onClick:r},"编辑用户资料")]))}},[["__scopeId","data-v-cefb8817"]]),ee=i({__name:"index",setup(t){const a=e.ref(A);return(t,l)=>(e.openBlock(),e.createElementBlock("view",{class:"review-list-page"},[e.createElementVNode("view",{class:"list-container"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"review-card",key:t.id},[e.createElementVNode("view",{class:"card-header"},[e.createElementVNode("text",{class:"order-no"},e.toDisplayString(t.orderNo),1),e.createElementVNode("text",{class:"stars"},e.toDisplayString("★".repeat(t.rating))+e.toDisplayString("☆".repeat(5-t.rating)),1)]),e.createElementVNode("text",{class:"review-content"},e.toDisplayString(t.content),1),e.createElementVNode("view",{class:"card-footer"},[e.createElementVNode("text",{class:"time"},e.toDisplayString(t.time),1),e.createElementVNode("text",{class:"service-type"},e.toDisplayString(t.serviceType),1)])])))),128)),0===a.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-state"},[e.createElementVNode("text",null,"暂无评价记录")])):e.createCommentVNode("",!0)])]))}},[["__scopeId","data-v-29390f0a"]]),te=i({__name:"index",setup(t){const l=e.ref([{id:2,title:"隐私政策"},{id:1,title:"用户服务协议"},{id:4,title:"商家托运协议"},{id:5,title:"宠物洗护服务规范"}]);return(t,o)=>{const n=a(e.resolveDynamicComponent("uni-icons"),w);return e.openBlock(),e.createElementBlock("view",{class:"agreement-list-page"},[e.createVNode(u,{title:"协议列表"}),e.createElementVNode("view",{class:"list-container"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"agreement-item",key:t.id,onClick:e=>(e=>{uni.navigateTo({url:`/pages/my/agreement/detail/index?id=${e.id}&title=${encodeURIComponent(e.title)}`})})(t)},[e.createElementVNode("view",{class:"item-info"},[e.createElementVNode("text",{class:"item-title"},e.toDisplayString(t.title),1)]),e.createVNode(n,{type:"right",size:"14",color:"#ccc"})],8,["onClick"])))),128))])])}}},[["__scopeId","data-v-71f3f0af"]]),ae=i({__name:"index",setup(a){const l=e.ref("协议详情"),o=e.ref({}),s=e.ref(""),c=e.ref(!0);n((async e=>{e.title&&(l.value=decodeURIComponent(e.title)),e.id&&r(e.id)}));const r=async e=>{c.value=!0;try{const t=await T(e);if(t)if(o.value=t,t.content)try{s.value=decodeURIComponent(escape(atob(t.content)))}catch(a){s.value=t.content}else s.value="暂无协议内容"}catch(l){t("error","at pages/my/agreement/detail/index.vue:52","获取协议详情失败",l)}finally{c.value=!1}};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"agreement-detail-page"},[e.createVNode(u,{title:l.value},null,8,["title"]),c.value?(e.openBlock(),e.createElementBlock("view",{key:1,class:"loading-state"},[e.createElementVNode("text",null,"协议内容加载中...")])):(e.openBlock(),e.createElementBlock("view",{key:0,class:"content-card"},[e.createElementVNode("text",{class:"title"},e.toDisplayString(o.value.title||l.value),1),e.createElementVNode("rich-text",{nodes:s.value,class:"rich-content"},null,8,["nodes"])]))]))}},[["__scopeId","data-v-dcb64685"]]),le=i({__name:"index",setup(t){const a=e.ref("0 KB"),l=()=>{try{const e=uni.getStorageInfoSync().currentSize;a.value=e<1024?e+" KB":(e/1024).toFixed(2)+" MB"}catch(e){a.value="0 KB"}};o((()=>{l()}));const n=e=>uni.navigateTo({url:e}),s=()=>{uni.showModal({title:"清理缓存",content:"确定要清理本地缓存吗?",success:e=>{if(e.confirm)try{const e=uni.getStorageSync("token");uni.clearStorageSync(),e&&uni.setStorageSync("token",e),l(),uni.showToast({title:"清理成功",icon:"success"})}catch(t){uni.showToast({title:"清理失败",icon:"none"})}}})},c=()=>{uni.showModal({title:"提示",content:"确定要退出当前账号吗?",success:e=>{e.confirm&&(uni.removeStorageSync("token"),uni.showToast({title:"已安全退出",icon:"success"}),setTimeout((()=>uni.reLaunch({url:"/pages/login/index"})),1e3))}})};return(t,l)=>(e.openBlock(),e.createElementBlock("view",{class:"settings-page"},[e.createVNode(u,{title:"设置"}),e.createElementVNode("view",{class:"menu-list"},[e.createElementVNode("view",{class:"cell-group"},[e.createElementVNode("view",{class:"cell-item",onClick:l[0]||(l[0]=e=>n("/pages/my/settings/profile/index"))},[e.createElementVNode("text",{class:"cell-title"},"个人信息"),e.createElementVNode("text",{class:"arrow"},"›")]),e.createElementVNode("view",{class:"cell-item",onClick:l[1]||(l[1]=e=>n("/pages/my/settings/change-password/index"))},[e.createElementVNode("text",{class:"cell-title"},"修改密码"),e.createElementVNode("text",{class:"arrow"},"›")]),e.createElementVNode("view",{class:"cell-item",onClick:s},[e.createElementVNode("text",{class:"cell-title"},"清除缓存"),e.createElementVNode("text",{class:"cell-value"},e.toDisplayString(a.value),1),e.createElementVNode("text",{class:"arrow"},"›")])]),e.createElementVNode("view",{class:"cell-group danger-group"},[e.createElementVNode("view",{class:"cell-item",onClick:l[2]||(l[2]=e=>n("/pages/my/settings/account-delete/index"))},[e.createElementVNode("text",{class:"cell-title danger"},"账号注销"),e.createElementVNode("text",{class:"arrow"},"›")])])]),e.createElementVNode("view",{class:"logout-btn-wrapper"},[e.createElementVNode("button",{class:"logout-btn",onClick:c},"退出登录")])]))}},[["__scopeId","data-v-68120730"]]),oe=i({__name:"index",setup(a){const l=e.ref(!0),o=e.reactive({avatar:"",nickName:"",phonenumber:"",email:"",sex:""}),s=[{label:"男",value:"0"},{label:"女",value:"1"},{label:"未知",value:"2"}];n((async()=>{try{const e=await B();e&&e.user&&(o.avatar=e.user.avatarUrl||"",o.nickName=e.user.nickName||"",o.phonenumber=e.user.phonenumber||"",o.email=e.user.email||"",o.sex=e.user.sex||"2")}catch(e){t("error","at pages/my/settings/profile/index.vue:80","获取个人信息失败",e)}finally{l.value=!1}}));const c=e.computed((()=>{const e=s.find((e=>e.value===String(o.sex)));return e?e.label:"请选择"})),r=e=>{o.sex=s[e.detail.value].value},i=()=>{uni.chooseImage({count:1,sizeType:["compressed"],sourceType:["album","camera"],success:async e=>{const a=e.tempFilePaths;try{uni.showLoading({title:"上传中..."});const e=await(l=a[0],new Promise(((e,t)=>{const a=uni.getStorageSync("token")||"";b((()=>Promise.resolve().then((()=>g)))).then((({BASE_URL:o})=>{uni.uploadFile({url:o+"/system/user/profile/avatar",filePath:l,name:"avatarfile",header:{Authorization:a?`Bearer ${a}`:"",clientid:"fe63fea7be31b0200b496d08bc6b517d","X-Platform-Code":"MfJkMNMW2JKXBuPcbP2rxkD3ynXmReAZZFm4fN7cAGwGJdKCmd"},success:a=>{const l=JSON.parse(a.data);200===l.code?e(l.data):(uni.showToast({title:l.msg||"上传失败",icon:"none"}),t(l.msg))},fail:e=>{uni.showToast({title:"网络异常",icon:"none"}),t(e)}})}))})));o.avatar=e.imgUrl,uni.hideLoading(),uni.showToast({title:"头像上传成功",icon:"success"})}catch(n){uni.hideLoading(),t("error","at pages/my/settings/profile/index.vue:111","上传头像失败",n)}var l}})},d=async()=>{var e;if(o.nickName&&o.nickName.trim()?o.phonenumber&&o.phonenumber.trim()?/^1[3-9]\d{9}$/.test(o.phonenumber)?!o.email||/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(o.email)||(uni.showToast({title:"请输入正确的邮箱格式",icon:"none"}),0):(uni.showToast({title:"请输入正确的手机号码",icon:"none"}),0):(uni.showToast({title:"请输入手机号码",icon:"none"}),0):(uni.showToast({title:"请输入昵称",icon:"none"}),0))try{uni.showLoading({title:"保存中..."}),await(e=o,V({url:"/system/user/profile",method:"put",data:e})),uni.hideLoading(),uni.showToast({title:"个人信息修改成功",icon:"success"}),setTimeout((()=>{uni.navigateBack()}),1e3)}catch(a){uni.hideLoading(),t("log","at pages/my/settings/profile/index.vue:152","保存失败",a)}};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"profile-page"},[e.createVNode(u,{title:"个人信息",bgColor:"#fff",color:"#000"}),l.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("view",{key:0,class:"form-container"},[e.createElementVNode("view",{class:"avatar-section",onClick:i},[e.createElementVNode("image",{src:o.avatar||"/static/images/profile.png",class:"avatar-img",mode:"aspectFill"},null,8,["src"]),e.createElementVNode("view",{class:"avatar-tip"},"点击更换头像")]),e.createElementVNode("view",{class:"form-group"},[e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"用户昵称"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[0]||(a[0]=e=>o.nickName=e),placeholder:"请输入昵称","placeholder-class":"input-placeholder"},null,512),[[e.vModelText,o.nickName]])]),e.createElementVNode("view",{class:"line"}),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label require"},"手机号码"),e.withDirectives(e.createElementVNode("input",{class:"form-input",type:"number","onUpdate:modelValue":a[1]||(a[1]=e=>o.phonenumber=e),placeholder:"请输入手机号码","placeholder-class":"input-placeholder"},null,512),[[e.vModelText,o.phonenumber]])]),e.createElementVNode("view",{class:"line"}),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label"},"邮箱"),e.withDirectives(e.createElementVNode("input",{class:"form-input","onUpdate:modelValue":a[2]||(a[2]=e=>o.email=e),placeholder:"请输入邮箱","placeholder-class":"input-placeholder"},null,512),[[e.vModelText,o.email]])]),e.createElementVNode("view",{class:"line"}),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("text",{class:"form-label"},"性别"),e.createElementVNode("picker",{range:s,"range-key":"label",onChange:r},[e.createElementVNode("view",{class:e.normalizeClass(["picker-value",{placeholder:void 0===o.sex||""===o.sex}])},e.toDisplayString(c.value),3)],32)])]),e.createElementVNode("view",{class:"btn-group"},[e.createElementVNode("button",{class:"submit-btn",onClick:d},"保存修改")])]))]))}},[["__scopeId","data-v-87494757"]]),ne=i({__name:"index",setup(t){const a=e.ref(!1),l=()=>{a.value=!a.value},o=()=>{uni.showModal({title:"最终确认",content:"账号注销后无法恢复,确定继续吗?",confirmColor:"#f44336",success:async e=>{if(e.confirm)try{await V({url:"/system/user/cancel",method:"delete"}),uni.showToast({title:"账号已注销",icon:"success"}),uni.removeStorageSync("token"),setTimeout((()=>uni.reLaunch({url:"/pages/login/index"})),1500)}catch(t){}}})};return(t,n)=>(e.openBlock(),e.createElementBlock("view",{class:"account-delete-page"},[e.createVNode(u,{title:"账号注销",bgColor:"#f7f8fa",color:"#000"}),e.createElementVNode("view",{class:"form-container"},[e.createElementVNode("view",{class:"warning-card"},[e.createElementVNode("view",{class:"warning-icon"},"!"),e.createElementVNode("text",{class:"warning-title"},"账号注销须知"),e.createElementVNode("text",{class:"warning-text"},"注销账号后,以下数据将被永久删除且不可恢复:"),e.createElementVNode("view",{class:"warning-list"},[e.createElementVNode("text",{class:"warning-item"},"• 个人信息"),e.createElementVNode("text",{class:"warning-item"},"• 账户余额")])]),e.createElementVNode("view",{class:"confirm-section"},[e.createElementVNode("view",{class:"check-row"},[e.createElementVNode("checkbox-group",{onChange:l},[e.createElementVNode("label",{class:"check-label"},[e.createElementVNode("checkbox",{checked:a.value,color:"#f44336",style:{transform:"scale(0.7)"}},null,8,["checked"]),e.createElementVNode("text",null,"我已了解上述风险,确认注销")])],32)]),e.createElementVNode("button",{class:"delete-btn",disabled:!a.value,onClick:o},"确认注销账号",8,["disabled"])])])]))}},[["__scopeId","data-v-c9310509"]]),se=i({__name:"index",setup(a){const l=e.reactive({oldPassword:"",newPassword:"",confirmPassword:""}),o=e.ref(!1),n=e.ref(!1),s=e.ref(!1),c=e.ref(""),r=async()=>{var e,a;if(c.value="",l.oldPassword?l.newPassword?l.newPassword.length<6||l.newPassword.length>20?(c.value="密码长度在 6-20 位之间",0):l.confirmPassword?l.confirmPassword===l.newPassword||(c.value="两次输入的密码不一致",0):(c.value="请确认新密码",0):(c.value="请输入新密码",0):(c.value="请输入旧密码",0))try{uni.showLoading({title:"修改中..."}),await(e=l.oldPassword,a=l.newPassword,V({url:"/system/user/profile/updatePwd",method:"put",data:{oldPassword:e,newPassword:a}})),uni.hideLoading(),uni.showToast({title:"密码修改成功,请重新登录",icon:"success"}),setTimeout((()=>{uni.removeStorageSync("token"),uni.reLaunch({url:"/pages/login/index"})}),1500)}catch(o){uni.hideLoading(),t("log","at pages/my/settings/change-password/index.vue:109","请求失败",o)}};return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"change-password-page"},[e.createVNode(u,{title:"修改密码",bgColor:"#fff",color:"#000"}),e.createElementVNode("view",{class:"form-container"},[e.createElementVNode("view",{class:"form-group"},[e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("label",{class:"form-label"},"旧密码"),e.withDirectives(e.createElementVNode("input",{class:"form-input",type:"text",password:!o.value,"onUpdate:modelValue":a[0]||(a[0]=e=>l.oldPassword=e),placeholder:"请输入当前密码","placeholder-class":"input-placeholder"},null,8,["password"]),[[e.vModelText,l.oldPassword]]),e.createElementVNode("view",{class:"pwd-toggle",onClick:a[1]||(a[1]=e=>o.value=!o.value)},[e.createElementVNode("text",{class:"toggle-icon"},e.toDisplayString(o.value?"隐藏":"显示"),1)])]),e.createElementVNode("view",{class:"line"}),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("label",{class:"form-label"},"新密码"),e.withDirectives(e.createElementVNode("input",{class:"form-input",type:"text",password:!n.value,"onUpdate:modelValue":a[2]||(a[2]=e=>l.newPassword=e),placeholder:"6-20位新密码","placeholder-class":"input-placeholder"},null,8,["password"]),[[e.vModelText,l.newPassword]]),e.createElementVNode("view",{class:"pwd-toggle",onClick:a[3]||(a[3]=e=>n.value=!n.value)},[e.createElementVNode("text",{class:"toggle-icon"},e.toDisplayString(n.value?"隐藏":"显示"),1)])]),e.createElementVNode("view",{class:"line"}),e.createElementVNode("view",{class:"form-item"},[e.createElementVNode("label",{class:"form-label"},"确认密码"),e.withDirectives(e.createElementVNode("input",{class:"form-input",type:"text",password:!s.value,"onUpdate:modelValue":a[4]||(a[4]=e=>l.confirmPassword=e),placeholder:"请再次输入新密码","placeholder-class":"input-placeholder"},null,8,["password"]),[[e.vModelText,l.confirmPassword]]),e.createElementVNode("view",{class:"pwd-toggle",onClick:a[5]||(a[5]=e=>s.value=!s.value)},[e.createElementVNode("text",{class:"toggle-icon"},e.toDisplayString(s.value?"隐藏":"显示"),1)])])]),e.createElementVNode("view",{class:"btn-group"},[e.createElementVNode("button",{class:"submit-btn",onClick:r},"提交修改")]),e.createElementVNode("view",{class:"tip-text"},[e.createElementVNode("text",{class:"tip-icon"},"ℹ️"),e.createElementVNode("text",null,"密码修改成功后,系统将自动安全退出,需重新登录。")]),c.value?(e.openBlock(),e.createElementBlock("view",{key:0,class:"error-toast"},[e.createElementVNode("text",null,e.toDisplayString(c.value),1)])):e.createCommentVNode("",!0)])]))}},[["__scopeId","data-v-f68f23f8"]]),ce=i({__name:"index",setup(a){const l=e.ref([]),n=e.ref(1),r=e.ref(10),i=e.ref(!0),d=async(e=!1)=>{try{uni.showNavigationBarLoading();const t=await(a={pageNum:n.value,pageSize:r.value},V({url:"/fulfiller/complaint/pageMy",method:"get",params:a})),o=t.rows||[];l.value=e?[...l.value,...o]:o,i.value=l.value.length<(t.total||0)}catch(o){t("error","at pages/my/complaint/list/index.vue:74","加载投诉记录失败",o)}finally{uni.hideNavigationBarLoading(),uni.stopPullDownRefresh()}var a};o((()=>{n.value=1,d()})),c((()=>{n.value=1,d()})),s((()=>{i.value&&(n.value++,d(!0))}));return(t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"complaint-list-page"},[e.createVNode(u,{title:"投诉管理"}),e.createElementVNode("view",{class:"list-container"},[0===l.value.length?(e.openBlock(),e.createElementBlock("view",{key:0,class:"empty-state"},[e.createElementVNode("text",null,"暂无投诉记录")])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(l.value,(t=>(e.openBlock(),e.createElementBlock("view",{class:"history-card",key:t.id},[e.createElementVNode("view",{class:"card-header"},[e.createElementVNode("view",{class:"left-box"},[e.createElementVNode("text",{class:e.normalizeClass(["status-tag",t.praiseFlag?"praise":"complaint"])},e.toDisplayString(t.praiseFlag?"赞":"不赞"),3),e.createElementVNode("text",{class:"order-no"},"单号:"+e.toDisplayString(t.orderCode||"-"),1)]),e.createElementVNode("text",{class:"status-text"},"已提交")]),e.createElementVNode("view",{class:"card-body"},[e.createElementVNode("view",{class:"reason-row"},[e.createElementVNode("text",{class:"label"},e.toDisplayString(t.praiseFlag?"理由:":"不赞原因:"),1),e.createElementVNode("text",{class:"reason-content"},e.toDisplayString(t.reason||"未填写内容"),1)]),t.photos?(e.openBlock(),e.createElementBlock("view",{key:0,class:"photo-grid"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.photos.split(","),((a,l)=>(e.openBlock(),e.createElementBlock("image",{key:l,src:a,mode:"aspectFill",class:"photo-item",onClick:e=>((e,t)=>{uni.previewImage({urls:e,current:t})})(t.photos.split(","),l)},null,8,["src","onClick"])))),128))])):e.createCommentVNode("",!0)]),e.createElementVNode("view",{class:"card-footer"},[e.createElementVNode("text",{class:"time"},e.toDisplayString(t.createTime||"-"),1)])])))),128)),l.value.length>0&&!i.value?(e.openBlock(),e.createElementBlock("view",{key:2,class:"no-more"},"没有更多了")):e.createCommentVNode("",!0)])]))}},[["__scopeId","data-v-073e7a19"]]),re=i({__name:"index",setup(l){const o=e.ref(""),s=e.ref(""),c=e.ref(""),r=e.ref(!1),i=e.ref(""),d=e.ref([]),m=e.ref(!1);n((e=>{e.orderId&&(o.value=e.orderId),e.orderCode&&(s.value=e.orderCode),e.fulfillerId&&(c.value=e.fulfillerId)}));const g=()=>{uni.chooseImage({count:6-d.value.length,sizeType:["compressed"],success:e=>{const t=e.tempFiles;N(t)}})},N=e=>{uni.showLoading({title:"上传中..."});const t=uni.getStorageSync("token")||"",a=e.map((e=>new Promise(((a,l)=>{uni.uploadFile({url:v+"/resource/oss/upload",filePath:e.path,name:"file",header:{...p,Authorization:`Bearer ${t}`},success:e=>{const t=JSON.parse(e.data);200===t.code?a(t.data.url):l(t.msg||"上传失败")},fail:e=>l("请求失败")})}))));Promise.all(a).then((e=>{d.value=[...d.value,...e],uni.hideLoading()})).catch((e=>{uni.hideLoading(),uni.showToast({title:String(e),icon:"none"})}))},E=async()=>{if(i.value.trim())if(o.value&&c.value){m.value=!0;try{const t={orderId:o.value,fulfiller:c.value,reason:i.value,photos:d.value.join(","),praiseFlag:r.value};await(e=t,V({url:"/fulfiller/complaint/add",method:"post",data:e})),uni.showToast({title:"提交成功",icon:"success"}),setTimeout((()=>{uni.navigateBack()}),1500)}catch(a){t("error","at pages/my/complaint/submit/index.vue:185","提交失败:",a)}finally{m.value=!1}var e}else uni.showToast({title:"订单数据不完整,无法提交",icon:"none"});else uni.showToast({title:r.value?"请输入评价内容":"请输入投诉原因",icon:"none"})};return(t,l)=>{const o=a(e.resolveDynamicComponent("uni-icons"),w);return e.openBlock(),e.createElementBlock("view",{class:"complaint-submit-page"},[e.createVNode(u,{title:r.value?"发表评价":"提交投诉",color:"#000"},null,8,["title"]),e.createElementVNode("view",{class:"page-content"},[e.createElementVNode("view",{class:"type-card card-shadow"},[e.createElementVNode("view",{class:e.normalizeClass(["type-item",{active:!r.value}]),onClick:l[0]||(l[0]=e=>r.value=!1)},[e.createElementVNode("view",{class:"icon-wrap bad"},[e.createElementVNode("text",{class:"type-emoji"},e.toDisplayString(r.value?"👎🏻":"👎"),1)]),e.createElementVNode("text",{class:"type-text"},"不赞"),r.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("text",{key:0,class:"type-sub"},"投诉"))],2),e.createElementVNode("view",{class:"type-divider"}),e.createElementVNode("view",{class:e.normalizeClass(["type-item",{active:r.value}]),onClick:l[1]||(l[1]=e=>r.value=!0)},[e.createElementVNode("view",{class:"icon-wrap good"},[e.createElementVNode("text",{class:"type-emoji"},e.toDisplayString(r.value?"👍":"👍🏻"),1)]),e.createElementVNode("text",{class:"type-text"},"赞"),r.value?(e.openBlock(),e.createElementBlock("text",{key:0,class:"type-sub"},"好评")):e.createCommentVNode("",!0)],2)]),e.createElementVNode("view",{class:"form-section card-shadow"},[e.createElementVNode("view",{class:"section-title"},[e.createElementVNode("text",{class:"title-text"},e.toDisplayString(r.value?"评价详情":"投诉原因"),1),e.createElementVNode("text",{class:"title-tip"},"必填")]),e.withDirectives(e.createElementVNode("textarea",{class:"content-textarea","onUpdate:modelValue":l[2]||(l[2]=e=>i.value=e),placeholder:r.value?"请记录您的满意点,帮助履约师提升服务质量...":"请详细描述您遇到的问题,我们会尽快为您处理...",maxlength:"500"},null,8,["placeholder"]),[[e.vModelText,i.value]]),e.createElementVNode("view",{class:"word-count"},e.toDisplayString(i.value.length)+"/500",1)]),e.createElementVNode("view",{class:"form-section card-shadow"},[e.createElementVNode("view",{class:"section-title"},[e.createElementVNode("text",{class:"title-text"},"凭证图片"),e.createElementVNode("text",{class:"title-tip gray"},"最多6张")]),e.createElementVNode("view",{class:"upload-grid"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,((t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"upload-item",key:a},[e.createElementVNode("image",{src:t,mode:"aspectFill",onClick:e=>(e=>{uni.previewImage({current:e,urls:d.value})})(a)},null,8,["src","onClick"]),e.createElementVNode("view",{class:"delete-icon",onClick:e.withModifiers((e=>(e=>{d.value.splice(e,1)})(a)),["stop"])},[e.createVNode(o,{type:"closeempty",size:"12",color:"#fff"})],8,["onClick"])])))),128)),d.value.length<6?(e.openBlock(),e.createElementBlock("view",{key:0,class:"upload-add",onClick:g},[e.createVNode(o,{type:"plusempty",size:"32",color:"#ccc"}),e.createElementVNode("text",{class:"add-text"},"上传凭证")])):e.createCommentVNode("",!0)])]),e.createElementVNode("view",{class:"order-info-bar"},[e.createElementVNode("text",null,"关联订单:"+e.toDisplayString(s.value),1)])]),e.createElementVNode("view",{class:"bottom-bar"},[e.createElementVNode("button",{class:e.normalizeClass(["submit-btn",{"is-praise":r.value}]),onClick:E,loading:m.value},e.toDisplayString(r.value?"确认赞":"确认不赞"),11,["loading"])])])}}},[["__scopeId","data-v-bf46b4a4"]]),ie=i({__name:"index",setup(l){const o=e.ref([]),s=e.ref("0.00"),c=e.ref(0),r=e.ref("0.00"),i=e.ref("0.00"),d=e.ref({}),m=e.ref("本月"),v=e.ref({pageNum:1,pageSize:9999,"params[beginTime]":"","params[endTime]":""}),p=async()=>{try{uni.showLoading({title:"加载中"});const t=(await(e=v.value,V({url:"/order/subOrder/listOnFeeStatistic",method:"get",params:e}))).rows||[];let a=0,l=0;o.value=t.map((e=>{const t=(e.orderCommission||0)/100;a+=t,t>l&&(l=t);let o=e.groupPurchasePackageName||"";if(!o){const t=(e.service||e.serviceId||"").toString().trim();t&&(o=d.value[t]||"未知服务")}return{title:o||"基础服务",time:e.createTime||"",amount:t.toFixed(2),orderNo:e.code||""}})),c.value=t.length,s.value=a.toFixed(2),r.value=l.toFixed(2),i.value=t.length>0?(a/t.length).toFixed(2):"0.00"}catch(a){t("error","at pages/my/fee/statistics/index.vue:122",a)}finally{uni.hideLoading()}var e},g=e=>{const t=e.detail.value;m.value=t;const a=new Date(t+"-01"),l=a.getFullYear(),o=a.getMonth(),n=new Date(l,o+1,0).getDate();v.value["params[beginTime]"]=`${t}-01 00:00:00`,v.value["params[endTime]"]=`${t}-${n} 23:59:59`,p()};return n((async()=>{const e=new Date,a=e.getFullYear();let l=e.getMonth()+1;l<10&&(l="0"+l);const o=`${a}-${l}`;m.value=o;const n=new Date(a,l,0).getDate();v.value["params[beginTime]"]=`${o}-01 00:00:00`,v.value["params[endTime]"]=`${o}-${n} 23:59:59`,uni.showLoading({title:"加载中"}),await(async()=>{try{const e=await N(),t=e.data||e.rows||(Array.isArray(e)?e:[]);if(Array.isArray(t)){const e={};t.forEach((t=>{t.id&&(e[String(t.id).trim()]=t.name)})),d.value=e}}catch(e){t("error","at pages/my/fee/statistics/index.vue:157","获取服务类型失败",e)}})(),p()})),(t,l)=>{const n=a(e.resolveDynamicComponent("uni-icons"),w);return e.openBlock(),e.createElementBlock("view",{class:"fee-statistics-page"},[e.createVNode(u,{title:"费用统计",bgColor:"#ffffff",color:"#000"}),e.createElementVNode("view",{class:"header-bg"},[e.createElementVNode("view",{class:"total-title"},"总服务费 (元)"),e.createElementVNode("view",{class:"total-amount"},e.toDisplayString(s.value),1),e.createElementVNode("view",{class:"date-picker-wrap"},[e.createElementVNode("picker",{mode:"date",fields:"month",onChange:g},[e.createElementVNode("view",{class:"date-range"},[e.createElementVNode("text",null,e.toDisplayString(m.value),1),e.createVNode(n,{type:"bottom",size:"14",color:"#fff"})])],32)])]),e.createElementVNode("view",{class:"stats-card"},[e.createElementVNode("view",{class:"stats-item"},[e.createElementVNode("text",{class:"stats-value"},e.toDisplayString(c.value),1),e.createElementVNode("text",{class:"stats-label"},"单数")]),e.createElementVNode("view",{class:"stats-divider"}),e.createElementVNode("view",{class:"stats-item"},[e.createElementVNode("text",{class:"stats-value"},e.toDisplayString(r.value),1),e.createElementVNode("text",{class:"stats-label"},"最高单笔")]),e.createElementVNode("view",{class:"stats-divider"}),e.createElementVNode("view",{class:"stats-item"},[e.createElementVNode("text",{class:"stats-value"},e.toDisplayString(i.value),1),e.createElementVNode("text",{class:"stats-label"},"平均单笔")])]),e.createElementVNode("view",{class:"detail-section"},[e.createElementVNode("view",{class:"section-header"},[e.createElementVNode("view",{class:"header-line"}),e.createElementVNode("text",{class:"header-text"},"订单明细")]),e.createElementVNode("view",{class:"detail-list"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,((t,a)=>(e.openBlock(),e.createElementBlock("view",{class:"detail-item",key:a},[e.createElementVNode("view",{class:"detail-info"},[e.createElementVNode("view",{class:"detail-title"},e.toDisplayString(t.title),1),e.createElementVNode("view",{class:"detail-time"},e.toDisplayString(t.time),1)]),e.createElementVNode("view",{class:"detail-amount-wrap"},[e.createElementVNode("view",{class:"detail-amount"},"+"+e.toDisplayString(t.amount),1),e.createElementVNode("view",{class:"detail-no"},e.toDisplayString(t.orderNo),1)])])))),128))])])])}}},[["__scopeId","data-v-0ca8dcde"]]);__definePage("pages/index/index",m),__definePage("pages/service/all/index",E),__definePage("pages/order/list/index",x),__definePage("pages/my/index",S),__definePage("pages/login/index",D),__definePage("pages/service/detail/index",M),__definePage("pages/service/review/index",P),__definePage("pages/order/apply/index",q),__definePage("pages/order/detail/index",$),__definePage("pages/store/apply/index",O),__definePage("pages/my/pet/list/index",K),__definePage("pages/my/pet/edit/index",G),__definePage("pages/my/pet/add/index",W),__definePage("pages/my/pet/detail/index",J),__definePage("pages/my/user/list/index",Z),__definePage("pages/my/user/edit/index",X),__definePage("pages/my/user/add/index",Q),__definePage("pages/my/user/detail/index",Y),__definePage("pages/my/review/list/index",ee),__definePage("pages/my/agreement/list/index",te),__definePage("pages/my/agreement/detail/index",ae),__definePage("pages/my/settings/index",le),__definePage("pages/my/settings/profile/index",oe),__definePage("pages/my/settings/account-delete/index",ne),__definePage("pages/my/settings/change-password/index",se),__definePage("pages/my/complaint/list/index",ce),__definePage("pages/my/complaint/submit/index",re),__definePage("pages/my/fee/statistics/index",ie);const de={onLaunch(){t("log","at App.vue:4","App Launch")},onShow(){t("log","at App.vue:7","App Show")},onHide(){t("log","at App.vue:10","App Hide")}};const{app:me,Vuex:ue,Pinia:ve}={app:e.createVueApp(de)};uni.Vuex=ue,uni.Pinia=ve,me.provide("__globalStyles",__uniConfig.styles),me._component.mpType="app",me._component.render=()=>{},me.mount("#app")}(Vue);