LJFieldsTable.57abd11e.js 8.4 KB

1
  1. import{k as E,z as B,n as w,r as s,w as A,b as R,$ as z,t as K,o as H,A as I}from"./index.9d8a3e8d.js";import{d as P}from"./vuedraggable.umd.318ef951.js";function V(r,e=[]){if(!r||!e||!Array.isArray(e))return;const l={__names:[]};e.forEach((t,n)=>{l[t.key]=n+1,l.__names.push(t.name)}),B(r,l)}function T(r){return r?E(r,!0)||{}:{}}const G={__name:"LJTableFieldConfig",props:{tableKey:{type:String,default:null},fields:{type:Array,default:()=>[]},fieldsDefault:{type:Array,default:()=>[]}},emits:["change"],setup(r,{expose:e,emit:l}){const t=r,n=s(!1),o=s(!1),g=s(!1),y=s(!1),m=s({animation:200,group:"description",disabled:!1,ghostClass:"ghost"});function b(){let i=[...t.fields];const x=T(t.tableKey);return x&&Object.keys(x).length&&(i=i.map(h=>(h.sort=x[h.key]||h.sort||0,h)).sort((h,J)=>h.sort-J.sort)),i}const f=s([...b()]),k=s([...t.fields]),v=s(t.fields.map(i=>i.name));console.log(t.fieldsDefault);const p=s([...t.fieldsDefault]),c=s([...p.value]);A(()=>t.fields,()=>{f.value=[...b()],k.value=[...t.fields],v.value=t.fields.map(i=>i.name)}),A(()=>t.fieldsDefault,()=>{const i=T(t.tableKey);i.__names?p.value=[...i.__names]:p.value=[...t.fieldsDefault],c.value=[...p.value],g.value=c.value.length===f.value.length});function S(i){c.value=i?v.value:[],o.value=!1}function F(){n.value=!0}function C(){n.value=!1}function L(){c.value=p.value,f.value=k.value,g.value=c.value.length===f.value.length}function a(){g.value=c.value.length===f.value.length,u()}function u(i=!1){const x=f.value.filter(h=>c.value.includes(h.name));l("change",x),i&&C()}function _(i){y.value=!0,i.item.toggleAttribute("over",!0)}function d(i){y.value=!1,i.item.toggleAttribute("over",!1),u()}return e({handleOpen:F,handleClose:C}),{__sfc:!0,emits:l,props:t,dialogVisible:n,isIndeterminate:o,checkAll:g,drag:y,dragOptions:m,getDefaultOrderCheckboxFields:b,checkboxFields:f,fieldsBackup:k,columnOptions:v,defaultCheckedColumns:p,checkedColumns:c,handleCheckAllChange:S,handleOpen:F,handleClose:C,handleRest:L,changeCheckboxGroup:a,handleSubmit:u,handleStart:_,handleEnd:d,vuedraggable:P}}};var O=function(){var e=this,l=e._self._c,t=e._self._setupProxy;return l("el-dialog",{attrs:{"append-to-body":!0,visible:t.dialogVisible,center:"","custom-class":"lj-field-config"},on:{"update:visible":function(n){t.dialogVisible=n}}},[l("span",{staticClass:"title",attrs:{slot:"title"},slot:"title"},[e._v("\u5B57\u6BB5\u914D\u7F6E")]),l("div",[l("el-checkbox",{staticClass:"all-checkbox",attrs:{indeterminate:t.isIndeterminate},on:{change:t.handleCheckAllChange},model:{value:t.checkAll,callback:function(n){t.checkAll=n},expression:"checkAll"}},[e._v("\u5168\u90E8 ")]),l("el-checkbox-group",{on:{change:t.changeCheckboxGroup},model:{value:t.checkedColumns,callback:function(n){t.checkedColumns=n},expression:"checkedColumns"}},[l(t.vuedraggable,e._b({on:{start:t.handleStart,end:t.handleEnd},model:{value:t.checkboxFields,callback:function(n){t.checkboxFields=n},expression:"checkboxFields"}},"vuedraggable",t.dragOptions,!1),[l("transition-group",{staticClass:"transition-group-main",attrs:{type:"transition",name:t.drag?null:"flip-list"}},e._l(t.checkboxFields,function(n){return l("el-checkbox",{key:n.key,staticStyle:{width:"100%"},attrs:{label:n.name}},[l("div",{staticClass:"check-box-item"},[l("div",[e._v(e._s(n.name))]),l("i",{staticClass:"iconfont icon-shangxiatuozhuai"})])])}),1)],1)],1)],1),l("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[l("el-button",{staticClass:"buttonRight",on:{click:t.handleClose}},[e._v("\u53D6 \u6D88")]),l("el-button",{staticClass:"buttonLeft",attrs:{type:"primary",plain:""},on:{click:t.handleRest}},[e._v(" \u6062\u590D\u9ED8\u8BA4 ")]),l("el-button",{staticClass:"buttonRight",attrs:{type:"primary"},on:{click:function(n){return t.handleSubmit(!0)}}},[e._v(" \u786E \u5B9A ")])],1)])},M=[];O._withStripped=!0;var $=w(G,O,M,!1,null,"4040595b",null,null);$.options.__file="E:/\u5341\u4E8C\u79D1\u6280/\u9879\u76EE/\u4E5D\u53F7\u540C\u4E8B/salary-management-web/src/components/LJTableFieldConfig/LJTableFieldConfig.vue";const N=$.exports;const W={__name:"LJFieldsTable",props:{tableKey:{type:String,default:null},diffHeight:{type:Number,default:0},columnWidth:{type:String,default:"auto"},data:{type:Array,default:()=>[]},headerBg:{type:String,default:"#F6FAFF"},fields:{type:Array,default:()=>[]},fieldsDefault:{type:Array,default:()=>[]},loading:{type:Boolean,default:!1},loadingText:{type:String,default:"\u62FC\u547D\u52A0\u8F7D\u4E2D"},loadingIcon:{type:String,default:"el-icon-loading"},loadingColor:{type:String,default:"#1651EE"},loadingSize:{type:String,default:"12px"},loadingBg:{type:String,default:"rgba(255, 255, 255, 0.8)"},selection:{type:Boolean,default:!0},operation:{type:Boolean,default:!0},operationLabel:{type:String,default:"\u64CD\u4F5C"},detail:{type:Boolean,default:!0},detailLabel:{type:String,default:"\u8BE6\u60C5"},edit:{type:Boolean,default:!0},editLabel:{type:String,default:"\u7F16\u8F91"},del:{type:Boolean,default:!0},deleteLabel:{type:String,default:"\u5220\u9664"}},emits:["select","select-all","selection-change","detail","edit","del"],setup(r,{expose:e,emit:l}){const t=r;let n=s(!0);const o=s(),g=s(),y=s(R(()=>`${z.getters.appMainHeight-t.diffHeight}px`)),m=s(t.fieldsDefault);A(()=>t.fields,()=>{b()});function b(){const a=t.fields.filter(u=>u.checked);v(a)}function f(){o.value.handleOpen()}function k(a=[]){V(t.tableKey,a),v(a)}function v(a=[]){m.value=[],K(()=>{if(a.length>0){let u=a;if(n.value){const _=T(t.tableKey);u=u.map(d=>(d.sort=_[d.key]||d.sort||0,d)).filter(d=>!Object.keys(_).length||_[d.key]).sort((d,i)=>d.sort-i.sort),n.value=!1}m.value=u.map(_=>(_.visible=!0,_))}})}function p(a,u){l("select",a,u)}function c(a){l("select-all",a)}function S(a){l("selection-change",a)}function F(a){l("detail",a)}function C(a){l("edit",a)}function L(a){l("del",a)}return H(()=>{b()}),I(()=>{g.value.doLayout()}),e({ljTableRef:g}),{__sfc:!0,can_ordering:n,emits:l,props:t,ljTableFieldConfig:o,ljTableRef:g,tableHeight:y,checkedFields:m,updateCheckedFields:b,handleOpenConfig:f,handleOrdering:k,changeFields:v,select:p,selectAll:c,selectionChange:S,handleDetails:F,handleEdit:C,handleDelete:L,LJTableFieldConfig:N}}};var j=function(){var e=this,l=e._self._c,t=e._self._setupProxy;return l("div",{staticClass:"lj-table-main",style:{"--lj-table-loading-color":e.loadingColor,"--lj-table-loading-size":e.loadingSize}},[l("div",{staticClass:"lj-table-config-icon",on:{click:function(n){return n.stopPropagation(),t.handleOpenConfig.apply(null,arguments)}}},[l("i",{staticClass:"iconfont icon-jichupeizhi"})]),l(t.LJTableFieldConfig,{ref:"ljTableFieldConfig",attrs:{"table-key":e.tableKey,fields:e.fields,"fields-default":e.fieldsDefault},on:{change:t.handleOrdering}}),l("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],ref:"ljTableRef",attrs:{"element-loading-text":e.loadingText,"element-loading-spinner":e.loadingIcon,"element-loading-background":e.loadingBg,data:e.data,height:t.tableHeight,"header-cell-style":{background:"#F6FAFF"}},on:{select:t.select,"select-all":t.selectAll,"selection-change":t.selectionChange}},[e._t("start",function(){return[e.selection?[l("el-table-column",{attrs:{type:"selection",width:"55",align:"center"}})]:e._e()]}),e._l(t.checkedFields,function(n){return l("el-table-column",{key:n.key,attrs:{width:n.width||e.columnWidth,prop:n.key,label:n.name,align:n.align||"",fixed:n.fixed||!1,sortable:n.sortable||!1},scopedSlots:e._u([{key:"default",fn:function(o){return[e._t(o.column.property,function(){return[e._v(" "+e._s(o.row[o.column.property])+" ")]},{row:o.row,$index:o.$index,column:o.column,isSelected:o.isSelected,isExpanded:o.isExpanded})]}}],null,!0)})}),e._t("default"),e._t("end",function(){return[e.operation?[l("el-table-column",{attrs:{label:e.operationLabel,width:"220",align:"center"},scopedSlots:e._u([{key:"default",fn:function(n){return[e.detail?l("el-button",{attrs:{type:"primary",plain:""},on:{click:function(o){return t.handleDetails(n)}}},[e._v(" "+e._s(e.detailLabel)+" ")]):e._e(),e.edit?l("el-button",{attrs:{type:"primary"},on:{click:function(o){return t.handleEdit(n)}}},[e._v(" "+e._s(e.editLabel)+" ")]):e._e(),e.del?l("el-button",{attrs:{type:"danger"},on:{click:function(o){return t.handleDelete(n)}}},[e._v(" "+e._s(e.deleteLabel)+" ")]):e._e()]}}],null,!1,1349775250)})]:e._e()]})],2)],1)},U=[];j._withStripped=!0;var D=w(W,j,U,!1,null,"4f4ff52d",null,null);D.options.__file="E:/\u5341\u4E8C\u79D1\u6280/\u9879\u76EE/\u4E5D\u53F7\u540C\u4E8B/salary-management-web/src/components/LJFieldsTable/LJFieldsTable.vue";const X=D.exports;export{X as L};