import{v as e,o as a,d as l,w as t,e as s,X as o,L as u,f as i,t as n,x as c,I as r,J as h,K as m,i as d,a0 as f,h as p,a3 as _}from"./index-C6M87-W_.js";import{_ as V}from"./u-search.D-kLOCR5.js";import{r as y}from"./uni-app.es.D088K7Ts.js";import{_ as b,a as k}from"./u-checkbox-group.q792_mnh.js";import{_ as g,a as C}from"./u-radio-group.DZl6vi08.js";import{_ as x}from"./u-popup.ej3frji8.js";import{r as D}from"./resources.DipqUmnN.js";import{_ as v}from"./_plugin-vue_export-helper.BCo6x5W8.js";const w=v({name:"JnpfMultSelect",props:{list:{type:Array,default:()=>[]},multiple:{type:Boolean,default:!1},filterable:{type:Boolean,default:!1},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:"",columnData:[],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,a){this.innerValue=[{index:a,...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,w,N,A,B){const S=d,j=y(e("u-search"),V),I=y(e("u-checkbox"),b),T=y(e("u-checkbox-group"),k),$=y(e("u-radio"),g),U=y(e("u-radio-group"),C),L=f,F=p,P=_,q=y(e("u-popup"),x);return a(),l(q,{maskCloseAble:w.maskCloseAble,mode:"bottom",modelValue:A.showPopup,"onUpdate:modelValue":v[7]||(v[7]=e=>A.showPopup=e),safeAreaInsetBottom:w.safeAreaInsetBottom,onClose:B.close,"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:w.cancelColor}),"hover-class":"u-hover-class","hover-stay-time":150,onClick:v[0]||(v[0]=e=>B.close())},{default:t((()=>[i(n(w.cancelText),1)])),_:1},8,["style"]),s(S,{class:"u-select__header__title"},{default:t((()=>[i(n(w.title),1)])),_:1}),s(S,{class:"u-select__header__confirm u-select__header__btn",style:u({color:w.confirmColor}),"hover-class":"u-hover-class","hover-stay-time":150,onTouchmove:v[1]||(v[1]=o((()=>{}),["stop"])),onClick:v[2]||(v[2]=o((e=>B.handleConfirm()),["stop"]))},{default:t((()=>[i(n(w.confirmText),1)])),_:1},8,["style"])])),_:1}),w.isFlow||w.filterable?(a(),l(S,{key:0,class:"search-box_sticky"},{default:t((()=>[s(S,{class:"search-box"},{default:t((()=>[s(j,{placeholder:"请输入关键词搜索",height:"72","show-action":!1,"bg-color":"#f0f2f6",shape:"square",modelValue:A.searchValue,"onUpdate:modelValue":v[4]||(v[4]=e=>A.searchValue=e)},null,8,["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((()=>[w.multiple?(a(),l(T,{key:0,modelValue:A.innerValue,"onUpdate:modelValue":v[5]||(v[5]=e=>A.innerValue=e)},{default:t((()=>[(a(!0),r(m,null,h(B.columnList,((e,s)=>(a(),l(I,{modelValue:e.checked,"onUpdate:modelValue":a=>e.checked=a,key:s,name:e[w.valueName]},{default:t((()=>[i(n(e[w.labelName]),1)])),_:2},1032,["modelValue","onUpdate:modelValue","name"])))),128))])),_:1},8,["modelValue"])):(a(),l(U,{key:1,wrap:"",modelValue:A.checkedValue,"onUpdate:modelValue":v[6]||(v[6]=e=>A.checkedValue=e)},{default:t((()=>[(a(!0),r(m,null,h(B.columnList,((e,s)=>(a(),l($,{onChange:a=>B.radioGroupChange(e,s),name:e[w.valueName],key:s},{default:t((()=>[i(n(e[w.labelName]),1)])),_:2},1032,["onChange","name"])))),128))])),_:1},8,["modelValue"])),B.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:A.icon,mode:"",class:"iconImg"},null,8,["src"])])),_:1}),s(F,{class:"notData-inner-text"},{default:t((()=>[i("暂无数据")])),_:1})])),_:1}))])),_:1})])),_:1})])),_:1})])),_:1},8,["maskCloseAble","modelValue","safeAreaInsetBottom","onClose"])}],["__scopeId","data-v-fd3af5ac"]]);export{w as M};
-
zuoliyuan authored0623e6e0