|
@@ -5,102 +5,23 @@
|
|
|
<el-tag color="primary">{{ itemData.title }}</el-tag>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="类型">
|
|
|
- <el-tabs v-model="activeName" @tab-click="handleClick">
|
|
|
- <el-tab-pane label="用户管理" name="first">用户管理</el-tab-pane>
|
|
|
- <el-tab-pane label="配置管理" name="second">配置管理</el-tab-pane>
|
|
|
- <el-tab-pane label="角色管理" name="third">角色管理</el-tab-pane>
|
|
|
- <el-tab-pane label="定时任务补偿" name="fourth">定时任务补偿</el-tab-pane>
|
|
|
- </el-tabs>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="参数配置">
|
|
|
- <m-table
|
|
|
- shadow="naver"
|
|
|
- clearHeader
|
|
|
- :items="formQuery.items"
|
|
|
- :headers="[
|
|
|
- { label: '参数', prop: 'label' },
|
|
|
- { label: '数值', prop: 'value' },
|
|
|
- { label: '操作', prop: 'actions' }
|
|
|
- ]"
|
|
|
- >
|
|
|
- <div class="text-center mt-3">
|
|
|
- <m-button icon="el-icon-plus" type="orange" size="small" @click="onAdd">添加一行</m-button>
|
|
|
- </div>
|
|
|
- <template #label="scope">
|
|
|
- <el-form-item
|
|
|
- :prop="`items.${scope.$index}.label`"
|
|
|
- :rules="{ required: true, message: '请输入参数名称', trigger: 'blur' }"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- size="small"
|
|
|
- v-model="formQuery.items[scope.$index].label"
|
|
|
- placeholder="请输入值"
|
|
|
- type="textarea"
|
|
|
- :autosize="{ minRows: 1, maxRows: 4}"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- </template>
|
|
|
- <template #value="scope">
|
|
|
- <el-form-item
|
|
|
- :prop="`items.${scope.$index}.value`"
|
|
|
- :rules="{ required: true, message: '请输入值', trigger: 'blur' }"
|
|
|
- >
|
|
|
- <el-input-number
|
|
|
- size="small"
|
|
|
- v-model="formQuery.items[scope.$index].value"
|
|
|
- placeholder="参数名称"
|
|
|
- ></el-input-number>
|
|
|
- </el-form-item>
|
|
|
- </template>
|
|
|
- <template #actions="scope">
|
|
|
- <m-button size="small" text type="danger" @click="onDelete(scope)">删除</m-button>
|
|
|
- </template>
|
|
|
- </m-table>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="计算公式">
|
|
|
- <m-card shadow="never">
|
|
|
- <el-tree
|
|
|
- :data="formula"
|
|
|
- node-key="uuid"
|
|
|
- ref="formulaTreeRefs"
|
|
|
- default-expand-all
|
|
|
- :expand-on-click-node="false"
|
|
|
+ <el-tabs v-model="editableTabsValue" type="card" editable @edit="onTabsEdit">
|
|
|
+ <el-tab-pane
|
|
|
+ v-for="tab in editableTabs"
|
|
|
+ :key="tab.name"
|
|
|
+ :label="tab.label"
|
|
|
+ :name="tab.name"
|
|
|
>
|
|
|
- <div class="custom-tree-node" slot-scope="{ data, node }">
|
|
|
- <el-input size="small" v-model="data.content" style="width: 400px" placeholder="描述文字"></el-input>
|
|
|
- <template v-if="node.level > 7">
|
|
|
- <el-dropdown @command="e => onCommon(e, data)">
|
|
|
- <m-button size="small" class="ml-3">
|
|
|
- 查看更多
|
|
|
- </m-button>
|
|
|
- <el-dropdown-menu slot="dropdown">
|
|
|
- <el-dropdown-item
|
|
|
- v-for="(item, index) in btnList"
|
|
|
- :key="item.label"
|
|
|
- :command="index"
|
|
|
- >{{ item.label }}</el-dropdown-item>
|
|
|
- </el-dropdown-menu>
|
|
|
- </el-dropdown>
|
|
|
- </template>
|
|
|
- <template v-else>
|
|
|
- <el-button
|
|
|
- v-for="item in btnList"
|
|
|
- :key="item.label"
|
|
|
- class="ml-3"
|
|
|
- size="small"
|
|
|
- @click="item.click(data)">
|
|
|
- {{ item.label }}
|
|
|
- </el-button>
|
|
|
- </template>
|
|
|
- </div>
|
|
|
- </el-tree>
|
|
|
- </m-card>
|
|
|
+ <SalarySolutionRulesEdit :formula="formula"></SalarySolutionRulesEdit>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</m-dialog>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import SalarySolutionRulesEdit from './salarySolutionRulesEdit.vue'
|
|
|
import {
|
|
|
saveSolution,
|
|
|
getConfigPage,
|
|
@@ -110,29 +31,28 @@ import {
|
|
|
|
|
|
export default {
|
|
|
name: 'salary-solution-rules',
|
|
|
+ components: {
|
|
|
+ SalarySolutionRulesEdit
|
|
|
+ },
|
|
|
data () {
|
|
|
return {
|
|
|
- btnList: [
|
|
|
- { label: '同级追加', click: this.onInsertAfter },
|
|
|
- { label: '插入下一级', click: this.onAppend },
|
|
|
- { label: '删除', click: this.onRemove }
|
|
|
+ editableTabsValue: 1,
|
|
|
+ editableTabs: [
|
|
|
+ { label: '分类1', name: 1, content: null }
|
|
|
],
|
|
|
- formQuery: {
|
|
|
- items: []
|
|
|
- },
|
|
|
formula: [
|
|
|
{
|
|
|
uuid: '1',
|
|
|
content: null
|
|
|
}
|
|
|
],
|
|
|
- headers: [
|
|
|
- { label: '启用', prop: 'status', width: 80 },
|
|
|
- { label: '参数名称', prop: 'name', align: 'left' },
|
|
|
- { label: '数值', prop: 'value' }
|
|
|
- ],
|
|
|
+ // headers: [
|
|
|
+ // { label: '启用', prop: 'status', width: 80 },
|
|
|
+ // { label: '参数名称', prop: 'name', align: 'left' },
|
|
|
+ // { label: '数值', prop: 'value' }
|
|
|
+ // ],
|
|
|
itemData: {},
|
|
|
- options: [],
|
|
|
+ // options: [],
|
|
|
loading: false,
|
|
|
categories: [], // 所有分类
|
|
|
allParams: [], // 所有参数
|
|
@@ -206,34 +126,6 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
- onAdd () {
|
|
|
- this.formQuery.items.push({ label: null, value: 0 })
|
|
|
- },
|
|
|
- onDelete (scope) {
|
|
|
- this.$confirm('确定要删除吗?', '提示').then(e => {
|
|
|
- this.formQuery.items.splice(scope.$index, 1)
|
|
|
- }).catch(_ => {})
|
|
|
- },
|
|
|
- onRemove (data) {
|
|
|
- this.$confirm('确定要删除吗?', '提示').then(e => {
|
|
|
- this.$refs.formulaTreeRefs.remove(data)
|
|
|
- }).catch(_ => {})
|
|
|
- },
|
|
|
- onInsertAfter (data) {
|
|
|
- this.$refs.formulaTreeRefs.insertAfter({
|
|
|
- uuid: Date.now(),
|
|
|
- content: null
|
|
|
- }, data)
|
|
|
- },
|
|
|
- onAppend (data) {
|
|
|
- this.$refs.formulaTreeRefs.append({
|
|
|
- uuid: Date.now(),
|
|
|
- content: null
|
|
|
- }, data)
|
|
|
- },
|
|
|
- onCommon (index, data) {
|
|
|
- this.btnList[index].click(data)
|
|
|
- },
|
|
|
async onSure () {
|
|
|
if (this.paramsSelection.length === 0) {
|
|
|
this.$message.error('请选择参数')
|
|
@@ -268,6 +160,9 @@ export default {
|
|
|
} catch (error) {
|
|
|
this.$message.error(error)
|
|
|
}
|
|
|
+ },
|
|
|
+ onTabsEdit (targetName, action) {
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|