Ver Fonte

Merge branch 'master' into 'master'

指标配置问题修复

See merge request lighter/vue-intergration-platform!66
huangshuhua há 1 ano atrás
pai
commit
d8b45007fd

+ 33 - 33
src/views/target-management/target-comm/SqlEditPage.vue

@@ -147,7 +147,7 @@ const start = formatDate(seltYearAndNowLast[0].value[0])
 const end = formatDate(seltYearAndNowLast[1].value[1])
 const targetFormRef = ref<FormInstance>()
 const sqlFormRef = ref<FormInstance>()
-let sqlForm = reactive({
+let sqlForm = ref({
     id: '', // 指标编码
     name: '', // 指标名称
     pid: '', // 父级编码
@@ -176,38 +176,38 @@ const props = defineProps({
 
 onMounted(() => {
     nextTick(() => {
-        sqlForm = props.sqlEditData
-        sqlForm.startTime = start + ' 00:00:00'
-        sqlForm.endTime = end + ' 23:59:59'
+        sqlForm.value = props.sqlEditData as any
+        sqlForm.value.startTime = start + ' 00:00:00'
+        sqlForm.value.endTime = end + ' 23:59:59'
         // 如果存在指标报表分子分母id,则查询分子分母指标报表信息
-        if (sqlForm.childId || sqlForm.momId) {
-            selectTargetSql(sqlForm)
+        if (sqlForm.value.childId || sqlForm.value.momId) {
+            selectTargetSql(sqlForm.value)
                 .then((res: any) => {
                     let childRef = res.reportChild
                     let momRef = res.reportMom
                     if (childRef) {
-                        sqlForm.childId = childRef.reportId
-                        sqlForm.childGather = childRef.gatherSql
-                        sqlForm.childName = childRef.reportName
-                        sqlForm.calcChild = childRef.baseSql
+                        sqlForm.value.childId = childRef.reportId
+                        sqlForm.value.childGather = childRef.gatherSql
+                        sqlForm.value.childName = childRef.reportName
+                        sqlForm.value.calcChild = childRef.baseSql
                     }
                     if (momRef) {
-                        sqlForm.momId = momRef.reportId
-                        sqlForm.momGather = momRef.gatherSql
-                        sqlForm.momName = momRef.reportName
-                        sqlForm.calcMom = momRef.baseSql
+                        sqlForm.value.momId = momRef.reportId
+                        sqlForm.value.momGather = momRef.gatherSql
+                        sqlForm.value.momName = momRef.reportName
+                        sqlForm.value.calcMom = momRef.baseSql
                     }
                     if (childRef && !momRef) {
-                        sqlForm.momId = '/'
-                        sqlForm.momGather = '/'
-                        sqlForm.momName = '/'
-                        sqlForm.calcMom = '/'
+                        sqlForm.value.momId = '/'
+                        sqlForm.value.momGather = '/'
+                        sqlForm.value.momName = '/'
+                        sqlForm.value.calcMom = '/'
                     }
                     if (!childRef && momRef) {
-                        sqlForm.childId = '/'
-                        sqlForm.childGather = '/'
-                        sqlForm.childName = '/'
-                        sqlForm.calcChild = '/'
+                        sqlForm.value.childId = '/'
+                        sqlForm.value.childGather = '/'
+                        sqlForm.value.childName = '/'
+                        sqlForm.value.calcChild = '/'
                     }
                 });
         }
@@ -216,9 +216,9 @@ onMounted(() => {
 
 const resetForm = (formEl: FormInstance | undefined) => {
     if (!formEl) return
-    sqlForm.childResult = ''
-    sqlForm.momResult = ''
-    sqlForm.calcResult = ''
+    sqlForm.value.childResult = ''
+    sqlForm.value.momResult = ''
+    sqlForm.value.calcResult = ''
 }
 
 const rules = ref<FormRules>({
@@ -257,7 +257,7 @@ const rules = ref<FormRules>({
 const submitForm = async (formEl: FormInstance | undefined) => {
     if (!formEl) return
 
-    if (sqlForm.childId.length > 1 && !sqlForm.childId.startsWith('zb_')) {
+    if (sqlForm.value.childId.length > 1 && !sqlForm.value.childId.startsWith('zb_')) {
         ElMessage({
             type: "info",
             message: '分子指标ID请以zb_开头',
@@ -267,7 +267,7 @@ const submitForm = async (formEl: FormInstance | undefined) => {
         return false;
     }
 
-    if (sqlForm.momId.length > 1 && !sqlForm.momId.startsWith('zb_')) {
+    if (sqlForm.value.momId.length > 1 && !sqlForm.value.momId.startsWith('zb_')) {
         ElMessage({
             type: "info",
             message: '分母指标ID请以zb_开头',
@@ -279,7 +279,7 @@ const submitForm = async (formEl: FormInstance | undefined) => {
 
     await formEl.validate((valid: boolean, field: any) => {
         if (valid) {
-            targetSqlSave(sqlForm)
+            targetSqlSave(sqlForm.value)
                 .then((res: any) => {
                     let r = JSON.parse(JSON.stringify(res))
                     if (r.cg) {
@@ -327,7 +327,7 @@ const sqlExecute = (formEl: FormInstance | undefined) => {
     // 验证是否填写完整
     formEl.validate((valid: boolean, field: any) => {
         if (valid) {
-            if (sqlForm.calcChild === '') {
+            if (sqlForm.value.calcChild === '') {
                 ElMessage({
                     type: "info",
                     message: "未编写sql,请确认!",
@@ -337,12 +337,12 @@ const sqlExecute = (formEl: FormInstance | undefined) => {
                 return
             }
 
-            targetSqlExecute(sqlForm)
+            targetSqlExecute(sqlForm.value)
                 .then((res: any) => {
                     let r = JSON.parse(JSON.stringify(res))
-                    sqlForm.childResult = r.r1
-                    sqlForm.momResult = r.r2
-                    sqlForm.calcResult = r.r3
+                    sqlForm.value.childResult = r.r1
+                    sqlForm.value.momResult = r.r2
+                    sqlForm.value.calcResult = r.r3
 
                 });
         } else {

+ 4 - 0
src/views/target-management/target-dict/TargetDictConfig.vue

@@ -273,6 +273,8 @@ let sqlEditData = ref({
   sort: '', // 指标序号
   calcChild: '', // 计算分子sql
   calcMom: '', // 计算分母sql
+  childId: '', // 分子sql的报表id
+  momId: '', // 分母sql的报表id
 })
 
 const queryParam = reactive({
@@ -626,6 +628,8 @@ const sqlEdit = (formEl: FormInstance | undefined) => {
   sqlEditData.value.name = ruleForm.value.name
   sqlEditData.value.calcChild = ruleForm.value.calcChild
   sqlEditData.value.calcMom = ruleForm.value.calcMom
+  sqlEditData.value.childId = ruleForm.value.childId
+  sqlEditData.value.momId = ruleForm.value.momId
   sqlEditData.value.sort = ruleForm.value.sort
 
 }

+ 6 - 4
src/views/target-management/target-dict/TargetReportConfig.vue

@@ -174,6 +174,7 @@ import type { FormInstance, FormRules } from 'element-plus'
 import { selectReportDictTree, selectReportDict, selectReportType, reportSqlExecute, selectReportLevel, saveReportBaseInfo, selectReportLevelDict } from '../../../api/target-management/report-dict'
 import ReportLevel from '../target-comm/ReportLevel.vue'
 import { queryDept } from '../../../api/public-api'
+import { clone } from '../../../utils/clone'
 
 const reportTreeData = ref({
     data: [{}],
@@ -299,7 +300,6 @@ const reportTypeQt = () => {
 const levelTypeQt = () => {
     selectReportLevelDict()
         .then((res: any) => {
-            console.log(res)
             levelList.value = res
         });
 }
@@ -473,9 +473,11 @@ const sqlExecute = (formEl: FormInstance | undefined) => {
     // sql测试
     sqlForm.gatherSql = reportForm.value.gatherSql
     sqlForm.baseSql = reportForm.value.baseSql
-    sqlForm.startTime = sqlForm.startTime + ' 00:00:00'
-    sqlForm.endTime = sqlForm.endTime + ' 23:59:59'
-    reportSqlExecute(sqlForm)
+
+    let qData = clone(sqlForm)
+    qData.startTime = sqlForm.startTime + ' 00:00:00'
+    qData.endTime = sqlForm.endTime + ' 23:59:59'
+    reportSqlExecute(qData)
         .then((res: any) => {
             let r = JSON.parse(JSON.stringify(res))
             sqlForm.calcResult = r.r1