2 lines
10 KiB
JavaScript
2 lines
10 KiB
JavaScript
import{G as L,R as $,D as K,F as M,C as W,I as X,h as Y,S as Z,P as h,Q as ee,g as le,i as oe,e as te}from"./element-plus-BHB3EH-4.js";import{_ as ae}from"./picker-h3OcriAe.js";import{b as re,d as de,e as ie}from"./admin-lzO9Ld61.js";import{d as ne}from"./department-D9p9Ga6s.js";import{j as se}from"./post-HirjiPbl.js";import{u as pe}from"./useDictOptions-D8TmYRiP.js";import{f as ue,d as me}from"./index-K7fNdg1F.js";import{f as fe,ak as b,I as k,a as t,aN as r,O as p,G as D,J as u,H as _e,F as be,ap as Ve,A as ge}from"./@vue/runtime-core-D7eUgySO.js";import{y as o,a as ce,u as we,o as c,r as C}from"./@vue/reactivity-maRK_BBd.js";import{Q as R}from"./@vue/shared-C75lBtbe.js";import"./@vue/runtime-dom-DVgibYoU.js";import"./nprogress-BpICrWuH.js";import"./@element-plus/icons-vue-BBEpNsqa.js";import"./lodash-es-BADexyn7.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-BOuxpn4j.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-MLxjSji2.js";import"./index-BIfb9B4L.js";import"./index.vue_vue_type_script_setup_true_lang-DwLVXLxz.js";import"./index-Cf-7D1oQ.js";import"./index-BLwxYRm_.js";import"./index.vue_vue_type_script_setup_true_lang-d-nyf38m.js";import"./@vueuse/core-DCeljLnb.js";import"./@vueuse/shared-B444yVpD.js";import"./usePaging-CPrBIeJ2.js";import"./vuedraggable-DoxySVw6.js";import"./vue-BWLcg9DT.js";import"./@vue/compiler-dom-Ddn9Zm90.js";import"./@vue/compiler-core-KYniu4wC.js";import"./sortablejs-BkVvOzsn.js";import"./jspdf-G5PuBoTt.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-CJXI7XhX.js";import"./pinia-BhomUS5m.js";import"./axios-C80V62Fs.js";import"./lodash-Ct9_CZb9.js";import"./css-color-function-BVb6B1lA.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-ChYu0NfX.js";import"./clipboard-Bmfw2kIN.js";import"./echarts-DYKKs4Al.js";import"./tslib-BDyQ-Jie.js";import"./zrender-CTTuYiLF.js";import"./highlight.js-jaPyNblr.js";import"./@highlightjs/vue-plugin-ASXrwou_.js";const ve={class:"edit-drawer"},xe={class:"text-primary font-medium"},ye={class:"ml-2 text-gray-500"},Ee={class:"flex justify-end"},Ue=fe({__name:"edit",emits:["success","close"],setup(je,{expose:q,emit:S}){const w=S,v=we(),f=c(!1),m=c("add"),V=c(!1),F=ge(()=>m.value=="edit"?"编辑医助":"新增医助"),l=C({id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[2],dept_id:[],jobs_id:[],avatar:"",title:"",department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1,diagnosis_count:null}),{optionsData:x}=pe({jobs:{api:se},dept:{api:ne}}),g=(s,e,i)=>{l.password&&(e||i(new Error("请再次输入密码")),e!==l.password&&i(new Error("两次输入密码不一致!"))),i()},_=C({account:[{required:!0,message:"请输入账号",trigger:["blur"]}],name:[{required:!0,message:"请输入姓名",trigger:["blur"]}],gender:[{required:!0,message:"请选择性别",trigger:["change"]}],phone:[{validator:(s,e,i)=>{e&&!/^1[3-9]\d{9}$/.test(e)?i(new Error("请输入正确的手机号")):i()},trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:["blur"]}],password_confirm:[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:g,trigger:"blur"}]}),I=async()=>{var s;try{await((s=v.value)==null?void 0:s.validate()),V.value=!0,m.value=="edit"?await re(l):await de(l),ue.msgSuccess(m.value=="edit"?"编辑成功":"新增成功"),f.value=!1,w("success")}catch(e){console.error("提交失败:",e)}finally{V.value=!1}},N=(s="add")=>{m.value=s,f.value=!0,s==="add"&&(Object.assign(l,{id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[2],dept_id:[],jobs_id:[],avatar:"",title:"",department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1,diagnosis_count:null}),_.password=[{required:!0,message:"请输入密码",trigger:["blur"]}],_.password_confirm=[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:g,trigger:"blur"}])},B=async s=>{_.password=[],_.password_confirm=[{validator:g,trigger:"blur"}];const e=await ie({id:s.id});for(const i in l)e[i]!=null&&e[i]!=null&&(l[i]=e[i]);l.role_id.includes(2)||l.role_id.push(2)},y=()=>{f.value=!1,w("close")};return q({open:N,setFormData:B}),(s,e)=>{const i=$,d=K,n=M,A=ae,E=X,O=W,G=Y,T=Z,P=ee,Q=h,U=le,z=L,j=oe,H=te;return b(),k("div",ve,[t(H,{modelValue:o(f),"onUpdate:modelValue":e[18]||(e[18]=a=>ce(f)?f.value=a:null),title:o(F),direction:"rtl",size:"780px","before-close":y},{footer:r(()=>[u("div",Ee,[t(j,{onClick:y},{default:r(()=>[...e[29]||(e[29]=[p("取消",-1)])]),_:1}),t(j,{type:"primary",onClick:I,loading:o(V)},{default:r(()=>[...e[30]||(e[30]=[p("确定",-1)])]),_:1},8,["loading"])])]),default:r(()=>[t(z,{ref_key:"formRef",ref:v,model:o(l),"label-width":"100px",rules:o(_)},{default:r(()=>[t(i,{"content-position":"left"},{default:r(()=>[...e[19]||(e[19]=[p("基本信息",-1)])]),_:1}),o(m)==="edit"&&o(l).diagnosis_count!=null?(b(),D(d,{key:0,label:"创建诊单数"},{default:r(()=>[u("span",xe,R(o(l).diagnosis_count),1),e[20]||(e[20]=u("span",{class:"text-tx-secondary text-sm ml-2"},"条",-1))]),_:1})):_e("",!0),t(d,{label:"账号",prop:"account"},{default:r(()=>[t(n,{modelValue:o(l).account,"onUpdate:modelValue":e[0]||(e[0]=a=>o(l).account=a),placeholder:"请输入账号",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"头像"},{default:r(()=>[u("div",null,[u("div",null,[t(A,{modelValue:o(l).avatar,"onUpdate:modelValue":e[1]||(e[1]=a=>o(l).avatar=a),limit:1},null,8,["modelValue"])]),e[21]||(e[21]=u("div",{class:"form-tips"},"建议尺寸:100*100px,支持jpg,jpeg,png格式",-1))])]),_:1}),t(d,{label:"姓名",prop:"name"},{default:r(()=>[t(n,{modelValue:o(l).name,"onUpdate:modelValue":e[2]||(e[2]=a=>o(l).name=a),placeholder:"请输入姓名",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"性别",prop:"gender"},{default:r(()=>[t(O,{modelValue:o(l).gender,"onUpdate:modelValue":e[3]||(e[3]=a=>o(l).gender=a)},{default:r(()=>[t(E,{label:1},{default:r(()=>[...e[22]||(e[22]=[p("男",-1)])]),_:1}),t(E,{label:2},{default:r(()=>[...e[23]||(e[23]=[p("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(d,{label:"年龄",prop:"age"},{default:r(()=>[t(G,{modelValue:o(l).age,"onUpdate:modelValue":e[4]||(e[4]=a=>o(l).age=a),min:18,max:100,placeholder:"请输入年龄"},null,8,["modelValue"])]),_:1}),t(d,{label:"手机号",prop:"phone"},{default:r(()=>[t(n,{modelValue:o(l).phone,"onUpdate:modelValue":e[5]||(e[5]=a=>o(l).phone=a),placeholder:"请输入手机号",clearable:""},null,8,["modelValue"])]),_:1}),t(i,{"content-position":"left"},{default:r(()=>[...e[24]||(e[24]=[p("组织信息",-1)])]),_:1}),t(d,{label:"归属部门",prop:"dept_id"},{default:r(()=>[t(T,{class:"flex-1",modelValue:o(l).dept_id,"onUpdate:modelValue":e[6]||(e[6]=a=>o(l).dept_id=a),data:o(x).dept,clearable:"",multiple:"","node-key":"id",props:{label:"name",disabled(a){return a.status!==1}},"check-strictly":"","default-expand-all":!0,placeholder:"请选择归属部门"},null,8,["modelValue","data","props"])]),_:1}),t(d,{label:"岗位",prop:"jobs_id"},{default:r(()=>[t(Q,{class:"flex-1",modelValue:o(l).jobs_id,"onUpdate:modelValue":e[7]||(e[7]=a=>o(l).jobs_id=a),clearable:"",multiple:"",placeholder:"请选择岗位"},{default:r(()=>[(b(!0),k(be,null,Ve(o(x).jobs,(a,J)=>(b(),D(P,{key:J,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(i,{"content-position":"left"},{default:r(()=>[...e[25]||(e[25]=[p("专业信息",-1)])]),_:1}),t(d,{label:"职称",prop:"title"},{default:r(()=>[t(n,{modelValue:o(l).title,"onUpdate:modelValue":e[8]||(e[8]=a=>o(l).title=a),placeholder:"如:主任医师、副主任医师",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"所属科室",prop:"department"},{default:r(()=>[t(n,{modelValue:o(l).department,"onUpdate:modelValue":e[9]||(e[9]=a=>o(l).department=a),placeholder:"如:中医科、内科",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"擅长领域",prop:"specialty"},{default:r(()=>[t(n,{modelValue:o(l).specialty,"onUpdate:modelValue":e[10]||(e[10]=a=>o(l).specialty=a),type:"textarea",rows:3,placeholder:"请输入擅长领域"},null,8,["modelValue"])]),_:1}),t(i,{"content-position":"left"},{default:r(()=>[...e[26]||(e[26]=[p("履历信息",-1)])]),_:1}),t(d,{label:"教育背景",prop:"education"},{default:r(()=>[t(n,{modelValue:o(l).education,"onUpdate:modelValue":e[11]||(e[11]=a=>o(l).education=a),type:"textarea",rows:3,placeholder:"请输入教育背景,如:北京中医药大学 中医学博士"},null,8,["modelValue"])]),_:1}),t(d,{label:"工作经历",prop:"experience"},{default:r(()=>[t(n,{modelValue:o(l).experience,"onUpdate:modelValue":e[12]||(e[12]=a=>o(l).experience=a),type:"textarea",rows:4,placeholder:"请输入工作经历"},null,8,["modelValue"])]),_:1}),t(d,{label:"荣誉资质",prop:"honors"},{default:r(()=>[t(n,{modelValue:o(l).honors,"onUpdate:modelValue":e[13]||(e[13]=a=>o(l).honors=a),type:"textarea",rows:3,placeholder:"请输入荣誉资质"},null,8,["modelValue"])]),_:1}),t(i,{"content-position":"left"},{default:r(()=>[...e[27]||(e[27]=[p("账号设置",-1)])]),_:1}),t(d,{label:"密码",prop:"password"},{default:r(()=>[t(n,{modelValue:o(l).password,"onUpdate:modelValue":e[14]||(e[14]=a=>o(l).password=a),"show-password":"",clearable:"",placeholder:o(m)==="edit"?"不修改请留空":"请输入密码"},null,8,["modelValue","placeholder"])]),_:1}),t(d,{label:"确认密码",prop:"password_confirm"},{default:r(()=>[t(n,{modelValue:o(l).password_confirm,"onUpdate:modelValue":e[15]||(e[15]=a=>o(l).password_confirm=a),"show-password":"",clearable:"",placeholder:o(m)==="edit"?"不修改请留空":"请输入确认密码"},null,8,["modelValue","placeholder"])]),_:1}),t(d,{label:"医生状态"},{default:r(()=>[t(U,{modelValue:o(l).disable,"onUpdate:modelValue":e[16]||(e[16]=a=>o(l).disable=a),"active-value":0,"inactive-value":1},null,8,["modelValue"]),u("span",ye,R(o(l).disable===0?"启用":"禁用"),1)]),_:1}),t(d,{label:"多处登录"},{default:r(()=>[u("div",null,[t(U,{modelValue:o(l).multipoint_login,"onUpdate:modelValue":e[17]||(e[17]=a=>o(l).multipoint_login=a),"active-value":1,"inactive-value":0},null,8,["modelValue"]),e[28]||(e[28]=u("div",{class:"form-tips"},"允许多人同时在线登录",-1))])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Cl=me(Ue,[["__scopeId","data-v-ff363c6c"]]);export{Cl as default};
|