You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
6.8 KiB

import{p as L}from"./base-c0bfa578.js";import{E as P}from"./el-card-ac2c4335.js";import{E as j}from"./el-select-e3039813.js";import{E as k}from"./el-input-a36ad0fc.js";import{E as A,a as J}from"./el-table-column-b02baf7e.js";import{E as B}from"./el-button-d7631293.js";import{E as Q,a as G}from"./el-breadcrumb-item-da94d782.js";import{r as E}from"./request-95a85134.js";import{u as H,b as K}from"./vue-router-0f39ec71.js";import{E as O}from"./el-drawer-134d8f22.js";import"./el-overlay-631ce6d0.js";import{E as W,a as X}from"./el-form-item-44d55f02.js";/* empty css */import{E as C}from"./index-372a623d.js";import{c as Y,m as w,q as $,Q as S,o as I,a as Z,w as o,y as a,x as p,z as g,e as R,a3 as ee,s as ae,v as le,J as te,B as oe,C as se}from"./normalize-3ee1393a.js";import{_ as ne}from"./_plugin-vue_export-helper-c27b6911.js";import"./config-provider-fcaf9ca1.js";import"./aria-e9762921.js";import"./strings-c7635a11.js";import"./validator-d447ed53.js";import"./axios-4a70c6fc.js";import"./use-dialog-cff6464b.js";import"./vnode-0226bc7c.js";function x(r){return E("/User/list","post",r)}function re(r){return E("/User/getUser","get",{id:r})}function de(r){return E("/User/addUser","post",r)}function ue(r){return E("/User/updateUser","post",r)}function ie(r){return E("/User/deleteUser","get",{id:r})}const pe=p("h4",null,"新增客戶",-1),me={style:{flex:"auto"}},_e={__name:"UserForm",props:{show:{type:Boolean,default:!1},edit_id:{type:Number,default:0}},emits:["update:show","update:edit_id","reload"],setup(r,{emit:U}){const b=r,_=Y({get:()=>b.show,set:i=>{U("update:show",i)}}),c=w(),y=$({}),e=w({act:"insert",name:""});w(!1),S(()=>b.edit_id,async i=>{if(console.log(i),i>0){let t=await re(i);t.code===200&&(e.value=t.data,e.value.act="update")}else e.value={act:"insert"}});const f=()=>{U("update:edit_id",0),_.value=!1},V=async i=>{i&&await i.validate(async(t,m)=>{if(!t)return;let d;return e.value.act==="update"?d=await ue(e.value):d=await de(e.value),d.code===200?(_.value=!1,c.value.resetFields(),U("reload"),C.success("操作成功")):C.error(d.msg)})};return(i,t)=>{const m=k,d=W,s=X,l=B,h=O;return I(),Z(h,{modelValue:R(_),"onUpdate:modelValue":t[8]||(t[8]=n=>ee(_)?_.value=n:null),size:"50%",title:"新增客戶",onClose:f},{header:o(()=>[pe]),default:o(()=>[a(s,{model:e.value,ref_key:"formRef",ref:c,rules:y,"label-width":"120px"},{default:o(()=>[a(d,{label:"帳號",prop:"user_name"},{default:o(()=>[a(m,{modelValue:e.value.user_name,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value.user_name=n)},null,8,["modelValue"])]),_:1}),a(d,{label:"密碼",prop:"password"},{default:o(()=>[a(m,{type:"password",modelValue:e.value.password,"onUpdate:modelValue":t[1]||(t[1]=n=>e.value.password=n)},null,8,["modelValue"])]),_:1}),a(d,{label:"確認密碼",prop:"cfm_password"},{default:o(()=>[a(m,{type:"password",modelValue:e.value.cfm_password,"onUpdate:modelValue":t[2]||(t[2]=n=>e.value.cfm_password=n)},null,8,["modelValue"])]),_:1}),a(d,{label:"客戶名稱",prop:"name"},{default:o(()=>[a(m,{modelValue:e.value.name,"onUpdate:modelValue":t[3]||(t[3]=n=>e.value.name=n)},null,8,["modelValue"])]),_:1}),a(d,{label:"Email地址",prop:"email"},{default:o(()=>[a(m,{modelValue:e.value.email,"onUpdate:modelValue":t[4]||(t[4]=n=>e.value.email=n)},null,8,["modelValue"])]),_:1}),a(d,{label:"公司電話"},{default:o(()=>[a(m,{modelValue:e.value.office_phone,"onUpdate:modelValue":t[5]||(t[5]=n=>e.value.office_phone=n)},null,8,["modelValue"])]),_:1}),a(d,{label:"公司地址"},{default:o(()=>[a(m,{modelValue:e.value.address,"onUpdate:modelValue":t[6]||(t[6]=n=>e.value.address=n)},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),footer:o(()=>[p("div",me,[a(l,{onClick:f},{default:o(()=>[g("關閉")]),_:1}),a(l,{type:"primary",onClick:t[7]||(t[7]=n=>V(c.value))},{default:o(()=>[g("送出")]),_:1})])]),_:1},8,["modelValue"])}}};const D=r=>(oe("data-v-5e2b8059"),r=r(),se(),r),ce={class:"main"},fe={class:"breadcrumb-section"},ve=D(()=>p("a",{href:"/"},"客戶列表",-1)),ge=D(()=>p("hr",null,null,-1)),we={class:"search-section"},be={class:"pagination-block"},ye={__name:"index",setup(r){H();const U=K(),b=w(!1),_=w(0),c=w([]),y=w(0),e=$({loading:!1,page:1,pageSize:10}),f=w({user_id:"",order_sn:"",consignee:"",status:"1"});U.query.user_id&&(f.value.user_id=U.query.user_id);const V=async()=>{e.loading=!0;const s=await x({page:e.page,pageSize:e.pageSize});s.code===200?(c.value=s.data.data,y.value=s.data.total):C.error(s.message),e.loading=!1};ae(()=>{V()}),S(()=>e.page,async s=>{let l=await x({page:s,size:e.pageSize,search:f.value});l.code===200&&(c.value=l.data.data,y.value=l.data.total)}),S(()=>e.pageSize,async s=>{let l=await x({page:e.page,size:s,search:f.value});l.code===200&&(c.value=l.data.data,y.value=l.data.total)});const i=(s,l)=>{console.log("row",l),_.value=l.user_id,b.value=!0},t=async s=>{(await ie(s)).code===200&&V()},m=async()=>{let s=await x({page:e.page,size:e.pageSize,search:f.value});s.code===200&&(c.value=s.data.data,y.value=s.data.total)},d=()=>{V(e.page,e.pageSize)};return(s,l)=>{const h=G,n=Q,z=B,F=k,v=A,q=J,N=j,M=P;return I(),le(te,null,[p("div",ce,[p("div",fe,[p("div",null,[a(n,{separator:"/"},{default:o(()=>[a(h,null,{default:o(()=>[g(" CRM系統 ")]),_:1}),a(h,null,{default:o(()=>[ve]),_:1})]),_:1})]),p("div",null,[a(z,{type:"primary",icon:R(L),onClick:l[0]||(l[0]=u=>b.value=!0)},{default:o(()=>[g("新增客戶")]),_:1},8,["icon"])])]),ge,a(M,null,{default:o(()=>[p("div",we,[g(" 客戶電話:"),a(F,{modelValue:f.value.phone,"onUpdate:modelValue":l[1]||(l[1]=u=>f.value.phone=u),placeholder:"客戶電話",style:{width:"200px"}},null,8,["modelValue"]),a(z,{type:"primary",onClick:m},{default:o(()=>[g("查詢")]),_:1})]),p("div",null,[a(q,{data:c.value,style:{width:"100%"}},{default:o(()=>[a(v,{prop:"user_id",label:"#",width:"60"}),a(v,{prop:"user_name",label:"客戶帳號"}),a(v,{prop:"name",label:"客戶名稱"}),a(v,{prop:"office_phone",label:"客戶電話"}),a(v,{prop:"email",label:"Email地址"}),a(v,{prop:"mobile_phone",label:"業務人員"}),a(v,{prop:"status",label:"狀態",width:"60"}),a(v,{label:"操作",width:"150"},{default:o(u=>[a(z,{size:"small",onClick:T=>i(u.$index,u.row)},{default:o(()=>[g("編輯")]),_:2},1032,["onClick"]),a(z,{size:"small",type:"danger",onClick:T=>t(u.row.user_id)},{default:o(()=>[g("刪除")]),_:2},1032,["onClick"])]),_:1})]),_:1},8,["data"]),p("div",be,[a(N,{"current-page":e.page,"onUpdate:currentPage":l[2]||(l[2]=u=>e.page=u),"page-size":e.pageSize,"onUpdate:pageSize":l[3]||(l[3]=u=>e.pageSize=u),"page-sizes":[10,20,50,100],small:"small",layout:"->,total, sizes, prev, pager, next, jumper",total:y.value},null,8,["current-page","page-size","total"])])])]),_:1})]),a(_e,{show:b.value,"onUpdate:show":l[4]||(l[4]=u=>b.value=u),edit_id:_.value,"onUpdate:edit_id":l[5]||(l[5]=u=>_.value=u),onReload:d},null,8,["show","edit_id"])],64)}}},Je=ne(ye,[["__scopeId","data-v-5e2b8059"]]);export{Je as default};