zhuoyuan.wang
2024-06-19 15ebe96f28cadec6a726c5324593a40bbf56205f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<template>
  <rule-field-rule-page v-bind="ruleFieldRulePageProps">
    <template #header-button="scope">
      <el-button
        icon="Plus"
        size="small"
        type="primary"
        @click="onDialog(scope.selected.tab,{})">
        新增
      </el-button>
      <el-button
        size="small"
        type="primary"
        icon="Edit"
        :disabled="!scope.selected.edit?.id"
        @click="onDialog(scope.selected.edit)">
        编辑
      </el-button>
      <el-button
        :disabled="!scope.selected.edit?.id"
        size="small"
        type="danger"
        icon="Delete"
        @click="onDelete(scope.selected.edit)"
      >
      </el-button>
    </template>
    <template #properties="scope">
      <properties-table v-bind="propertiesTableProps"/>
    </template>
  </rule-field-rule-page>
  <properties-dialog v-bind="propertiesDialogProps"/>
</template>
 
<script setup name="ruleAgreement">
 
import RuleFieldRulePage from '@/views/rule/components/RuleFieldRulePage';
import PropertiesTable from "./PropertiesTable";
import PropertiesDialog from "./PropertiesDialog";
import {modal} from "@/plugins";
import {useEntityStore} from "@/store/modules";
 
const entityStore = useEntityStore();
 
const ruleFieldRulePageRef = ref();
 
const ruleFieldRulePageProps = {
  ref: ruleFieldRulePageRef,
  typeList: ['agm_agreement_property'],
  tabList: [
    {name: 'properties', label: '参数配置'}
  ],
}
 
const propertiesTableRef = ref();
 
const propertiesTableProps = {
  ref: propertiesTableRef,
  subCurrent(row) {
    ruleFieldRulePageRef.value.tabAssignSelected(row);
  },
};
 
 
const propertiesDialogRef = ref();
 
const propertiesDialogProps = {
  ref: propertiesDialogRef,
  subReload(bool) {
    propertiesTableRef.value.onReload(bool)
  }
}
 
const onDialog = (row) => {
  propertiesDialogRef.value.onOpen(row);
}
 
const onDelete = async (row) => {
  await modal.confirm("是否确认删除?");
  await entityStore.dataDelete({
    dataName: 'agm_agreement_property',
    id: row.id
  });
  propertiesTableRef.value.onReload(false);
}
</script>