{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\form\\ValidataProperty.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\form\\ValidataProperty.vue","mtime":1675071992022},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["import \"core-js/modules/es6.function.name\";\nimport \"regenerator-runtime/runtime\";\nimport _asyncToGenerator from \"D:/jenkins/workspace/xq-web-bpm/node_modules/@babel/runtime/helpers/esm/asyncToGenerator\";\nimport \"core-js/modules/web.dom.iterable\";\nimport \"core-js/modules/es6.array.find\";\nimport \"core-js/modules/es6.regexp.split\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport Draggable from \"vuedraggable\";\nimport { Base64 } from \"js-base64\";\nimport utils from \"@/hotent-ui-util.js\";\nimport { validateRules } from \"@/api/controlsConfig.js\";\nexport default {\n name: \"layout-property\",\n components: {\n Draggable: Draggable\n },\n props: [\"data\", \"boData\", \"fieldIndexData\"],\n data: function data() {\n return {\n validateRules: validateRules,\n isAddValidata: true,\n dialogMethodVisible: false,\n methodIndex: 0,\n diyScript: \"\",\n isFilter: false,\n specialValidate: [\"confirmed\", \"isAfter\", \"isBefore\", \"isStart\", \"isEnd\"],\n toolmethod: \"\",\n cmOptions: {\n value: \"\",\n mode: \"javascript\",\n readOnly: false,\n tabSize: 2,\n theme: \"base16-light\",\n lineNumbers: true,\n line: true\n },\n requiredIndex: -1\n };\n },\n computed: {\n validateList: function validateList() {\n var _this = this;\n\n var rule = this.data.options.validateType;\n\n if (!rule) {\n return [];\n } //判断是否只有一个必填校验规并且选择了必填校验\n\n\n if (rule == \"required\" && this.data.options.validate == \"'required'\") {\n return this.data.options.validateList;\n }\n\n var filterRule = rule.split(\"|\");\n return this.validateRules.filter(function (val) {\n var res = true;\n\n if (filterRule.indexOf(val.key) != -1) {\n if (_this.isFilter) {\n var showValidate = _this.data.options.validateList.find(function (obj) {\n return obj.key == val.key;\n });\n\n if (showValidate != undefined) {\n res = false;\n }\n }\n } else {\n res = false;\n }\n\n return res;\n });\n }\n },\n created: function created() {\n this.$validator = this.$root.$validator;\n },\n watch: {\n fieldIndexData: function fieldIndexData(newVal) {\n var _this2 = this;\n\n if (newVal.fieldName) {\n this.data.options.validateList.forEach(function (v, i) {\n if (v.key == \"required\") {\n _this2.data.options.validateList.splice(i, 1);\n }\n });\n var k = {};\n k.key = \"required\";\n k.name = \"必填\";\n this.data.options.validateList.push(k);\n this.changeValidate(k);\n }\n\n this.requiredIndex = -1;\n\n for (var i = 0; i < this.data.options.validateList.length; i++) {\n if (this.data.options.validateList[i].key == \"required\" && newVal.fieldName) {\n this.requiredIndex = i;\n return;\n } else if (this.data.options.validateList[i].key == \"required\") {\n this.data.options.validateList.splice(i, 1);\n }\n }\n }\n },\n methods: {\n diyScriptChange: function () {\n var _diyScriptChange = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(myValue) {\n var myField, value, startPos, endPos;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n myField = this.$refs.scriptText;\n value = myValue;\n\n if (!(myField.selectionStart || myField.selectionStart === 0)) {\n _context.next = 12;\n break;\n }\n\n startPos = myField.selectionStart;\n endPos = myField.selectionEnd;\n this.toolmethod = myField.value.substring(0, startPos) + value + myField.value.substring(endPos, myField.value.length);\n _context.next = 8;\n return this.$nextTick();\n\n case 8:\n // 这句是重点, 圈起来\n myField.focus();\n myField.setSelectionRange(endPos + value.length, endPos + value.length);\n _context.next = 13;\n break;\n\n case 12:\n this.toolmethod += value;\n\n case 13:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function diyScriptChange(_x) {\n return _diyScriptChange.apply(this, arguments);\n }\n\n return diyScriptChange;\n }(),\n methodOk: function methodOk() {\n this.data.options.validateList[this.methodIndex].value = Base64.encode(this.toolmethod);\n this.data.options.validate = this.newMergeValidate(this.data.options.validateList);\n this.dialogMethodVisible = false;\n },\n methodClick: function methodClick(index) {\n this.methodIndex = index;\n this.dialogMethodVisible = true;\n if (!this.data.options.validateList[index].value) return;\n this.toolmethod = Base64.decode(this.data.options.validateList[index].value);\n },\n handleGridColumnRemove: function handleGridColumnRemove(index) {\n this.data.options.validateList.splice(index, 1);\n },\n filterBoAttr: function filterBoAttr(obj) {\n var _this3 = this;\n\n return obj.filter(function (val) {\n return val.name != _this3.data.target;\n });\n },\n end: function end(evt) {\n this.isFilter = false;\n var validateList = this.data.options.validateList;\n this.data.options.validate = this.newMergeValidate(validateList);\n },\n appendValidate: function appendValidate(item) {\n var validateList = this.data.options.validateList;\n this.data.options.validate = this.newMergeValidate(validateList);\n },\n changeValidate: function changeValidate(item) {\n var showValidate = this.validateRules.find(function (obj) {\n return obj.key == item.key;\n });\n item.inputType = showValidate.inputType;\n item.name = showValidate.name;\n item.isInput = showValidate.isInput;\n item.type = showValidate.type;\n\n if (this.validateList.length != 1) {\n delete item.value;\n }\n\n if (!item.isInput) {\n var validateList = this.data.options.validateList;\n this.data.options.validate = this.newMergeValidate(validateList);\n }\n },\n addValidata: function addValidata() {\n var _this4 = this;\n\n this.isFilter = true;\n\n if (!this.data.fieldPath) {\n this.$validator.validateAll(\"field\");\n this.$message.warning(\"请选择需要修改的组件或绑定属性\");\n return;\n }\n\n this.isAddValidata = true; //判断是否只有一个必填校验规\n\n if (this.data.options.validateType == \"required\" && this.data.options.validateList.length == 1) {\n this.$message.warning(\"当前选择的控件只有一个必填校验\");\n return;\n }\n\n if (this.data.options.validateList == undefined) {\n this.data.options.validateList = [];\n } else if (this.data.options.validateList.length > 0) {\n var validata = this.data.options.validateList[this.data.options.validateList.length - 1];\n\n if (validata.key == \"\") {\n this.$validator.validate(\"field.validatorSelect\");\n return;\n } else if (validata.key == \"between\") {\n if (validata.start == undefined || validata.start == \"\" || validata.end == undefined || validata.end == \"\") {\n this.$validator.validate(\"field.validatorValue\");\n return;\n }\n } else if (validata.inputType == \"select\" && (validata.value == undefined || validata.value.length == 0)) {\n this.$validator.validate(\"field.validatorSelectInput\");\n return;\n } else if (validata.inputType == \"input\" && (validata.value == undefined || validata.value.length == 0)) {\n this.$validator.validate(\"field.validatorValue\");\n return;\n } else if (validata.inputType == \"button\" && (validata.value == undefined || validata.value.length == 0)) {\n this.$message.warning(\"请输入js方法校验\");\n return;\n }\n }\n\n this.$nextTick(function () {\n setTimeout(function () {\n _this4.data.options.validateList.push({\n key: \"\",\n name: \"\"\n });\n });\n });\n },\n removeValidata: function removeValidata(index) {\n this.isFilter = false;\n this.data.options.validateList.splice(index, 1);\n this.data.options.validate = this.newMergeValidate(this.data.options.validateList);\n },\n getValidate: function getValidate(item) {\n var validate = item.key;\n\n if (item.isInput) {\n if (item.inputType == \"select\") {\n if (item.name == \"相同的值\" || item.name == \"日期不晚于\" || item.name == \"日期晚于\" || item.name == \"日期早于\" || item.name == \"日期不早于\") {\n if (item.value.split(\".\").length == 4) {\n //子表\n validate = item.key + \":\" + \"item.\" + item.value.split(\".\")[3];\n } else if (item.value.split(\".\").length == 5) {\n //孙表\n validate = item.key + \":\" + \"item.\" + item.value.split(\".\")[4];\n } else {\n validate = item.key + \":\" + item.value;\n }\n } else {\n validate = item.key + \":\" + item.value;\n }\n } else if (item.inputType == \"input\") {\n validate = item.key + \":\" + item.value;\n } else if (item.inputType == \"twoInput\") {\n validate = \"between:\" + item.start + \",\" + item.end;\n } else if (item.inputType == \"button\") {\n validate = item.key + \":\" + item.value;\n }\n }\n\n return validate;\n },\n newMergeValidate: function newMergeValidate(validateList) {\n var ref = false;\n var validateObj1 = \"\";\n var validateObj2 = [];\n var me_ = this;\n validateList.forEach(function (obj) {\n var validate = me_.getValidate(obj);\n validateObj2.push(validate);\n var key = utils.stringSplit(validate, \":\")[0];\n var value = utils.stringSplit(validate, \":\")[1];\n var splitVar = \"\";\n var op = \"\";\n\n if (validateObj1 != \"\") {\n op = \"|\";\n splitVar = \"+\";\n }\n\n if (me_.specialValidate.indexOf(key) > -1) {\n validateObj1 = validateObj1 + splitVar + \"'\" + op + key + \":'+\" + value;\n ref = true;\n } else {\n validateObj1 = validateObj1 + splitVar + \"'\" + op + validate + \"'\";\n }\n });\n var validateStr = \"\";\n\n if (ref) {\n validateStr = validateObj1;\n } else {\n if (validateObj2.length == 0) {\n validateStr = \"\";\n } else {\n validateStr = \"'\" + validateObj2.join(\"|\") + \"'\";\n }\n }\n\n return validateStr;\n }\n }\n};",null]}