quick-admin-vue3-core
Version:
以快(计算机执行效率、开发效率)为核心的后台管理系统开发模板
2 lines (1 loc) • 17.3 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),f=require("./index-BC11nvhb.cjs"),$=require("./AddEdit.vue_vue_type_script_setup_true_lang-CxkYxL62.cjs"),B=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),F=require("./index-DRE1IXEf.cjs"),v=require("./platform-Dl0zaSyI.cjs"),M=require("./dict-BmDXCNUh.cjs"),R=require("./vue-router-lHyLbR6H.cjs"),T=require("./index-D8siRAAk.cjs"),P=require("./Index.vue_vue_type_script_setup_true_lang-DVRngi-q.cjs"),Y=require("./Index.vue_vue_type_script_setup_true_lang-CAXlqhxm.cjs"),L=require("./CustomColHead-DFAMujyX.cjs"),i=require("./CustomPopover-4YYkU9p6.cjs"),U={class:"f-0 text"},z={key:0,class:"f-0 text"},j={key:1,class:"f-0 text"},O={key:0,class:"f-0 text"},H={key:1,class:"f-0 text"},W=e.defineComponent({name:"InfoSteps",__name:"InfoSteps",props:{data:{default:()=>({})}},setup(x){const l={0:{text:"已完善 - 已通过",class:"success"},1:{text:"已完善 - 未通过",class:"danger"},2:{text:"已完善 - 待审核",class:"primary"},3:{text:"未完善",class:"warning"}},_=x,n=e.computed(()=>{const{infoStatus:y="",idCardStatus:a,company_status:s,school_status:m}=_.data;return{hasRealName:a===0,hasAuth:s===0||m===0,info:l[y]||{}}});return(y,a)=>{var m,u;const s=e.resolveComponent("BaseIcon");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass([(m=e.unref(n).info)==null?void 0:m.class,"f-fs-c step-item"])},[a[0]||(a[0]=e.createElementVNode("div",{class:"f-0 num"},"1",-1)),e.createElementVNode("div",U,e.toDisplayString(((u=e.unref(n).info)==null?void 0:u.text)||"-"),1),e.createVNode(s,{class:"icon",size:"1.5em",name:"CircleCheckFilled"})],2),e.createElementVNode("div",{class:e.normalizeClass([{success:e.unref(n).hasRealName},"f-fs-c step-item"])},[a[1]||(a[1]=e.createElementVNode("div",{class:"f-0 num"},"2",-1)),e.unref(n).hasRealName?(e.openBlock(),e.createElementBlock("div",z,"已实名")):(e.openBlock(),e.createElementBlock("div",j,"未实名")),e.createVNode(s,{class:"icon",size:"1.5em",name:"CircleCheckFilled"})],2),e.createElementVNode("div",{class:e.normalizeClass([{success:e.unref(n).hasAuth},"f-fs-c step-item"])},[a[2]||(a[2]=e.createElementVNode("div",{class:"f-0 num"},"3",-1)),e.unref(n).hasAuth?(e.openBlock(),e.createElementBlock("div",O,"已认证")):(e.openBlock(),e.createElementBlock("div",H,"未认证")),e.createVNode(s,{class:"icon",size:"1.5em",name:"CircleCheckFilled"})],2)],64)}}}),N=B._export_sfc(W,[["__scopeId","data-v-eececd07"]]),G={class:"auth-info"},K={key:0,class:"f-c-c-c item-box"},J={class:"text-tag"},Q={class:"text-tag"},X={key:1,class:"f-c-c-c item-box"},Z={class:"text-tag"},ee=e.defineComponent({name:"AuthInfo",__name:"AuthInfo",props:{data:{default:()=>({})}},setup(x){return(l,_)=>{const n=e.resolveComponent("BaseTag");return e.openBlock(),e.createElementBlock("div",G,[l.data.school_status===0?(e.openBlock(),e.createElementBlock("div",K,[e.createVNode(n,{name:"D_AuthCase",value:"2"}),e.createElementVNode("div",J,e.toDisplayString(l.data.labelSchool||"-"),1),e.createElementVNode("div",Q,e.toDisplayString(l.data.school_name||"-"),1)])):e.createCommentVNode("",!0),l.data.company_status===0?(e.openBlock(),e.createElementBlock("div",X,[e.createVNode(n,{name:"D_AuthCase",value:"3"}),e.createElementVNode("div",Z,e.toDisplayString(l.data.labelCompany||"-"),1)])):e.createCommentVNode("",!0),l.data.school_status!==0&&l.data.company_status!==0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createTextVNode("-")],64)):e.createCommentVNode("",!0)])}}}),te=B._export_sfc(ee,[["__scopeId","data-v-fe3ecd27"]]),oe={class:"f-sb-c"},ae={key:0,class:"f-c-c-c"},se={key:1},le=e.defineComponent({name:"DemoCenterCrudComplexBaseCrud",__name:"index",setup(x){const{getOpts:l}=M.useDict(),{openPopup:_}=f.usePopup(),n=R.useRouter(),y=e.ref(null),a=e.ref(0),s=e.ref(0),{getSearchOpts:m}=F.useSelectOpts();let u=e.reactive({user_name:"张三",multi_tag:[0],date_range_def_val:["2023-08-19","2023-08-27"],num_range_def_val:[10,20]});const k=[{prop:"user_name",label:"姓名"},{prop:"status",label:"启用状态",type:"select",attrs:{options:"D_EnableStatus"}},{prop:"text_opts",label:"文本下拉",type:"select",attrs:{options:"D_TestText"}},{prop:"multi_tag",label:"多标签",type:"select",attrs:{options:"D_RoleType",multiple:!0}},{prop:"text_opts",label:"文本下拉",type:"select",attrs:{options:"D_TestText"}},{prop:"arr_opts",label:"数组下拉",type:"select",attrs:{options:"D_TestArray"}},{prop:"obj_opts",label:"对象下拉",type:"select",attrs:{options:"D_TestObj"}},{prop:"function_opts",label:"函数下拉",type:"select",attrs:{options:"D_TestFunction"}},{prop:"promise_opts_arr",label:"Pro下拉数组",type:"select",attrs:{options:"D_TestPromiseArray"},quickAttrs:{explain:"Promise返回一个数组"}},{prop:"promise_opts_obj",label:"Pro下拉对象",type:"select",attrs:{options:"D_TestPromiseObject"},quickAttrs:{explain:"Promise返回一个对象"}},{prop:"fetch_opts",label:"直接请求下拉",type:"select",attrs:{options:"D_TestFetch"},quickAttrs:{explain:"系统刚初始化时,就会发送请求"}},{prop:"async_function_opts",label:"按需请求下拉",type:"select",attrs:{options:"D_TestFetchLazy"},quickAttrs:{explain:"当用到字典数据时才会发送请求"}},{prop:"batch_opts_1",label:"批量下拉1",type:"select",attrs:{options:"D_BatchInsert_1"},quickAttrs:{explain:"通过接口一次性请求很多下拉项"}},{prop:"batch_opts_2",label:"批量下拉2",type:"select",attrs:{options:"D_BatchInsert_2"}},m("school",{prop:"schoolId",label:"学校",quickAttrs:{explain:"hooks远程搜索下拉"}}),m("company",{prop:"companyId",label:"公司",quickAttrs:{explain:"hooks远程搜索下拉,并自定义el-option样式"}}),{prop:"local_cascader",label:"写死级联",type:"cascader",attrs:{options:"D_TestCascader"}},{prop:"live_city",label:"居住地址",type:"cascader",attrs:{options:"C_Region",filterable:!0}},{prop:"tree_opts",label:"树形下拉",type:"tree-select",attrs:{options:"D_TestTree"}},{prop:"num_range_arr",label:"数字(数组)",type:"BaseNumberRange"},{prop:["num_range_min","num_range_max"],label:"数字(对象)",type:"BaseNumberRange"},{prop:"num_range_def_val",label:"数字(默值)",type:"BaseNumberRange"},{prop:"date_range",label:"日期(数组)",type:"date-picker"},{prop:["date_range_min","date_range_max"],label:"日期(对象)",type:"date-picker"},{prop:"date_range_def_val",label:"日期(默值)",type:"date-picker"},{prop:"custom_form_item",label:"自定义",type:"slot",quickAttrs:{explain:"在搜索表单中一般几乎用不到自定义特性,此处用作示例"}}],V=[{title:"基础",fields:k.slice(0,2)},{title:"下拉",fields:k.slice(2,13)},{title:"区间",fields:k.slice(13,19)},{title:"其他",fields:k.slice(19)}],q=[{tpl:"T_Selection"},{prop:"insertCols",label:"外部插入列",fixed:"left",quickAttrs:{explain:"外部插入列实例:内嵌、custom自定义"},children:[{tpl:"T_UserInfo",label:"用户信息",quickAttrs:{explain:{title:"业务内嵌组件 - UserInfo",slots:{default:e.h(i.default,{sections:[{name:"描述",desc:["单个项目的常用组件,采用内嵌至系统的方式。","预设了列宽,prop等属性","可通过attrs传入UserInfo组件的props属性"]},{name:"设置",desc:'{tpl: "T_UserInfo"}'}]})}}},attrs:{simple:!!s.value}},!s.value&&{prop:"info_complete_children",label:"资料完善状态",width:170,type:"slot",quickAttrs:{explain:{title:"自定义组件 - InfoSteps",slots:{default:e.h(i.default,{sections:[{name:"描述",desc:"项目中的不常用组件,采用自定义方式插入"},{name:"设置",desc:'{type: "slot"}'}]})}}}}]},{prop:"info_complete",label:"资料完善状态",width:170,type:"slot",quickAttrs:{explain:"不放在children中进行展示"}},{prop:"sysCols",label:"系统内置列",children:[{prop:"avatar",label:"头像",tpl:"T_BaseImg",quickAttrs:{explain:{title:"系统内置组件 - BaseImg",slots:{default:e.h(i.default,{sections:[{name:"描述",desc:["任意项目的常用组件,采用内置至系统的方式。","预设了含列宽、图片大小、圆角样式、图片预览等功能。","设置{minWidth: 160} 覆盖默认宽度"]},{name:"设置",desc:'{tpl: "T_BaseImg"}'}]})}}}},{prop:"produce",label:"自我介绍",tpl:"T_BaseText",attrs:{maxLine:3},quickAttrs:{explain:{title:"系统内置组件 - BaseText",slots:{default:e.h(i.default,{sections:[{name:"描述",desc:["任意项目的常用组件,采用内置至系统的方式。","内置列宽;超出文本后自动省略,且可点击后弹出弹窗查看完整内容","可通过attrs传入BaseText的props属性"]},{name:"设置",desc:'{tpl: "T_BaseText"}'}]})}}}},{prop:"avatar",label:"头像路径",tpl:"T_BaseCopy",quickAttrs:{explain:{title:"系统内置组件 - BaseCopy",slots:{default:e.h(i.default,{sections:[{name:"描述",desc:["任意项目的常用组件,采用内置至系统的方式。","点击整个文本域进行复制","可通过attrs传入BaseCopy的props属性"]},{name:"设置",desc:'{tpl: "T_BaseCopy"}'}]})}}}},{prop:"userCode",label:"userCode",tpl:"T_BaseCopy",attrs:{clickIconCopy:!0,onClick(r){n.push(`/common-center/user/detail?id=${r.userCode}`)}},quickAttrs:{explain:{title:"系统内置组件 - BaseCopy",slots:{default:e.h(i.default,{sections:[{name:"描述",desc:["任意项目的常用组件,采用内置至系统的方式。","点击文本跳转页面,点击图标进行复制","可通过attrs传入BaseCopy的props属性"]},{name:"设置",desc:'{tpl: "T_BaseCopy"}'}]})}}}},{prop:"type_text",label:"$自定义多维度$",minWidth:210,quickAttrs:{explain:{title:"自定义【格头 + explain + formatter】",width:400,slots:{default:e.h(i.default,{sections:[{name:"自定义表格头",desc:"展示如何自定义表格头"},{name:"自定义explain",desc:"展示如何自定义explain"},{name:"formatter",desc:"展示如何用继承自ElementPlus的formatter方法处理数据"}]})}}},formatter(r,o,c,p=0){return`自定义第${p}行:表格头 + explain + formatter`},slots:{header:e.h(L.default)}},s.value?{prop:"is_proxy",label:"标签(自定义,simple可见)",width:220,type:"slot"}:{prop:"status",label:"启/禁用状态",width:150,tpl:"T_BaseTag",attrs:{name:"D_EnableStatus"},quickAttrs:{explain:{title:"系统内置组件 - BaseTag",slots:{default:e.h(i.default,{sections:[{name:"描述",desc:["任意项目的常用组件,采用内置至系统的方式。","非simple可见"]},{name:"设置",desc:'{tpl: "T_BaseTag"}'}]})}}}},{prop:"status",label:"请求状态",width:150,tpl:"T_BaseTag",attrs:{name:"D_TestFetchLazy"},quickAttrs:{explain:{title:"系统内置组件 - BaseTag",slots:{default:e.h(i.default,{sections:[{name:"描述",desc:["测试请求到的下拉项的解析情况"]},{name:"设置",desc:'{tpl: "T_BaseTag"}'}]})}}}}]},!1,{prop:"timeCols",label:"时间列",children:[!s.value&&{prop:"create_time",label:"注册时间",formatter:"YYYY/MM/DD HH:mm:ss",quickAttrs:{explain:{title:"时间处理",slots:{default:e.h(i.default,{sections:[{name:"描述",desc:["不设置 tpl 属性。会根据 label 中带时间二字,自动确定该列的宽度;","增强了日期的formatter处理,可传入true(会转成默认日期格式)或日期格式字符串,例:YYYY/MM/DD HH:mm:ss,也可传入函数(element-plus本身就支持)"]}]})}}}},{tpl:"T_Create",label:"创建时间",quickAttrs:{explain:'只设置 {tpl: "T_Create"},便会默认区创建时间、创建人两个字段的 prop '}},{tpl:"T_Update",prop:"update_time",label:"修改时间",quickAttrs:{explain:'设置 {tpl: "T_Update", prop: "update_time"},只会显示 update_time 属性的值'}}]},{tpl:"T_Remark",quickAttrs:{explain:'设置{tpl: "T_Remark"},内置列宽度、label文案'}},{prop:"user_data.nickname",label:"多级prop",minWidth:100,quickAttrs:{explain:"可传入任意多级的prop,例:user.data.info.age"}},{prop:"wltl",label:"未联调列",minWidth:120,quickAttrs:{explain:"未联调的列,表格头右侧会新增一个标红的感叹号图标"}}];function E(r,o,c){const{selectedKeys:p}=c;v.handleBtnNext({add:()=>b(null,o),delete:()=>f.DeleteMockCommon({ids:p}).then(()=>o()),import:()=>D(),dialog:()=>_("这是一个dialog列表示例",P._sfc_main),drawer:()=>_("这是一个drawer表单示例",Y._sfc_main,"drawer")},r)}function A(r,o,c){const{id:p}=o;v.handleBtnNext({edit:()=>b(o,c),delete:()=>f.DeleteMockCommon({id:p}).then(()=>c()),forbid:()=>f.PostMockCommon({id:p,status:0}).then(()=>c()),enable:()=>f.PostMockCommon({id:p,status:1}).then(()=>c())},r)}async function b(r,o){_(`${r?"编辑":"新增"}`,[$._sfc_main,{data:r,refreshList:o}])}function D(){console.log("点击了导入----------")}return e.onMounted(()=>{}),(r,o)=>{const c=e.resolveComponent("el-radio"),p=e.resolveComponent("el-radio-group"),C=e.resolveComponent("el-form-item"),g=e.resolveComponent("BaseTag"),w=e.resolveComponent("BaseIcon"),I=e.resolveComponent("el-tag"),S=e.resolveComponent("BaseCrud");return e.openBlock(),e.createBlock(S,{modelValue:e.unref(u),"onUpdate:modelValue":o[2]||(o[2]=t=>e.isRef(u)?u.value=t:u=t),cols:q,fields:k,sections:a.value?V:void 0,extraBtns:["add","delete",{name:"import",handleClickType:"common"},{name:"export",handleClickType:"common"},"enable","forbid","repeal","upload","download","pass","reject",{name:"link",text:"前往详情页"},{name:"drawer",text:"打开drawer表单",attrs:{type:"primary",icon:e.unref(T.postcard_default)}},{name:"view",text:"url跳转",to:"/common-center/user/detail?id=12",order:50,attrs:{icon:"Link"}},{name:"custom_btn",text:"自定义按钮",attrs:{type:"primary",icon:e.unref(T.eleme_filled_default)}}],operateBtns:(t,d)=>{const{id:h}=t;return d%2===0?["edit","delete","reject","repeal","pass","download","log","audit","reset",d%3===0?"forbid":"enable",{name:"view",text:"查看",to:`/common-center/user/detail?id=${h}`}]:["edit","audit","reject","delete","download","pass","repeal","reset","log",{name:"view",to:{path:"/common-center/user/detail",query:{id:h}}}]},pageSizeNum:10,fetch:e.unref(f.GetMockCommon),onExtraBtns:E,onOperateBtns:A,key:`${a.value}-${s.value}`,ref_key:"baseCrudRef",ref:y},{custom_form_item:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode("【这是自定义的搜索项】")])),middle:e.withCtx(()=>[e.createElementVNode("div",oe,[o[4]||(o[4]=e.createElementVNode("div",{class:"ml-r"},"这是中间插槽(middle)用法示例,也用作查询条件是否按分块显示示例(注意观察查询条件的样式变化)",-1)),e.createVNode(C,{class:"f-0",label:"是否分块展示查询条件",style:{"margin-bottom":"0"}},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:a.value,"onUpdate:modelValue":o[0]||(o[0]=t=>a.value=t)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l)("D_YesNoStatus"),(t,d)=>(e.openBlock(),e.createBlock(c,e.mergeProps({ref_for:!0},t,{key:d}),null,16))),128))]),_:1},8,["modelValue"])]),_:1}),e.createVNode(C,{class:"f-0",label:"是否简化展示表格列",style:{"margin-bottom":"0"}},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:s.value,"onUpdate:modelValue":o[1]||(o[1]=t=>s.value=t),disabled:""},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l)("D_YesNoStatus"),(t,d)=>(e.openBlock(),e.createBlock(c,e.mergeProps({ref_for:!0},t,{key:d}),null,16))),128))]),_:1},8,["modelValue"])]),_:1})])]),info_complete_children:e.withCtx(({row:t})=>[e.createVNode(N,{data:t},null,8,["data"])]),info_complete:e.withCtx(({row:t})=>[e.createVNode(N,{data:t},null,8,["data"])]),info_status:e.withCtx(({row:t})=>o[5]||(o[5]=[e.createTextVNode("这是自定义组件 - 信息状态")])),auth_info:e.withCtx(({row:t})=>[e.createVNode(te,{data:t},null,8,["data"])]),relation_tag:e.withCtx(({row:t})=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.relationTag,(d,h)=>(e.openBlock(),e.createBlock(g,{name:"User",class:"mb-q",value:d.tagCode,key:h},null,8,["value"]))),128)),t.relationTag.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode("-")],64))]),is_proxy:e.withCtx(({row:t})=>[e.createVNode(g,{name:"YesNo",value:t.agentId===0?1:0},null,8,["value"])]),business:e.withCtx(({row:t})=>[t.vipLevel===1||t.rechargeMoney?(e.openBlock(),e.createElementBlock("div",ae,[t.vipLevel===1?(e.openBlock(),e.createBlock(I,{key:0,type:"warning",effect:"dark"},{default:e.withCtx(()=>[e.createVNode(w,{name:"StarFilled"}),o[6]||(o[6]=e.createTextVNode(" 脱单特权 "))]),_:1})):e.createCommentVNode("",!0),t.rechargeMoney?(e.openBlock(),e.createElementBlock("div",se,"RMB充值:"+e.toDisplayString(t.rechargeMoney)+"元",1)):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode("-")],64))]),bottom:e.withCtx(()=>o[7]||(o[7]=[e.createElementVNode("div",{class:"f-sb-c"},[e.createElementVNode("span",null,"这是底部插槽(bottom)的用法示例。"),e.createElementVNode("span",null,"这是底部插槽(bottom)的用法示例。"),e.createElementVNode("span",null,"这是底部插槽(bottom)的用法示例。")],-1)])),_:1},8,["modelValue","sections","extraBtns","operateBtns","fetch"])}}}),ne=B._export_sfc(le,[["__scopeId","data-v-ec86ec9b"]]);exports.default=ne;