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.
1 lines
11 KiB
1 lines
11 KiB
import{_ as ne,m as U,s as oe,l as ie,f as V,g as re,r as h,p as Y,q as w,o as s,c as _,i as c,w as b,F as P,h as v,k as f,d as O,e as se,t as pe,E,v as d,x as B}from"./index-Dk5CK9SF.js";import{s as ue,_ as ce,a as me,i as de,b as he,g as ge,c as H,d as fe,p as ye,e as be,f as Ce,t as _e,h as Oe,j as Ne,k as Se,o as Te,q as Fe,r as we}from"./index-Ce2KtBHV.js";const Pe={class:"app-container"},ve=Object.assign({name:"tablePage"},{__name:"index",props:{apiName:{type:String,default:null},specialPageApi:{type:String,default:null},specialColumnName:{type:String,default:null},specialLocalColumnName:{type:String,default:null},authName:{type:String,default:null},apiType:{type:String,default:null},hideSearch:{type:Boolean,default:!1},tableRowClassName:{type:Function,default:null},tableCellClassName:{type:Function,default:null},multipleTable:{type:Boolean,default:!1},leftOperation:{type:Object,default:null},leftOperationColumnWidth:{type:Number,default:120},rightOperation:{type:[Object,String],default:null},showApiRightOperation:{type:Object,default:null},apiRightHideConfig:{type:Object,default:{apiUpdate:{prop:"writeState",ruleValue:!0},apiDelete:{prop:"writeState",ruleValue:!0}}},tableColumns:{type:Object,default:null},searchOptions:{type:Object,default:[]},searchButtons:{type:Object,default:["search","export"]},searchFilter:{type:Object,default:{}},searchFilterOptions:{type:Object,default:{}},columnWidth:{type:Number,default:120},columnHeaderAlign:{type:String,default:"center"},columnAlign:{type:String,default:"center"},apiEditFormRules:{type:Object,default:null},hideSetColums:{type:Boolean,default:!1}},emits:["leftOperationHadel","rightOperationHadel","tableSelectionHandle"],setup(j,{expose:L,emit:M}){const W=U(),C=oe.userStore().state,t=ie({loading:!1,searchBtnOptions:{search:{icon:"Search",auth:":page",label:"查询",type:null},create:{icon:"Plus",auth:":create",label:"新增",type:"primary"},import:{icon:"BottomRight",auth:":import",label:"导入",type:"warning"},export:{icon:"TopRight",auth:":export",label:"导出",type:"success"},custominvoke:{icon:"Position",auth:":custominvoke",label:"手动开关",type:"primary"}},innerTableColumns:null,tableData:[],sortFilter:{sortBy:void 0,isAscending:void 0},pager:{page:1,pageSize:10,total:1},tableSelectList:[],initTableColums:[],localTableColumnsName:null}),e=j;function z(n){{let a=e.specialLocalColumnName||U().name;t.localTableColumnsName=ge(a);let l=JSON.parse(localStorage.getItem(t.localTableColumnsName)),r=e.specialColumnName||e.apiName;t.initTableColums=e.tableColumns||H[r];let o=l&&l!=null&&l!=null?l:JSON.parse(JSON.stringify(t.initTableColums));return t.innerTableColumns=o,o}}const T=M;function D(n){t.tableSelectList=n,T("tableSelectionHandle",n)}function $(n,a){T("leftOperationHadel",n,a)}function q(){if(typeof e.rightOperation=="object"&&!e.showApiRightOperation)return e.rightOperation;if(typeof e.rightOperation=="object"&&e.showApiRightOperation||typeof e.rightOperation=="string"){let n=e.showApiRightOperation||e.rightOperation.split(","),a={apiUpdate:{label:"编辑",type:"warning"},apiDelete:{label:"删除",type:"danger"}},l=[];return n&&n.length>0&&n.forEach(r=>{l.push({label:a[r].label,name:r,link:!0,type:a[r].type,auth:(e.authName||e.apiName)+":"+r,hide:(o,g)=>o[e.apiRightHideConfig[r].prop]==e.apiRightHideConfig[r].ruleValue})}),typeof e.rightOperation=="object"&&(l=[...l,...e.rightOperation]),l}}const m=V();function I(n,a){if(n.name=="apiUpdate"){let r=(e.tableColumns||H[e.apiName]).filter(o=>!o.noEdit);m.value.open(r,a.row)}n.name=="apiDelete"&&E.confirm("是否确定删除?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{t.loading=!0,fe(e.apiName,a.row.uId).then(l=>{d.success("操作成功!"),p(1)}).finally(()=>{t.loading=!1})}),T("rightOperationHadel",n,a)}const J=async(n,a,l)=>{m.value.validate(r=>{r&&(n=="create"?(a.hasOwnProperty("createUser")&&(a.createUser=C.realName),a.hasOwnProperty("createByUser")&&(a.createByUser=C.realName),a.hasOwnProperty("createTime")&&(a.createTime=B(new Date,"YYYY-mm-dd HH:MM:SS")),m.value.changeLoading(!0),ye(e.apiName,a).then(o=>{m.value.close(),d.success("操作成功!"),p(1)}).catch(o=>{d.error("操作失败!")}).finally(()=>{m.value.changeLoading(!1)})):(a.hasOwnProperty("updateByUser")&&a.hasOwnProperty("updateTime")||a.hasOwnProperty("updateUser")&&a.hasOwnProperty("updateTime")?(a.hasOwnProperty("updateByUser")&&(a.updateByUser=C.realName),a.hasOwnProperty("updateUser")&&(a.updateUser=C.realName),a.hasOwnProperty("updateTime")&&(a.updateTime=B(new Date,"YYYY-mm-dd HH:MM:SS"))):["taskconifgure","customlog"].indexOf(e.apiName)<0&&(a.remark=`修改信息:${C.realName} ${B(new Date,"YYYY-mm-dd HH:MM:SS")}`),m.value.changeLoading(!0),be(e.apiName,a).then(o=>{m.value.close(),d.success("操作成功!"),p(1)}).catch(o=>{d.error("操作失败!")}).finally(()=>{m.value.changeLoading(!1)})))})};function N(n){let a=[];if(e.hideSearch)a=e.searchFilter;else{let r=function(o,g){return e.searchFilterOptions&&e.searchFilterOptions[o]&&e.searchFilterOptions[o].action?e.searchFilterOptions[o].action:g};for(let o in e.searchFilter){let g=e.searchOptions.filter(y=>y.prop==o),S=g&&g.length>0?g[0].type:null;if((e.searchFilter[o]||e.searchFilter[o]==0)&&e.searchFilter[o]!="")if(S=="datetimerange")a.push({logic:"And",column:o,action:r(o,">="),value:e.searchFilter[o][0]}),a.push({logic:"And",column:o,action:r(o,"<="),value:e.searchFilter[o][1]});else{let y="like";["tagFilter","filter","number","select"].indexOf(S)>=0&&(y="=="),a.push({logic:"And",column:o,action:r(o,y),value:e.searchFilter[o]})}}}return Te({pageNumber:t.pager.page,pageSize:t.pager.pageSize,sortBy:t.sortFilter.sortBy,isAscending:t.sortFilter.isAscending,condition:{filters:a}})}function p(n,a){t.loading=!0,n||(n=t.pager.page),n&&(t.pager.page=n),e.apiType=="detailApi"?Ce(e.apiName,N()).then(l=>{t.tableData=l.data.data,t.pager.total=l.data.totalCount,a&&a(l)}).catch(l=>{d.error("数据获取失败!")}).finally(()=>t.loading=!1):e.specialPageApi?_e(e.specialPageApi,N()).then(l=>{t.tableData=l.data.data,t.pager.total=l.data.totalCount,a&&a(l)}).catch(l=>{d.error("数据获取失败!")}).finally(()=>t.loading=!1):Oe(e.apiName,N()).then(l=>{t.tableData=l.data.data,t.pager.total=l.data.totalCount,a&&a(l)}).catch(l=>{d.error("数据获取失败!")}).finally(()=>t.loading=!1)}function G(n){t.loading=!0,p(1,a=>{let l=N();Fe(e.apiName,l).then(r=>{we(r.data,W.meta.title+".xlsx")}).catch(r=>{d.error("操作失败!")}).finally(()=>t.loading=!1)})}const x=V();function K(n){if(n=="search")p(1);else if(n=="create"){let l=(e.tableColumns||H[e.apiName]).filter(r=>!r.noEdit);m.value.open(l)}else n=="import"?x.value.open():n=="export"?G():n=="custominvoke"&&E.confirm("是否确定操作手动开关?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{t.loading=!0;let a={taskName:Ne[e.apiName].taskName,client:"Chery"};Se(a).then(l=>{d.success("操作成功!"),p(1)}).finally(()=>t.loading=!1)})}function Q(n){const{prop:a,order:l}=n;if(!a||!l){t.sortFilter.sortBy=void 0,t.sortFilter.isAscending=void 0,p(1);return}t.sortFilter.sortBy=a,t.sortFilter.isAscending=l=="ascending",p(1)}function X(n,a){p()}function Z(n){t.pager.pageSize=n,p(1)}function ee(n){p(n)}return re(()=>{z(),p()}),L({state:t,getTableData:p}),(n,a)=>{const l=h("el-input"),r=h("el-input-number"),o=h("el-date-picker"),g=h("el-option"),S=h("el-select"),y=h("el-form-item"),A=h("el-button"),ae=h("el-form"),k=h("el-card"),R=Y("auth"),te=Y("loading");return w((s(),_("div",Pe,[e.hideSearch&&e.hideSetColums?f("",!0):(s(),c(k,{key:0,class:"search-container"},{default:b(()=>[e.hideSearch?f("",!0):(s(),c(ae,{key:0,inline:!0},{default:b(()=>[(s(!0),_(P,null,v(e.searchOptions,(i,F)=>w((s(),c(y,{key:F,label:i.label},{default:b(()=>[i.type=="input"&&!i.hide?(s(),c(l,{key:0,modelValue:e.searchFilter[i.prop],"onUpdate:modelValue":u=>e.searchFilter[i.prop]=u,placeholder:i.label,clearable:!i.noClear},null,8,["modelValue","onUpdate:modelValue","placeholder","clearable"])):f("",!0),i.type=="number"&&!i.hide?(s(),c(r,{key:1,modelValue:e.searchFilter[i.prop],"onUpdate:modelValue":u=>e.searchFilter[i.prop]=u,min:i.min,max:i.max},null,8,["modelValue","onUpdate:modelValue","min","max"])):f("",!0),i.type=="datetimerange"&&!i.hide?(s(),c(o,{key:2,modelValue:e.searchFilter[i.prop],"onUpdate:modelValue":u=>e.searchFilter[i.prop]=u,type:"datetimerange","start-placeholder":"起始时间","end-placeholder":"结束时间",format:"YYYY-MM-DD HH:mm:ss","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"370px"}},null,8,["modelValue","onUpdate:modelValue"])):f("",!0),i.type=="select"&&!i.hide?(s(),c(S,{key:3,modelValue:e.searchFilter[i.prop],"onUpdate:modelValue":u=>e.searchFilter[i.prop]=u,filterable:!i.noSearch,placeholder:"请选择",style:{width:"240px"},clearable:!i.noClear},{default:b(()=>[(s(!0),_(P,null,v(i.options,(u,le)=>(s(),c(g,{key:le,label:u.label,value:u.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","filterable","clearable"])):f("",!0)]),_:2},1032,["label"])),[[R,(e.authName||e.apiName)+t.searchBtnOptions.search.auth]])),128)),O(y,null,{default:b(()=>[(s(!0),_(P,null,v(e.searchButtons,(i,F)=>(s(),_("div",{style:{"margin-right":"10px"},key:F},[w((s(),c(A,{icon:t.searchBtnOptions[i].icon,type:t.searchBtnOptions[i].type,onClick:u=>K(i)},{default:b(()=>[se(pe(t.searchBtnOptions[i].label),1)]),_:2},1032,["icon","type","onClick"])),[[R,(e.authName||e.apiName)+t.searchBtnOptions[i].auth]])]))),128))]),_:1})]),_:1})),!e.hideSetColums&&t.innerTableColumns?(s(),c(ue,{key:1,style:{"margin-left":"auto"},localTableColumnsName:t.localTableColumnsName,initTableColums:t.initTableColums,tableColumns:t.innerTableColumns},null,8,["localTableColumnsName","initTableColums","tableColumns"])):f("",!0)]),_:1})),O(k,{class:"paged-table-container"},{default:b(()=>[t.innerTableColumns?(s(),c(ce,{key:0,specialLocalColumnName:e.specialLocalColumnName,columnWidth:e.columnWidth,columnHeaderAlign:e.columnHeaderAlign,columnAlign:e.columnAlign,tableData:t.tableData,tableColumns:t.innerTableColumns,onSortChange:Q,leftOperation:e.leftOperation,onLeftOperationHadel:$,leftOperationColumnWidth:e.leftOperationColumnWidth,rightOperation:q(),onRightOperationHadel:I,multipleTable:e.multipleTable,onTableSelectionHandle:D,tableRowClassName:e.tableRowClassName,tableCellClassName:e.tableCellClassName},null,8,["specialLocalColumnName","columnWidth","columnHeaderAlign","columnAlign","tableData","tableColumns","leftOperation","leftOperationColumnWidth","rightOperation","multipleTable","tableRowClassName","tableCellClassName"])):f("",!0),O(me,{style:{"margin-top":"15px",float:"right"},pager:t.pager,onPageSizeChange:Z,onPageCurrentChange:ee},null,8,["pager"])]),_:1}),O(de,{ref_key:"importPopRef",ref:x,apiName:e.apiName,onSuccess:X},null,8,["apiName"]),O(he,{ref_key:"apiEditPopRef",ref:m,apiName:e.apiName,onSubmitEditForm:J,formRules:e.apiEditFormRules},null,8,["apiName","formRules"])])),[[te,t.loading]])}}}),Ae=ne(ve,[["__scopeId","data-v-57f54e35"]]);export{Ae as t};
|
|
|