master
chentaisen 2024-08-28 19:53:00 +08:00
parent a7cf038fc6
commit 5618eb7ef1
3 changed files with 85 additions and 49 deletions

View File

@ -39,36 +39,40 @@
"@riophae/vue-treeselect": "0.4.0",
"axios": "0.24.0",
"clipboard": "2.0.8",
"codemirror": "^5.65.12",
"core-js": "3.25.3",
"echarts": "5.4.0",
"element-ui": "2.15.14",
"file-saver": "2.0.5",
"fuse.js": "6.4.3",
"highlight.js": "9.18.5",
"jquery": "^3.5.1",
"js-beautify": "1.13.0",
"js-cookie": "3.0.1",
"jsencrypt": "3.0.0-rc.1",
"jsplumb": "^2.15.6",
"nprogress": "0.2.0",
"panzoom": "^9.4.1",
"quill": "1.3.7",
"screenfull": "5.0.2",
"sortablejs": "1.10.2",
"view-design": "^4.5.0-beta.3",
"vue": "2.6.12",
"vue-click-outside": "^1.1.0",
"vue-codemirror": "^4.0.6",
"vue-contextmenujs": "^1.3.13",
"vue-count-to": "1.0.13",
"vue-cropper": "0.5.5",
"vue-meta": "2.4.0",
"vuedraggable": "2.24.3",
"jquery": "^3.5.1",
"panzoom": "^9.4.1",
"view-design": "^4.5.0-beta.3",
"vue-click-outside": "^1.1.0",
"vue-contextmenujs": "^1.3.13",
"vue-router": "^3.2.0",
"vuedraggable": "2.24.3",
"vuex": "^3.4.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "4.4.6",
"@vue/cli-plugin-eslint": "4.4.6",
"@vue/cli-plugin-router": "~4.5.0",
"@vue/cli-plugin-vuex": "~4.5.0",
"@vue/cli-service": "4.4.6",
"babel-eslint": "10.1.0",
"babel-plugin-dynamic-import-node": "2.3.3",
@ -77,17 +81,15 @@
"connect": "3.6.6",
"eslint": "7.15.0",
"eslint-plugin-vue": "7.2.0",
"less": "^3.0.4",
"less-loader": "^5.0.0",
"lint-staged": "10.5.3",
"runjs": "4.4.2",
"sass": "1.32.13",
"sass-loader": "10.1.1",
"script-ext-html-webpack-plugin": "2.1.5",
"svg-sprite-loader": "5.1.1",
"vue-template-compiler": "2.6.12",
"@vue/cli-plugin-router": "~4.5.0",
"@vue/cli-plugin-vuex": "~4.5.0",
"less": "^3.0.4",
"less-loader": "^5.0.0"
"vue-template-compiler": "2.6.12"
},
"engines": {
"node": ">=8.9",

View File

@ -40,7 +40,11 @@ import DictTag from '@/components/DictTag'
import VueMeta from 'vue-meta'
// 字典数据组件
import DictData from '@/components/DictData'
//codemirror
import VueCodemirror from 'vue-codemirror'
import 'codemirror/lib/codemirror.css'
Vue.use(VueCodemirror)
// 全局方法挂载
Vue.prototype.getDicts = getDicts
Vue.prototype.getConfigKey = getConfigKey

View File

@ -303,6 +303,7 @@
<!-- 添加或修改规则对话框 -->
<el-dialog :title="title" :visible.sync="open" width="80%" append-to-body>
<el-button type="primary" @click="generate"></el-button>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="版本类" prop="ruleKind">
<el-input v-model="form.ruleKind" placeholder="请输入版本类"/>
@ -328,7 +329,8 @@
<el-form-item label="版本" prop="ruleId">
<el-input v-model="form.ruleId" disabled placeholder="请输入版本"/>
</el-form-item>
<codemirror ref="mycode" :value="curCode" :options="cmOptions" class="code">
</codemirror>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -338,43 +340,45 @@
<!-- 添加或修改规则对话框 -->
<!-- <el-dialog :title="title" :visible.sync="opens" width="80%" append-to-body>-->
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="80px">-->
<!-- <el-form-item label="版本主键" prop="id">-->
<!-- <el-input v-model="form.id" placeholder="请输入版本类"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="版本类" prop="ruleKind">-->
<!-- <el-input v-model="form.ruleKind" placeholder="请输入版本名称"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="版本名称" prop="name">-->
<!-- <el-input v-model="form.name" type="textarea" placeholder="请输入编码"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="编码" prop="ruleCoding">-->
<!-- <el-radio-group v-model="form.ruleCoding" placeholder="请输入是否激活">-->
<!-- <el-radio label="Y"></el-radio>-->
<!-- <el-radio label="N"></el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="是否激活" prop="ruleActivate">-->
<!-- <el-input v-model="form.ruleActivate" placeholder="请输入状态"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="状态" prop="status">-->
<!-- <el-input v-model="form.status" placeholder="请输入内容"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="内容" prop="ruleContent">-->
<!-- <el-input v-model="form.ruleContent" disabled placeholder="请输入版本"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="规则ID" prop="ruleId">-->
<!-- <el-input v-model="form.ruleId" disabled placeholder="请输入版本"/>-->
<!-- </el-form-item>-->
<!-- <el-dialog :title="title" :visible.sync="opens" width="80%" append-to-body>-->
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="80px">-->
<!-- <el-form-item label="版本主键" prop="id">-->
<!-- <el-input v-model="form.id" placeholder="请输入版本类"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="版本类" prop="ruleKind">-->
<!-- <el-input v-model="form.ruleKind" placeholder="请输入版本名称"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="版本名称" prop="name">-->
<!-- <el-input v-model="form.name" type="textarea" placeholder="请输入编码"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="编码" prop="ruleCoding">-->
<!-- <el-radio-group v-model="form.ruleCoding" placeholder="请输入是否激活">-->
<!-- <el-radio label="Y"></el-radio>-->
<!-- <el-radio label="N"></el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="是否激活" prop="ruleActivate">-->
<!-- <el-input v-model="form.ruleActivate" placeholder="请输入状态"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="状态" prop="status">-->
<!-- <el-input v-model="form.status" placeholder="请输入内容"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="内容" prop="ruleContent">-->
<!-- <el-input v-model="form.ruleContent" disabled placeholder="请输入版本"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="规则ID" prop="ruleId">-->
<!-- <el-input v-model="form.ruleId" disabled placeholder="请输入版本"/>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- <div slot="footer" class="dialog-footer">-->
<!-- <el-button type="primary" @click="submitForm"> </el-button>-->
<!-- <el-button @click="cancel"> </el-button>-->
<!-- </div>-->
<!-- </el-dialog>-->
<!-- </el-form>-->
<!-- <div slot="footer" class="dialog-footer">-->
<!-- <el-button type="primary" @click="submitForm"> </el-button>-->
<!-- <el-button @click="cancel"> </el-button>-->
<!-- </div>-->
<!-- </el-dialog>-->
</div>
</template>
@ -382,10 +386,25 @@
import {getRule, delRule} from "/src/api/rule/rule";
import {getEditionList, addRule, enable, disable, updateRule, getFindByEditionId} from "@/api/rule/ruleEdition";
import {codemirror} from 'vue-codemirror'
import "codemirror/theme/ambiance.css"; // theme
require("codemirror/mode/javascript/javascript"); // jsmode
export default {
name: "Rule",
data() {
return {
curCode: '测---------------------------------------试',
cmOptions: {
lineNumbers: true, //
mode: 'text/x-yaml', // model
gutters: ['CodeMirror-lint-markers'], //
theme: "ambiance",
lint: true, //
},
ruleAndEditionList: [],
//
ruleAndEdition: {},
@ -429,7 +448,7 @@ export default {
rule: {},
//
form: {
id:'',
id: '',
ruleKind: '',
name: '',
ruleCoding: '',
@ -604,6 +623,17 @@ export default {
...this.queryParams
}, `rule_${new Date().getTime()}.xlsx`)
}
}
},
components: {
codemirror
},
};
</script>
<style scoped>
.information-box >>> .CodeMirror {
font-family: monospace;
height: 71vh;
direction: ltr;
}
</style>