文件
mashangyoujiu/rider/static/pages-order-report-problem.BTXnCybb.js

2 行
8.7 KiB
JavaScript
可执行文件

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

import{_ as e,H as t,r as a,b as l,c as o,d as c,w as s,E as r,G as d,a5 as i,a6 as n,Z as u,aa as m,i as p,f,as as _,h,j as b,m as v,n as g,q as y,x as P,C as k,D as x,F as w,u as C,y as z,A as T,t as I,z as R}from"./index-fL1SRM2N.js";const D=e({onLoad(e){this.setParams(e)},setup(){const{proxy:e}=z();t();const l=a(""),o=a(""),c=a(""),s=a({}),p=a(""),f=a(""),_=a([]),h=a(""),b=a(!1),v=a([{code:"missing_items",title:"商品缺失",desc:"订单中的商品缺少或遗漏",icon:"minus-circle"},{code:"wrong_items",title:"商品错误",desc:"商品与订单不符或错误",icon:"close-circle"},{code:"damaged_package",title:"包装破损",desc:"商品包装破损或泄漏",icon:"bookmark"},{code:"quality_issue",title:"餐品质量问题",desc:"餐品变质、异味等质量问题",icon:"error-circle"},{code:"merchant_delay",title:"商家出餐慢",desc:"商家制作时间过长,影响配送",icon:"clock"},{code:"address_error",title:"地址错误",desc:"客户地址错误或无法找到",icon:"map"},{code:"customer_unreachable",title:"客户联系不上",desc:"客户电话无法接通或不接听",icon:"account"},{code:"weather_issue",title:"恶劣天气",desc:"暴雨、台风等恶劣天气影响配送",icon:"download"},{code:"vehicle_breakdown",title:"车辆故障",desc:"配送车辆出现故障无法继续配送",icon:"car"},{code:"other",title:"其他问题",desc:"其他未列出的异常情况",icon:"more-circle"}]),g=async()=>{if(0===_.value.length)return[];try{i({title:"上传照片中..."});const t=_.value.map(t=>e.$api.user.uploadFile(t)),a=(await Promise.all(t)).map(e=>{if(1===e.code)return e.data.file_url;throw new Error(e.msg||"照片上传失败")});return n(),a}catch(t){throw n(),console.error("照片上传失败:",t),u({title:t.message||"照片上传失败",icon:"none"}),t}},y=()=>{if(!p.value)return u({title:"请选择问题类型",icon:"none"}),!1;if(!h.value)return u({title:"请输入联系电话",icon:"none"}),!1;return!!/^1[3-9]\d{9}$/.test(h.value)||(u({title:"请输入正确的手机号",icon:"none"}),!1)};return{orderId:l,problemType:o,problemText:c,orderInfo:s,selectedProblem:p,problemDescription:f,evidencePhotos:_,contactPhone:h,submitLoading:b,problemTypes:v,selectProblem:e=>{p.value=e.code},addPhoto:()=>{r({count:3-_.value.length,sizeType:["compressed"],sourceType:["camera","album"],success:e=>{_.value.push(...e.tempFilePaths)}})},previewPhoto:e=>{d({urls:_.value,current:e})},deletePhoto:e=>{_.value.splice(e,1)},validateForm:y,uploadPhotos:g,submitReport:async()=>{if(y()){b.value=!0;try{let t=[];_.value.length>0&&(t=await g()),i({title:"提交中..."});const a={order_id:l.value,problem_type:p.value,problem_description:f.value,evidence_photos:t.join(","),contact_phone:h.value,submit_time:(new Date).toISOString()},o=await e.$api.order.reportProblem(a);if(1!==o.code)throw new Error(o.msg||"提交失败");n(),u({title:"提交成功",icon:"success",duration:2e3}),setTimeout(()=>{m({delta:1})},2e3)}catch(t){n(),console.error("提交异常报告失败:",t);let e="提交失败,请重试";t.message?e=t.message:"NETWORK_ERROR"===t.code?e="网络连接失败,请检查网络":"TIMEOUT"===t.code&&(e="请求超时,请重试"),u({title:e,icon:"none",duration:3e3})}finally{b.value=!1}}},goBack:()=>{m()},setParams:t=>{l.value=t.orderId||"",o.value=t.problemType||"",c.value=t.problemText||"";const a=t.type||"delivery";o.value&&(p.value=o.value),l.value&&(async()=>{try{i({title:"加载中..."});const t=await e.$api.order.getOrderDetail({order_id:l.value});1===t.code&&(s.value=t.data,h.value=t.data.rider_phone||"")}catch(t){console.error("获取订单详情失败:",t),u({title:"获取订单信息失败",icon:"none"})}finally{n()}})(),console.log(`异常上报来源:${a} 页面`)}}}},[["render",function(e,t,a,r,d,i){const n=T,u=p,m=l(o("u-icon"),f),z=l(o("u-textarea"),_),D=R,E=l(o("u-input"),h),V=l(o("u-button"),b);return v(),c(u,{class:"report-problem-container"},{default:s(()=>[g(u,{class:"order-info-card"},{default:s(()=>[g(u,{class:"order-header"},{default:s(()=>[g(n,{class:"order-no"},{default:s(()=>[y("订单号:"+P(r.orderInfo.order_no),1)]),_:1}),g(n,{class:"order-status"},{default:s(()=>[y(P(r.orderInfo.status_text),1)]),_:1})]),_:1}),g(u,{class:"merchant-info"},{default:s(()=>[g(n,{class:"merchant-name"},{default:s(()=>[y(P(r.orderInfo.store_name),1)]),_:1}),g(n,{class:"order-time"},{default:s(()=>[y(P(r.orderInfo.add_time),1)]),_:1})]),_:1})]),_:1}),g(u,{class:"problem-type-card"},{default:s(()=>[g(u,{class:"card-title"},{default:s(()=>[g(m,{name:"warning",size:"16",color:"#f56c6c"}),g(n,{class:"title-text"},{default:s(()=>[y("请选择遇到的问题")]),_:1})]),_:1}),g(u,{class:"problem-list"},{default:s(()=>[(v(!0),k(w,null,x(r.problemTypes,(e,t)=>(v(),c(u,{class:I(["problem-item",{selected:r.selectedProblem===e.code}]),key:t,onClick:t=>r.selectProblem(e)},{default:s(()=>[g(u,{class:"problem-content"},{default:s(()=>[g(m,{name:e.icon,size:"20",color:r.selectedProblem===e.code?"#3c9cff":"#909399"},null,8,["name","color"]),g(u,{class:"problem-info"},{default:s(()=>[g(n,{class:"problem-title"},{default:s(()=>[y(P(e.title),1)]),_:2},1024),g(n,{class:"problem-desc"},{default:s(()=>[y(P(e.desc),1)]),_:2},1024)]),_:2},1024)]),_:2},1024),g(m,{name:r.selectedProblem===e.code?"checkmark-circle-fill":"checkmark-circle",size:"20",color:r.selectedProblem===e.code?"#3c9cff":"#c0c4cc"},null,8,["name","color"])]),_:2},1032,["class","onClick"]))),128))]),_:1})]),_:1}),g(u,{class:"description-card"},{default:s(()=>[g(u,{class:"card-title"},{default:s(()=>[g(m,{name:"coupon",size:"16",color:"#3c9cff"}),g(n,{class:"title-text"},{default:s(()=>[y("详细描述")]),_:1}),g(n,{class:"optional-text"},{default:s(()=>[y("(选填)")]),_:1})]),_:1}),g(u,{class:"textarea-container"},{default:s(()=>[g(z,{modelValue:r.problemDescription,"onUpdate:modelValue":t[0]||(t[0]=e=>r.problemDescription=e),placeholder:"请详细描述遇到的问题,有助于我们更好地处理...",maxlength:500,count:"",height:"120","custom-style":{backgroundColor:"#f8f9fa",borderRadius:"8px",padding:"12px"}},null,8,["modelValue"])]),_:1})]),_:1}),g(u,{class:"evidence-card"},{default:s(()=>[g(u,{class:"card-title"},{default:s(()=>[g(m,{name:"camera",size:"16",color:"#3c9cff"}),g(n,{class:"title-text"},{default:s(()=>[y("上传凭证")]),_:1}),g(n,{class:"optional-text"},{default:s(()=>[y("(选填,最多3张)")]),_:1})]),_:1}),g(u,{class:"photo-upload"},{default:s(()=>[g(u,{class:"photo-list"},{default:s(()=>[(v(!0),k(w,null,x(r.evidencePhotos,(e,t)=>(v(),c(u,{class:"photo-item",key:t},{default:s(()=>[g(D,{src:e,mode:"aspectFill",onClick:e=>r.previewPhoto(t)},null,8,["src","onClick"]),g(u,{class:"photo-delete",onClick:e=>r.deletePhoto(t)},{default:s(()=>[g(m,{name:"close",size:"12",color:"#fff"})]),_:2},1032,["onClick"])]),_:2},1024))),128)),r.evidencePhotos.length<3?(v(),c(u,{key:0,class:"photo-add",onClick:r.addPhoto},{default:s(()=>[g(m,{name:"camera-fill",size:"24",color:"#c0c4cc"}),g(n,{class:"add-text"},{default:s(()=>[y("添加照片")]),_:1})]),_:1},8,["onClick"])):C("",!0)]),_:1}),g(n,{class:"photo-tip"},{default:s(()=>[y("建议上传相关照片作为凭证,有助于问题处理")]),_:1})]),_:1})]),_:1}),g(u,{class:"contact-card"},{default:s(()=>[g(u,{class:"card-title"},{default:s(()=>[g(m,{name:"phone",size:"16",color:"#3c9cff"}),g(n,{class:"title-text"},{default:s(()=>[y("联系方式")]),_:1})]),_:1}),g(u,{class:"contact-input"},{default:s(()=>[g(E,{modelValue:r.contactPhone,"onUpdate:modelValue":t[1]||(t[1]=e=>r.contactPhone=e),placeholder:"请输入您的联系电话",type:"number","custom-style":{backgroundColor:"#f8f9fa",borderRadius:"8px",padding:"12px"}},null,8,["modelValue"])]),_:1}),g(n,{class:"contact-tip"},{default:s(()=>[y("我们会在24小时内联系您处理问题")]),_:1})]),_:1}),g(u,{class:"bottom-actions"},{default:s(()=>[g(V,{type:"primary",size:"large",onClick:r.submitReport,loading:r.submitLoading,disabled:!r.selectedProblem,"custom-style":{width:"100%",background:r.selectedProblem?"linear-gradient(45deg, #3c9cff, #5dade2)":"#c0c4cc"}},{default:s(()=>[y(" 提交异常报告 ")]),_:1},8,["onClick","loading","disabled","custom-style"])]),_:1}),g(u,{class:"tips-card"},{default:s(()=>[g(u,{class:"tips-header"},{default:s(()=>[g(m,{name:"info-circle",size:"16",color:"#909399"}),g(n,{class:"tips-title"},{default:s(()=>[y("温馨提示")]),_:1})]),_:1}),g(u,{class:"tips-content"},{default:s(()=>[g(n,{class:"tips-text"},{default:s(()=>[y("• 提交后我们会尽快处理您的问题")]),_:1}),g(n,{class:"tips-text"},{default:s(()=>[y("• 如需紧急处理,请直接联系客服热线")]),_:1}),g(n,{class:"tips-text"},{default:s(()=>[y("• 虚假上报可能影响您的信用评级")]),_:1})]),_:1})]),_:1})]),_:1})}],["__scopeId","data-v-022a913c"]]);export{D as default};