2 lines
14 KiB
JavaScript
2 lines
14 KiB
JavaScript
import{D as Ce,B as De,C as Re,P as Ee,Q as Ue,i as Fe,L as Ye,M as $e,N as Me,T as Te,h as Ne,G as He,I as he,V as Le,e as Pe,R as Se}from"./element-plus-Bolc0EfP.js";import{_ as qe}from"./DataPanel.vue_vue_type_script_setup_true_lang-W9hX7GcI.js";import{_ as Be}from"./index.vue_vue_type_script_setup_true_lang-EJPdzUeK.js";import{_ as Ie}from"./FilterPanel.vue_vue_type_script_setup_true_lang-Ddv5cKss.js";import{w as X}from"./@vue/runtime-dom-DDAG46FW.js";import{f as Ke,a as ze,b as Ae,h as Ge,g as Oe,c as Qe,d as je,e as Je}from"./fans-Cl3sGpVO.js";import{u as Xe}from"./usePaging-VsbTxSU0.js";import{i as W}from"./index-B6p-ZV3k.js";import{d as Z}from"./dayjs-DG77mNTn.js";import{f as le,ak as g,I,a as l,aN as t,O as n,aP as ee,G as w,J as K,H as We}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as M,n as u}from"./@vue/reactivity-DiY1c2vO.js";import{Q as T}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-B0jSCQ-G.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ze={class:"fans-management"},el={key:1,class:"text-gray-400"},ll={class:"mb-4"},tl={key:0,class:"text-center mt-4"},al=le({name:"fansManagement"}),Ol=le({...al,setup(ol){const te=i=>{if(!i)return"-";const e=String(i).length===10?Number(i)*1e3:Number(i);return Z(e).format("YYYY-MM-DD HH:mm:ss")},f=u({name:"",phone:"",gender:"",status:""}),{pager:k,getLists:x,resetParams:ae,resetPage:N}=Xe({fetchFun:Ke,params:f.value}),V=u(!1),C=u("add"),H=u(),h=u(!1),d=u({id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""}),oe={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"},{pattern:/^1[3-9]\d{9}$/,message:"手机号格式不正确",trigger:"blur"}],id_card:[{pattern:/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,message:"身份证号格式不正确",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}]},ie=()=>{C.value="add",V.value=!0},ne=i=>{C.value="edit",d.value={id:i.id,name:i.name,phone:i.phone,id_card:i.id_card,age:i.age,gender:i.gender,status:i.status,remark:i.remark},V.value=!0},de=()=>{var i;d.value={id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""},(i=H.value)==null||i.resetFields()},se=async()=>{var i;await((i=H.value)==null?void 0:i.validate()),h.value=!0;try{C.value==="add"?await ze(d.value):await Ae(d.value),V.value=!1,x()}catch{}finally{h.value=!1}},re=async i=>{await W.confirm("确定要删除该粉丝吗?");try{await Ge({id:i}),x()}catch{}},D=u(!1),R=u(null),y=u([]),L=u(!1),z=u(0),c=u(1),ue={1:"",2:"success",3:"info",4:"warning",5:"danger"},me=i=>{R.value=i,D.value=!0,c.value=1,y.value=[],E()},E=async()=>{L.value=!0;try{const i=await Oe({fan_id:R.value.id,page_no:c.value,page_size:15});c.value===1?y.value=i.lists||[]:y.value=[...y.value,...i.lists||[]],z.value=i.count||0}catch(i){console.error("获取回访记录失败:",i)}finally{L.value=!1}},pe=()=>{c.value++,E()},b=u(!1),U=u("add"),P=u(),S=u(!1),m=u({id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""}),fe={visit_type:[{required:!0,message:"请选择回访类型",trigger:"change"}],visit_time:[{required:!0,message:"请选择回访时间",trigger:"change"}],content:[{required:!0,message:"请输入回访内容",trigger:"blur"}]},_e=()=>{U.value="add",m.value={id:0,fan_id:R.value.id,visit_type:1,visit_time:Z().format("YYYY-MM-DD HH:mm:ss"),content:"",result:"",next_visit_time:""},b.value=!0},ve=i=>{U.value="edit",m.value={id:i.id,fan_id:i.fan_id,visit_type:i.visit_type,visit_time:i.visit_time_text||"",content:i.content||"",result:i.result||"",next_visit_time:i.next_visit_time_text||""},b.value=!0},ge=()=>{var i;m.value={id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""},(i=P.value)==null||i.resetFields()},Ve=async()=>{var i;await((i=P.value)==null?void 0:i.validate()),S.value=!0;try{U.value==="add"?await Qe(m.value):await je(m.value),b.value=!1,c.value=1,E()}catch{}finally{S.value=!1}},be=async i=>{await W.confirm("确定要删除该回访记录吗?");try{await Je({id:i}),c.value=1,E()}catch{}};return x(),(i,e)=>{var J;const v=Re,r=De,_=Ue,q=Ee,p=Fe,B=Ce,ye=Ie,s=Me,F=Te,A=$e,ce=Be,ke=qe,we=Ne,Y=he,G=He,O=Le,xe=Pe,Q=Se,j=Ye;return g(),I("div",Ze,[l(ye,null,{default:t(()=>[l(B,{class:"ls-form",model:o(f),inline:""},{default:t(()=>[l(r,{class:"w-[280px]",label:"姓名"},{default:t(()=>[l(v,{placeholder:"请输入姓名",modelValue:o(f).name,"onUpdate:modelValue":e[0]||(e[0]=a=>o(f).name=a),clearable:"",onKeyup:X(o(N),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[280px]",label:"手机号"},{default:t(()=>[l(v,{placeholder:"请输入手机号",modelValue:o(f).phone,"onUpdate:modelValue":e[1]||(e[1]=a=>o(f).phone=a),clearable:"",onKeyup:X(o(N),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[180px]",label:"性别"},{default:t(()=>[l(q,{modelValue:o(f).gender,"onUpdate:modelValue":e[2]||(e[2]=a=>o(f).gender=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(_,{label:"男",value:1}),l(_,{label:"女",value:2})]),_:1},8,["modelValue"])]),_:1}),l(r,{class:"w-[180px]",label:"状态"},{default:t(()=>[l(q,{modelValue:o(f).status,"onUpdate:modelValue":e[3]||(e[3]=a=>o(f).status=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(_,{label:"启用",value:1}),l(_,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),l(r,null,{default:t(()=>[l(p,{type:"primary",onClick:o(N)},{default:t(()=>[...e[22]||(e[22]=[n("查询",-1)])]),_:1},8,["onClick"]),l(p,{onClick:o(ae)},{default:t(()=>[...e[23]||(e[23]=[n("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),ee((g(),w(ke,null,{toolbar:t(()=>[l(p,{type:"primary",onClick:ie},{default:t(()=>[...e[24]||(e[24]=[n("新增粉丝",-1)])]),_:1})]),footer:t(()=>[l(ce,{modelValue:o(k),"onUpdate:modelValue":e[4]||(e[4]=a=>M(k)?k.value=a:null),onChange:o(x)},null,8,["modelValue","onChange"])]),default:t(()=>[l(A,{data:o(k).lists,size:"large"},{default:t(()=>[l(s,{label:"ID",prop:"id",width:"70"}),l(s,{label:"姓名",prop:"name","min-width":"100"}),l(s,{label:"手机号",prop:"phone","min-width":"130"}),l(s,{label:"身份证号",prop:"id_card","min-width":"180"}),l(s,{label:"性别",prop:"gender_desc",width:"80"}),l(s,{label:"年龄",prop:"age",width:"70"}),l(s,{label:"备注",prop:"remark","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"登记人",prop:"creator_name","min-width":"100"},{default:t(({row:a})=>[K("span",null,T(a.creator_name||"-"),1)]),_:1}),l(s,{label:"回访次数",width:"90",align:"center"},{default:t(({row:a})=>[a.visit_count>0?(g(),w(F,{key:0,type:"success"},{default:t(()=>[n(T(a.visit_count),1)]),_:2},1024)):(g(),I("span",el,"0"))]),_:1}),l(s,{label:"状态",width:"80"},{default:t(({row:a})=>[a.status==1?(g(),w(F,{key:0,type:"success"},{default:t(()=>[...e[25]||(e[25]=[n("启用",-1)])]),_:1})):(g(),w(F,{key:1,type:"danger"},{default:t(()=>[...e[26]||(e[26]=[n("禁用",-1)])]),_:1}))]),_:1}),l(s,{label:"创建时间","min-width":"170"},{default:t(({row:a})=>[K("span",null,T(te(a.create_time)),1)]),_:1}),l(s,{label:"操作",width:"220",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:$=>ne(a)},{default:t(()=>[...e[27]||(e[27]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"success",link:"",onClick:$=>me(a)},{default:t(()=>[...e[28]||(e[28]=[n("回访记录",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:$=>re(a.id)},{default:t(()=>[...e[29]||(e[29]=[n("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:1})),[[j,o(k).loading]]),l(O,{modelValue:o(V),"onUpdate:modelValue":e[13]||(e[13]=a=>M(V)?V.value=a:null),title:o(C)==="add"?"新增粉丝":"编辑粉丝",width:"600px","close-on-click-modal":!1,onClosed:de},{footer:t(()=>[l(p,{onClick:e[12]||(e[12]=a=>V.value=!1)},{default:t(()=>[...e[34]||(e[34]=[n("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(h),onClick:se},{default:t(()=>[...e[35]||(e[35]=[n("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(B,{ref_key:"fanFormRef",ref:H,model:o(d),rules:oe,"label-width":"100px"},{default:t(()=>[l(r,{label:"姓名",prop:"name"},{default:t(()=>[l(v,{modelValue:o(d).name,"onUpdate:modelValue":e[5]||(e[5]=a=>o(d).name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),l(r,{label:"手机号",prop:"phone"},{default:t(()=>[l(v,{modelValue:o(d).phone,"onUpdate:modelValue":e[6]||(e[6]=a=>o(d).phone=a),placeholder:"请输入手机号",maxlength:"11"},null,8,["modelValue"])]),_:1}),l(r,{label:"身份证号",prop:"id_card"},{default:t(()=>[l(v,{modelValue:o(d).id_card,"onUpdate:modelValue":e[7]||(e[7]=a=>o(d).id_card=a),placeholder:"请输入身份证号码",maxlength:"18"},null,8,["modelValue"])]),_:1}),l(r,{label:"年龄",prop:"age"},{default:t(()=>[l(we,{modelValue:o(d).age,"onUpdate:modelValue":e[8]||(e[8]=a=>o(d).age=a),min:0,max:150},null,8,["modelValue"])]),_:1}),l(r,{label:"性别",prop:"gender"},{default:t(()=>[l(G,{modelValue:o(d).gender,"onUpdate:modelValue":e[9]||(e[9]=a=>o(d).gender=a)},{default:t(()=>[l(Y,{label:1},{default:t(()=>[...e[30]||(e[30]=[n("男",-1)])]),_:1}),l(Y,{label:2},{default:t(()=>[...e[31]||(e[31]=[n("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"状态",prop:"status"},{default:t(()=>[l(G,{modelValue:o(d).status,"onUpdate:modelValue":e[10]||(e[10]=a=>o(d).status=a)},{default:t(()=>[l(Y,{label:1},{default:t(()=>[...e[32]||(e[32]=[n("启用",-1)])]),_:1}),l(Y,{label:0},{default:t(()=>[...e[33]||(e[33]=[n("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"备注",prop:"remark"},{default:t(()=>[l(v,{modelValue:o(d).remark,"onUpdate:modelValue":e[11]||(e[11]=a=>o(d).remark=a),type:"textarea",rows:3,placeholder:"请输入备注",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(xe,{modelValue:o(D),"onUpdate:modelValue":e[14]||(e[14]=a=>M(D)?D.value=a:null),title:`回访记录 - ${((J=o(R))==null?void 0:J.name)||""}`,size:"700px","close-on-click-modal":!1},{default:t(()=>[K("div",ll,[l(p,{type:"primary",onClick:_e},{default:t(()=>[...e[36]||(e[36]=[n("新增回访记录",-1)])]),_:1})]),ee((g(),w(A,{data:o(y),size:"large"},{default:t(()=>[l(s,{label:"回访类型",width:"100"},{default:t(({row:a})=>[l(F,{type:ue[a.visit_type]},{default:t(()=>[n(T(a.visit_type_desc),1)]),_:2},1032,["type"])]),_:1}),l(s,{label:"回访时间",prop:"visit_time_text","min-width":"150"}),l(s,{label:"回访内容",prop:"content","min-width":"200","show-overflow-tooltip":""}),l(s,{label:"回访结果",prop:"result","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"下次回访",prop:"next_visit_time_text","min-width":"150"}),l(s,{label:"操作人",prop:"operator_name",width:"100"}),l(s,{label:"操作",width:"120",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:$=>ve(a)},{default:t(()=>[...e[37]||(e[37]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:$=>be(a.id)},{default:t(()=>[...e[38]||(e[38]=[n("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[j,o(L)]]),o(z)>o(y).length?(g(),I("div",tl,[l(p,{link:"",type:"primary",onClick:pe},{default:t(()=>[...e[39]||(e[39]=[n("加载更多",-1)])]),_:1})])):We("",!0)]),_:1},8,["modelValue","title"]),l(O,{modelValue:o(b),"onUpdate:modelValue":e[21]||(e[21]=a=>M(b)?b.value=a:null),title:o(U)==="add"?"新增回访记录":"编辑回访记录",width:"600px","close-on-click-modal":!1,onClosed:ge},{footer:t(()=>[l(p,{onClick:e[20]||(e[20]=a=>b.value=!1)},{default:t(()=>[...e[40]||(e[40]=[n("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(S),onClick:Ve},{default:t(()=>[...e[41]||(e[41]=[n("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(B,{ref_key:"visitFormRef",ref:P,model:o(m),rules:fe,"label-width":"120px"},{default:t(()=>[l(r,{label:"回访类型",prop:"visit_type"},{default:t(()=>[l(q,{modelValue:o(m).visit_type,"onUpdate:modelValue":e[15]||(e[15]=a=>o(m).visit_type=a),placeholder:"请选择回访类型"},{default:t(()=>[l(_,{label:"电话",value:1}),l(_,{label:"微信",value:2}),l(_,{label:"短信",value:3}),l(_,{label:"上门",value:4}),l(_,{label:"其他",value:5})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"回访时间",prop:"visit_time"},{default:t(()=>[l(Q,{modelValue:o(m).visit_time,"onUpdate:modelValue":e[16]||(e[16]=a=>o(m).visit_time=a),type:"datetime",placeholder:"请选择回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(r,{label:"回访内容",prop:"content"},{default:t(()=>[l(v,{modelValue:o(m).content,"onUpdate:modelValue":e[17]||(e[17]=a=>o(m).content=a),type:"textarea",rows:4,placeholder:"请输入回访内容"},null,8,["modelValue"])]),_:1}),l(r,{label:"回访结果",prop:"result"},{default:t(()=>[l(v,{modelValue:o(m).result,"onUpdate:modelValue":e[18]||(e[18]=a=>o(m).result=a),type:"textarea",rows:3,placeholder:"请输入回访结果"},null,8,["modelValue"])]),_:1}),l(r,{label:"下次回访时间",prop:"next_visit_time"},{default:t(()=>[l(Q,{modelValue:o(m).next_visit_time,"onUpdate:modelValue":e[19]||(e[19]=a=>o(m).next_visit_time=a),type:"datetime",placeholder:"请选择下次回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}});export{Ol as default};
|