index.ChsH6p4P.js 5.9 KB

1
  1. import{k as e,p as a,m as l,w as t,q as s,N as o,a1 as u,t as n,v as i,z as c,B as r,C as h,F as m,G as d,o as f,D as p,a2 as _}from"./index-C9TJPork.js";import{_ as y}from"./u-search.DOsDiA_z.js";import{r as V}from"./uni-app.es.CUt9gedF.js";import{_ as g}from"./u-checkbox.DJ2PERbW.js";import{_ as b}from"./u-checkbox-group.DHs1JB4s.js";import{_ as k,a as x}from"./u-radio-group.BjzEj90s.js";import{_ as C}from"./u-popup.7vl_vYde.js";import{r as D}from"./resources.DEPsJg7u.js";import{_ as v}from"./_plugin-vue_export-helper.BCo6x5W8.js";const B=v({name:"JnpfMultSelect",props:{list:{type:Array,default:()=>[]},height:{type:[Number,String],default:""},multiple:{type:Boolean,default:!1},filterable:{type:Boolean,default:!1},cancelBtn:{type:Boolean,default:!0},confirmBtn:{type:Boolean,default:!0},show:{type:Boolean,default:!1},cancelColor:{type:String,default:"#606266"},confirmColor:{type:String,default:"#2979ff"},safeAreaInsetBottom:{type:Boolean,default:!1},maskCloseAble:{type:Boolean,default:!0},defaultValue:{type:Array,default:()=>[]},labelName:{type:String,default:"fullName"},valueName:{type:String,default:"id"},title:{type:String,default:""},cancelText:{type:String,default:"取消"},confirmText:{type:String,default:"确认"},isFlow:{type:Boolean,default:!1}},data:()=>({columnData:[],innerValue:[],lastSelectIndex:[],showPopup:!1,checkedValue:"",searchValue:"",icon:D.message.nodata}),watch:{show:{handler(e){this.showPopup=e,e&&setTimeout((()=>this.init()),10)},immediate:!0}},computed:{columnList(){return this.columnData.filter((e=>e[this.labelName]&&e[this.labelName].match(this.searchValue)))}},methods:{init(){this.setColumnData(),this.setDefault()},setColumnData(){this.columnData=this.list.map(((e,a)=>({...e,checked:!1})))},setDefault(){if(this.searchValue="",this.checkedValue="",this.multiple){this.innerValue=this.defaultValue;for(let e=0;e<this.innerValue.length;e++)e:for(let a=0;a<this.columnData.length;a++)if(this.innerValue[e]===this.columnData[a][this.valueName]){this.columnData[a].checked=!0;break e}}else for(let e=0;e<this.columnData.length;e++)this.defaultValue[0]===this.columnData[e][this.valueName]&&(this.checkedValue=this.columnData[e][this.valueName],this.innerValue=this.columnData[e])},radioGroupChange(e){this.innerValue=[{...e,checked:!0}]},handleConfirm(){if(this.multiple){let e={indexs:[],list:[],label:"",value:uni.$u.deepClone(this.innerValue)};if(!this.isFlow)for(let a=0;a<this.columnData.length;a++){const l=this.columnData[a];this.columnData[a].checked&&(e.list.push(uni.$u.deepClone(l)),e.indexs.push(a),e.label?e.label+=","+l[this.labelName]:e.label+=l[this.labelName])}this.$emit("confirm",e)}else{if(this.isFlow&&!this.innerValue.length)return this.$u.toast("请选择流程");this.$emit("confirm",this.innerValue)}this.close()},close(){this.$emit("close")}}},[["render",function(D,v,B,w,N,j){const A=d,S=f,$=V(e("u-search"),y),I=V(e("u-checkbox"),g),T=V(e("u-checkbox-group"),b),U=V(e("u-radio"),k),F=V(e("u-radio-group"),x),L=p,P=_,G=V(e("u-popup"),C);return a(),l(G,{class:"jnpf-select",maskCloseAble:B.maskCloseAble,mode:"bottom",modelValue:N.showPopup,"onUpdate:modelValue":v[7]||(v[7]=e=>N.showPopup=e),safeAreaInsetBottom:B.safeAreaInsetBottom,onClose:j.close,height:B.height,"mask-close-able":!1},{default:t((()=>[s(S,{class:"u-select"},{default:t((()=>[s(S,{class:"u-select__header",onTouchmove:v[3]||(v[3]=o((()=>{}),["stop","prevent"]))},{default:t((()=>[s(S,{class:"u-select__header__cancel u-select__header__btn",style:u([{color:B.cancelColor},{width:"60rpx","text-align":"center"}]),"hover-class":"u-hover-class","hover-stay-time":150,onClick:v[0]||(v[0]=e=>j.close())},{default:t((()=>[B.cancelBtn?(a(),l(A,{key:0},{default:t((()=>[n(i(B.cancelText),1)])),_:1})):c("",!0)])),_:1},8,["style"]),s(S,{class:"u-select__header__title",style:{flex:"1","text-align":"center"}},{default:t((()=>[n(i(B.title),1)])),_:1}),s(S,{class:"u-select__header__confirm u-select__header__btn",style:u([{color:B.confirmColor},{width:"60rpx","text-align":"center"}]),"hover-class":"u-hover-class","hover-stay-time":150,onTouchmove:v[1]||(v[1]=o((()=>{}),["stop"])),onClick:v[2]||(v[2]=o((e=>j.handleConfirm()),["stop"]))},{default:t((()=>[B.confirmBtn?(a(),l(A,{key:0},{default:t((()=>[n(i(B.confirmText),1)])),_:1})):c("",!0)])),_:1},8,["style"])])),_:1}),B.isFlow||B.filterable?(a(),l(S,{key:0,class:"search-box_sticky"},{default:t((()=>[s(S,{class:"search-box"},{default:t((()=>[s($,{placeholder:D.$t("app.apply.pleaseKeyword"),height:"72","show-action":!1,"bg-color":"#f0f2f6",shape:"square",modelValue:N.searchValue,"onUpdate:modelValue":v[4]||(v[4]=e=>N.searchValue=e)},null,8,["placeholder","modelValue"])])),_:1})])),_:1})):c("",!0),s(S,{class:"u-select__body u-select__body__multiple"},{default:t((()=>[s(P,{"scroll-y":!0,style:{height:"100%"}},{default:t((()=>[B.multiple?(a(),l(T,{key:0,modelValue:N.innerValue,"onUpdate:modelValue":v[5]||(v[5]=e=>N.innerValue=e)},{default:t((()=>[(a(!0),r(m,null,h(j.columnList,((e,s)=>(a(),l(I,{modelValue:e.checked,"onUpdate:modelValue":a=>e.checked=a,key:s,name:e[B.valueName]},{default:t((()=>[n(i(e[B.labelName]),1)])),_:2},1032,["modelValue","onUpdate:modelValue","name"])))),128))])),_:1},8,["modelValue"])):(a(),l(F,{key:1,wrap:"",modelValue:N.checkedValue,"onUpdate:modelValue":v[6]||(v[6]=e=>N.checkedValue=e)},{default:t((()=>[(a(!0),r(m,null,h(j.columnList,((e,s)=>(a(),l(U,{onChange:a=>j.radioGroupChange(e,s),name:e[B.valueName],key:s},{default:t((()=>[n(i(e[B.labelName]),1)])),_:2},1032,["onChange","name"])))),128))])),_:1},8,["modelValue"])),j.columnList.length?c("",!0):(a(),l(S,{key:2,class:"notData-box u-flex-col"},{default:t((()=>[s(S,{class:"u-flex-col notData-inner"},{default:t((()=>[s(L,{src:N.icon,class:"iconImg"},null,8,["src"])])),_:1}),s(A,{class:"notData-inner-text"},{default:t((()=>[n(i(D.$t("common.noData")),1)])),_:1})])),_:1}))])),_:1})])),_:1})])),_:1})])),_:1},8,["maskCloseAble","modelValue","safeAreaInsetBottom","onClose","height"])}],["__scopeId","data-v-635426fe"]]);export{B as M};