(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0e5b73"],{9655:function(e,t,a){"use strict";a.r(t);var r=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("a-modal",{attrs:{title:e.title,width:1e3,visible:e.visible,confirmLoading:e.confirmLoading,cancelText:"关闭"},on:{ok:e.handleOk,cancel:e.handleCancel}},[a("a-spin",{attrs:{spinning:e.confirmLoading}},[a("a-form-model",{ref:"form",attrs:{model:e.model,rules:e.validatorRules}},[a("a-form-model-item",{attrs:{labelCol:e.labelCol,wrapperCol:e.wrapperCol,label:"规则名称",prop:"ruleName"}},[a("a-input",{attrs:{placeholder:"请输入规则名称"},model:{value:e.model.ruleName,callback:function(t){e.$set(e.model,"ruleName",t)},expression:"model.ruleName"}})],1),a("a-form-model-item",{attrs:{labelCol:e.labelCol,wrapperCol:e.wrapperCol,label:"规则Code",prop:"ruleCode"}},[a("a-input",{attrs:{placeholder:"请输入规则Code"},model:{value:e.model.ruleCode,callback:function(t){e.$set(e.model,"ruleCode",t)},expression:"model.ruleCode"}})],1),a("a-form-model-item",{attrs:{labelCol:e.labelCol,wrapperCol:e.wrapperCol,label:"规则描述",prop:"ruleDescription"}},[a("a-textarea",{attrs:{placeholder:"请输入规则描述"},model:{value:e.model.ruleDescription,callback:function(t){e.$set(e.model,"ruleDescription",t)},expression:"model.ruleDescription"}})],1)],1),a("a-tabs",{model:{value:e.tabs.activeKey,callback:function(t){e.$set(e.tabs,"activeKey",t)},expression:"tabs.activeKey"}},[a("a-tab-pane",{key:e.tabs.design.key,attrs:{tab:"局部规则",forceRender:""}},[a("a-alert",{attrs:{type:"info",showIcon:"",message:"局部规则按照你输入的位数有序的校验。"}}),a("j-editable-table",{ref:"designTable",staticStyle:{"margin-top":"8px"},attrs:{dragSort:"",rowNumber:"",maxHeight:240,columns:e.tabs.design.columns,dataSource:e.tabs.design.dataSource},scopedSlots:e._u([{key:"action",fn:function(e){return[a("my-action-button",{attrs:{rowEvent:e}})]}}])})],1),a("a-tab-pane",{key:e.tabs.global.key,attrs:{tab:"全局规则",forceRender:""}},[a("j-editable-table",{ref:"globalTable",attrs:{dragSort:"",rowNumber:"",actionButton:"",maxHeight:240,columns:e.tabs.global.columns,dataSource:e.tabs.global.dataSource},scopedSlots:e._u([{key:"actionButtonAfter",fn:function(){return[a("a-alert",{staticStyle:{"margin-bottom":"8px"},attrs:{type:"info",showIcon:"",message:"全局规则可校验用户输入的所有字符;全局规则的优先级比局部规则的要高。"}})]},proxy:!0},{key:"action",fn:function(e){return[a("my-action-button",{attrs:{rowEvent:e,allowEmpty:""}})]}}])})],1)],1)],1)],1)},n=[],i=a("88bc"),o=a.n(i),l=a("0fea"),s=a("ca00"),c=a("e2e0"),u=a("7550");function d(e,t){return h(e)||f(e,t)||p(e,t)||m()}function m(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function p(e,t){if(e){if("string"===typeof e)return b(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?b(e,t):void 0}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=new Array(t);a<t;a++)r[a]=e[a];return r}function f(e,t){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(e)){var a=[],r=!0,n=!1,i=void 0;try{for(var o,l=e[Symbol.iterator]();!(r=(o=l.next()).done);r=!0)if(a.push(o.value),t&&a.length===t)break}catch(s){n=!0,i=s}finally{try{r||null==l["return"]||l["return"]()}finally{if(n)throw i}}return a}}function h(e){if(Array.isArray(e))return e}var y={name:"SysCheckRuleModal",components:{JEditableTable:u["default"],"my-action-button":{props:{rowEvent:Object,allowEmpty:Boolean},methods:{confirmIsShow:function(){var e=this.rowEvent,t=e.index,a=e.allValues.inputValues,r=a[t];return r.digits||r.pattern},handleLineAdd:function(){var e=this.rowEvent.target;e.add()},handleLineDelete:function(){var e=this.rowEvent,t=e.rowId,a=e.target;a.removeRows(t)},renderDeleteButton:function(){var e=this.$createElement;return this.allowEmpty||this.rowEvent.index>0?this.confirmIsShow()?e("a-popconfirm",{attrs:{title:"确定要删除吗?"},on:{confirm:this.handleLineDelete}},[e("a-button",{attrs:{icon:"minus"}})]):e("a-button",{attrs:{icon:"minus"},on:{click:this.handleLineDelete}}):""}},render:function(){var e=arguments[0];return e("div",[e("a-button",{on:{click:this.handleLineAdd},attrs:{icon:"plus"}})," ",this.renderDeleteButton()])}}},data:function(){var e=this;return{title:"操作",visible:!1,model:{},labelCol:{xs:{span:24},sm:{span:5}},wrapperCol:{xs:{span:24},sm:{span:16}},confirmLoading:!1,validatorRules:{ruleName:[{required:!0,message:"请输入规则名称!"}],ruleCode:[{required:!0,message:"请输入规则Code!"},{validator:function(t,a,r){return Object(s["s"])("sys_check_rule","rule_code",a,e.model.id,r)}}]},tabs:{activeKey:"design",global:{key:"global",columns:[{title:"优先级",key:"priority",width:"15%",type:c["a"].select,defaultValue:"1",options:[{title:"优先运行",value:"1"},{title:"最后运行",value:"0"}],validateRules:[]},{title:"规则(正则表达式)",key:"pattern",width:"50%",type:c["a"].input,validateRules:[{required:!0,message:"规则不能为空"},{handler:this.validatePatternHandler}]},{title:"提示文本",key:"message",width:"20%",type:c["a"].input,validateRules:[{required:!0,message:"${title}不能为空"}]},{title:"操作",key:"action",width:"15%",slotName:"action",type:c["a"].slot}],dataSource:[]},design:{key:"design",columns:[{title:"位数",key:"digits",width:"15%",type:c["a"].inputNumber,validateRules:[{required:!0,message:"${title}不能为空"},{pattern:/^[1-9]\d*$/,message:"请输入零以上的正整数"}]},{title:"规则(正则表达式)",key:"pattern",width:"50%",type:c["a"].input,validateRules:[{required:!0,message:"规则不能为空"},{handler:this.validatePatternHandler}]},{title:"提示文本",key:"message",width:"20%",type:c["a"].input,validateRules:[{required:!0,message:"${title}不能为空"}]},{title:"操作",key:"action",width:"15%",slotName:"action",type:c["a"].slot}],dataSource:[]}},url:{add:"/sys/checkRule/add",edit:"/sys/checkRule/edit"}}},created:function(){},methods:{validatePatternHandler:function(e,t,a,r,n,i){if("blur"===e||"getValues"===e)try{new RegExp(t),n(!0)}catch(o){n(!1,"请输入正确的正则表达式")}else n(!0)},add:function(){this.edit({})},edit:function(e){var t=this;this.tabs.activeKey=this.tabs.design.key,this.tabs.global.dataSource=[],this.tabs.design.dataSource=[{digits:"",pattern:"",message:""}],this.visible=!0,this.$nextTick((function(){t.$refs.form.resetFields(),t.model=Object.assign({},e);var a=t.model.ruleJson;if(a){var r=JSON.parse(a),n=[],i=[],o="1";r.forEach((function(e){"*"===e.digits?n.push(Object.assign(e,{priority:o})):(o="0",i.push(e))})),t.tabs.global.dataSource=n,t.tabs.design.dataSource=i}}))},close:function(){this.$emit("close"),this.visible=!1},handleOk:function(){var e=this;Promise.all([Object(s["a"])(new Promise((function(t,a){e.$refs.form.validate((function(r,n){return r?t(e.model):a(n)}))}))),Object(s["a"])(this.$refs.designTable.getValuesPromise),Object(s["a"])(this.$refs.globalTable.getValuesPromise)]).then((function(t){var a=d(t,3),r=a[0],n=a[1],i=a[2];if(r.type===s["c"])return Promise.reject("主表校验未通过");if(n.type===s["c"])return e.tabs.activeKey=e.tabs.design.key,Promise.reject("局部规则子表校验未通过");if(i.type===s["c"])return e.tabs.activeKey=e.tabs.global.key,Promise.reject("全局规则子表校验未通过");var c=r.data,u=i.data,m=n.data,p=[],b=[];u.forEach((function(e){e.digits="*","1"===e.priority?p.push(e):b.push(e)}));var f=p.concat(m).concat(b),h=f.map((function(e){return o()(e,"digits","pattern","message")})),y=JSON.stringify(h),g=Object.assign(e.model,c,{ruleJson:y}),v="post",w=e.url.add;return e.model.id&&(v="put",w=e.url.edit),e.confirmLoading=!0,Object(l["h"])(w,g,v)})).then((function(t){t.success?(e.$message.success(t.message),e.$emit("ok"),e.close()):e.$message.warning(t.message)})).catch((function(e){})).finally((function(){e.confirmLoading=!1}))},handleCancel:function(){this.close()}}},g=y,v=a("2877"),w=Object(v["a"])(g,r,n,!1,null,"3e4e4b2b",null);t["default"]=w.exports}}]);
|