mobile-workflow/unpackage/dist/build/web/assets/FormRender.C7_E5hLN.js

2 lines
7.8 KiB
JavaScript
Raw Normal View History

2024-05-18 20:35:00 +08:00
import{_ as e,aF as a,aG as o,aH as r,u as s,aI as t,v as m,aJ as l,a as i,c as n,w as c,d as p,C as u,F as d,D as h,ai as f,Z as y,e as b,b as g,H as E,aj as I,f as F,i as w}from"./index-CyL2BJM2.js";const C=[{name:"等于",symbol:"EQ",compare:(e,a)=>e==a[0]},{name:"不等于",symbol:"NEQ",compare:(e,a)=>e!=a[0]},{name:"为其之一",symbol:"IN",compare:(e,a)=>(a||[]).includes(e)},{name:"不为其之一",symbol:"NIN",compare:(e,a)=>!(a||[]).includes(e)},{name:"含有",symbol:"LIKE",compare:(e,a)=>(a||"").includes(e)}],_=[{name:"包含",symbol:"HS",compare:(e,a)=>S(a,e)},{name:"不包含",symbol:"NHS",compare:(e,a)=>!S(a,e)}],N=[{name:"大于",symbol:"GT",compare:(e,a)=>e>a},{name:"小于",symbol:"LT",compare:(e,a)=>e<a},{name:"等于",symbol:"EQ",compare:(e,a)=>e==a},{name:"不等于",symbol:"NEQ",compare:(e,a)=>e!=a},{name:"大于等于",symbol:"GT_EQ",compare:(e,a)=>e>=a},{name:"小于等于",symbol:"LT_EQ",compare:(e,a)=>e<=a},{name:"在内或相等",symbol:"IN_EQ",compare:(e,a)=>e>=a[0]&&e<=a[1]},{name:"在内或不等",symbol:"IN_NEQ",compare:(e,a)=>e==a},{name:"为其之一",symbol:"IN",compare:(e,a)=>(a||[]).includes(e)},{name:"不为其之一",symbol:"NIN",compare:(e,a)=>!(a||[]).includes(e)}],T=[{name:"是",symbol:"EQ",compare:(e,a)=>e[0].id==a[0].id},{name:"不是",symbol:"NEQ",compare:(e,a)=>e[0].id!=a[0].id},{name:"为其之一",symbol:"IN",compare:(e,a)=>S(e,a,"id")},{name:"含有",symbol:"HS",compare:(e,a)=>S(a,e,"id")},{name:"不含有",symbol:"NHS",compare:(e,a)=>!S(a,e,"id")}],v=[{name:"在之前",symbol:"LT",compare:(e,a)=>H(e,a[0])},{name:"在之后",symbol:"GT",compare:(e,a)=>R(e,a[0])},{name:"在其中",symbol:"IN",compare:(e,a)=>H(a[0])&&R(a[1])}],M=[{name:"包含",symbol:"HS",compare:(e,a)=>H(e[0],a[0])&&R(e[1],a[0])},{name:"不包含",symbol:"NHS",compare:(e,a)=>H(e[0],a[0])||R(a[0],e[1])}];function H(e,a){return new Date(e).getTime()>=new Date(e).getTime()}function R(e,a){return new Date(e).getTime()<=new Date(e).getTime()}function S(e,a,o){if(0===e.length||0===a.length)return!1;for(let r=0;r<e.length;r++){let s=!1;for(let t=0;t<a.length;t++)if(o){if(e[r][o]==a[t][o]){s=!0;break}}else if(e[r]==a[t]){s=!0;break}if(!s)return!1}return!0}const k=function(){let e={strCompare:{},strArrCompare:{},numCompare:{},orgCompare:{},timeCompare:{},timeArrCompare:{}};return C.forEach((a=>e.strCompare[a.symbol]=a.compare)),_.forEach((a=>e.strArrCompare[a.symbol]=a.compare)),N.forEach((a=>e.numCompare[a.symbol]=a.compare)),T.forEach((a=>e.orgCompare[a.symbol]=a.compare)),v.forEach((a=>e.timeCompare[a.symbol]=a.compare)),M.forEach((a=>e.timeArrCompare[a.symbol]=a.compare)),e}();const x=e({name:"FormRender",options:{styleIsolation:"shared"},components:{WFormItem:a},props:{modelValue:{type:Object,default:()=>({})},config:{type:Object,default:()=>({ruleType:"SIMPLE",rules:[]})},jsonConf:{type:Array,default:()=>[]}},computed:{_value:{get(){return this.modelValue},set(e){emit("update:modelValue",e)}},rules(){const e={};return this.formFields.forEach((a=>{a.props.required&&"H"!==a.perm&&(e[a.id]={rules:[{required:!0,errorMessage:"请填写"+a.title}]})})),e},formFields(){const e=[];return this.jsonConf.forEach((a=>this.loadInnerField(a,e))),e},formItemMap(){const e=new Map;return this.loadFormItemMap(this.jsonConf,e),e}},data:()=>({formPermHis:{},compareFunc:{},oldFormData:{},conditionFields:new Set,execute:null}),onReady(){this.$refs.wflowForm.setRules(this.rules)},methods:{showItem:o,loadInnerField(e,a){"SpanLayout"===e.name?e.props.items.forEach((e=>this.loadInnerField(e,a))):a.push(e)},validate(e){this.$refs.wflowForm.validate().then((a=>{e(!0),console.log("表单数据信息:",a)})).catch((e=>{console.log("表单错误信息:",e)}))},loadFormItemMap(e,a){e.forEach((e=>{"TableList"===e.name?(a.set(e.id,e),this.loadFormItemMap(e.props.columns,a)):"SpanLayout"===e.name?this.loadFormItemMap(e.props.items,a):a.set(e.id,e)}))},parserRule(e){const a=e.condition;if(e.children.length>0){for(let a=0;a<e.children.length;a++){const o=this.parserRule(e.children[a]);if(e.logic){if(!o)return!1}else if(o)return!0}return e.logi