diff --git a/package.json b/package.json
index 50a6916..9535e14 100644
--- a/package.json
+++ b/package.json
@@ -48,6 +48,7 @@
"mammoth": "^1.8.0",
"mitt": "^3.0.1",
"mockjs": "^1.1.0",
+ "monaco-editor": "^0.52.0",
"nprogress": "^0.2.0",
"pdfjs-dist": "2.11.338",
"pinia": "^2.1.7",
@@ -55,6 +56,7 @@
"qrcode": "^1.5.3",
"qs": "^6.11.2",
"sass": "^1.77.8",
+ "sql-formatter": "^15.4.5",
"url": "^0.11.3",
"vue": "3.3.4",
"vue-draggable-plus": "~0.4.1",
@@ -98,6 +100,7 @@
"js-cookie": "~3.0.5",
"less": "^4.2.0",
"lint-staged": "^14.0.1",
+ "monaco-editor-webpack-plugin": "^7.1.0",
"plop": "^4.0.0",
"postcss": "^8.4.31",
"postcss-html": "^1.5.0",
diff --git a/src/views/IndexProcess/SqlRule/SqlRule.vue b/src/views/IndexProcess/SqlRule/SqlRule.vue
index dcee983..5794456 100644
--- a/src/views/IndexProcess/SqlRule/SqlRule.vue
+++ b/src/views/IndexProcess/SqlRule/SqlRule.vue
@@ -1,5 +1,5 @@
diff --git a/src/views/IndexProcess/SqlRule/components/SetParams.vue b/src/views/IndexProcess/SqlRule/components/SetParams.vue
index fcf12b1..aaacc9d 100644
--- a/src/views/IndexProcess/SqlRule/components/SetParams.vue
+++ b/src/views/IndexProcess/SqlRule/components/SetParams.vue
@@ -89,11 +89,23 @@ const formSchema = reactive([
const { formRegister, formMethods } = useForm()
const { setValues,getFormData } = formMethods
+
+
+let searchParam = reactive({
+ paramsType:"filedName",//参数类型
+ searchText:"",//参数名称
+})
+let filterList = reactive([]);//当前表格的列项
+let filterListTemp = reactive([]);//当前表格的列项Temp
+let idsList = reactive([]);//选中的表格项
+let ColumnStatus = ref(false);
+
watch(
() => props.ruleInfo,
(ruleInfo) => {
- if (!ruleInfo) return
- setValues(ruleInfo)
+ if (!ruleInfo || !ruleInfo.paramsDefs) return
+ filterList = reactive(ruleInfo.paramsDefs);
+ filterListTemp = reactive(ruleInfo.paramsDefs);
},
{
deep: true,
@@ -101,14 +113,6 @@ watch(
}
)
-let searchParam = reactive({
- paramsType:"filedName",//参数类型
- searchText:"",//参数名称
-})
-let filterList = reactive([]);//当前表格的列项
-let filterListTemp = reactive([]);//当前表格的列项Temp
-let idsList = reactive([]);//选中的表格项
-let ColumnStatus = ref(false);
//表格的信息多选
const onSelectionChange = (ids)=>{
console.log(ids,"多选的ids信息");
@@ -185,11 +189,15 @@ const filterTableList = ()=>{
//提交当前参数信息界面的信息
const submit = ()=>{
- return {paramsDefs:filterList};
+ return {ruleJson:{
+ dataSourceId:'',
+ paramsDefs:filterList
+ }};
}
defineExpose({
submit
})
+
@@ -239,7 +247,7 @@ defineExpose({
-
+
diff --git a/src/views/IndexProcess/constants.ts b/src/views/IndexProcess/constants.ts
index 29229f1..d143092 100644
--- a/src/views/IndexProcess/constants.ts
+++ b/src/views/IndexProcess/constants.ts
@@ -1,5 +1,6 @@
//指标加工规则的类型信息
export const RULE_TYPE_LIST = [
+ //改编vue3.0的一套
// {
// value: '0',
// label: '指标规则',
@@ -15,6 +16,23 @@ export const RULE_TYPE_LIST = [
// label: '存储过程规则',
// name:'PureSqlRule'
// }
+
+ //原有react对应的
+ // {
+ // value: '0',
+ // label: '指标规则',
+ // name:'sql'
+ // },
+ // {
+ // value: '1',
+ // label: 'SQL规则',
+ // name:'pureSql'
+ // },
+ // {
+ // value: '2',
+ // label: '存储过程规则',
+ // name:'procedure'
+ // }
]
//规则周期
diff --git a/src/views/dataset/RepSetRule/RepSetRule.vue b/src/views/dataset/RepSetRule/RepSetRule.vue
index 8fc95ff..767fb9e 100644
--- a/src/views/dataset/RepSetRule/RepSetRule.vue
+++ b/src/views/dataset/RepSetRule/RepSetRule.vue
@@ -158,7 +158,7 @@ const tableColumns = reactive([
default: (data: any) => {
return (
<>
- AddAction(data.row.ruleClass, 'edit',data.row)}>
+ AddAction(data.row.ruleClass,'edit',data.row)}>
{t('tableDemo.edit')}
{
const dialogVisible = ref(false)
const dialogTitle = ref('')
-const currentRow = ref()
-const actionType = ref('')
+let currentRow = ref()
+let actionType = ref('')
const writeRef = ref>()
let RuleType = ref('');
const AddAction = (ruleType: string,actiontype: string,currentrow) => {
+ console.log(currentrow,"currentRow信息");
RuleType.value = ruleType;
dialogTitle.value = actiontype=='add'?`新增规则`:`编辑规则`;
currentRow.value = currentrow;
@@ -342,7 +343,7 @@ const exportExcel = async () => {
:current-row="currentRow"
:action-type="actionType"
:rule-type="RuleType"
- @close-dialog="dialogVisible=false;getList()"
+ @close-dialog="dialogVisible=false;getList();"
/>
\ No newline at end of file
diff --git a/src/views/dataset/RepSetRule/components/Write.vue b/src/views/dataset/RepSetRule/components/Write.vue
index 369647c..04049cf 100644
--- a/src/views/dataset/RepSetRule/components/Write.vue
+++ b/src/views/dataset/RepSetRule/components/Write.vue
@@ -22,15 +22,32 @@ const props = defineProps({
const ruleType = props.ruleType;//当前界面中的规则类型
let loading = ref(false);
let ruleInfo = ref({});
-// 查询单条信息
-if(props.actionType != 'add'){
- loading.value = true;
- queryRepSetRuleApi(props.currentRow.ruleCode).then(res=>{
- ruleInfo.value = res.body.result;
- loading.value = false;
- })
-}
+watch(
+ () => props.currentRow,
+ (currentRow) => {
+ if (!currentRow) return
+
+ // 查询单条信息
+ if(props.actionType != 'add'){
+ loading.value = true;
+ queryRepSetRuleApi(currentRow.ruleCode).then(res=>{
+ ruleInfo.value = res.body.result;
+ if(ruleInfo.value.ruleJson && typeof ruleInfo.value.ruleJson == 'string'){
+ ruleInfo.value.ruleJson = JSON.parse(ruleInfo.value.ruleJson);
+ ruleInfo.value.dataSourceId = ruleInfo.value.ruleJson.dataSourceId;
+ ruleInfo.value.paramsDefs = ruleInfo.value.ruleJson.paramsDefs;
+ }
+ console.log(ruleInfo.value);
+ loading.value = false;
+ })
+ }
+ },
+ {
+ deep: true,
+ immediate: true
+ }
+)
const emit = defineEmits(['closeDialog']);
const closeDialogVisible = () => {
emit('closeDialog')
@@ -50,7 +67,7 @@ const closeDialogVisible = () => {