田源
2023-12-14 d0b163b5f1114a93b5d0f04e77a00ed8adb91894
整合代码
已修改4个文件
118 ■■■■ 文件已修改
Source/UBCS-WEB/src/api/statistic/chart.js 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/Master/MasterTree.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/statistic/statisticPage.vue 69 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/api/statistic/chart.js
@@ -9,3 +9,19 @@
    params
  })
}
//统计分析保存
export const saveStatisticAnalysis = (data) => {
  return request({
    url: '/api/ubcs-system/statisticConfig/saveStatisticAnalysis',
    method: 'post',
    data:data
  })
}
//统计分析列表
export const getBtmAndChart = () => {
  return request({
    url: '/api/ubcs-system/statisticConfig/getBtmAndChartIds',
    method: 'get',
  })
}
Source/UBCS-WEB/src/components/Master/MasterTree.vue
@@ -188,7 +188,7 @@
          List.forEach(item => {
            let columnItem = {
              label: item.title,
              prop: item.field,
              prop: item.queryField,
              // type: this.columnType[item.type],
              sortable: item.sort,
              width: item.minWidth
Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
@@ -427,7 +427,8 @@
          }
          if (_index == 0) {
            this.keyWordFind = record.queryField
            this.keyWordFind = record.queryField;
            console.log(record)
          }
        })
        this.tableHeadFindDatas = newval;
@@ -1017,24 +1018,30 @@
    similarHandler() {
      if (this.selectRow.length <= 0) {
        this.$message.warning("请选择一条数据");
      } else if (this.selectRow.length > 1) {
        this.$message.warning("只能选择一条数据");
      } else {
        this.similarVisible = true;
        return;
      }
      if (this.selectRow.length > 1) {
        this.$message.warning("只能选择一条数据");
        return;
      }
      this.similarVisible = true;
    },
    //数据更改
    DataChange() {
      if (this.selectRow.length <= 0) {
        this.$message.warning("请选择一条数据");
      } else if (this.selectRow.length > 1) {
        this.$message.warning("只能选择一条数据");
      } else if (this.selectRow[0].lcstatus != "Released") {
        this.$message.warning("只有状态为已发布的数据才能进行数据更改");
      } else {
        this.DataVisible = true;
        this.rowOid = this.selectRow[0]['oid']
        return
      }
      if (this.selectRow.length > 1) {
        this.$message.warning("只能选择一条数据");
        return;
      }
      if (this.selectRow[0].lcstatus != "Released") {
        this.$message.warning("只有状态为已发布的数据才能进行数据更改");
        return;
      }
      this.DataVisible = true;
      this.rowOid = this.selectRow[0]['oid']
    },
    //增加保存
    AddSumbit(val) {
Source/UBCS-WEB/src/views/statistic/statisticPage.vue
@@ -26,18 +26,16 @@
        <el-table-column
          align="center"
          label="主数据库名"
          prop="menuName">
          prop="menuName"
          width="300">
        </el-table-column>
        <el-table-column
          align="center"
          label="类型"
          prop="codeType">
          <template slot-scope="{ row }">
            <el-select v-model="row.codeType" placeholder="请选择图表类型">
              <el-option label="折线图" value="0"></el-option>
              <el-option label="饼状图" value="1"></el-option>
              <el-option label="柱状图" value="2"></el-option>
              <el-option label="堆叠折线图" value="3"></el-option>
            <el-select v-model="row.codeType" :multiple="true" limit="4" placeholder="请选择图表类型" style="width: 400px">
              <el-option v-for="(item) in selectList" :label="item.label" :value="item.value"></el-option>
            </el-select>
          </template>
        </el-table-column>
@@ -66,7 +64,7 @@
import pieChart from "../../components/StatisticsComponent/pieChart"
import ColumnarChart from "../../components/StatisticsComponent/ColumnarChart"
import mixCart from "../../components/StatisticsComponent/mixCart"
import {getStatisticAnalysis} from "@/api/statistic/chart"
import {getStatisticAnalysis,getBtmAndChart,saveStatisticAnalysis} from "@/api/statistic/chart"
import {getList} from "@/api/system/statistic";
export default {
@@ -79,6 +77,25 @@
  name: "statisticPage",
  data() {
    return {
      selectValue: '',
      selectList: [
        {
          label: '折线图',
          value: '0'
        },
        {
          label: '饼状图',
          value: '1'
        },
        {
          label: '柱状图',
          value: '2'
        },
        {
          label: '堆叠折线图',
          value: '3'
        }
      ],
      menuList: [],
      dataKeyList: [],
      addVisible: false,
@@ -92,13 +109,27 @@
    }
  },
  created() {
    this.getMasterList()
    this.getMasterList();
    this.getEcharts()
  },
  methods: {
    getMasterList() {
      const userId = localStorage.getItem('userId');
      getList({userId: userId}).then(res => {
        this.tableData = res.data.data;
      }).catch(error=>{
        this.$message.error(error)
      })
    },
    getEcharts(){
      getBtmAndChart().then(res=>{
        const btmNames = Object.keys(res.data.data).join(',');
        console.log(btmNames);
        if(btmNames){
          getStatisticAnalysis({btmNames}).then(item=>{
            console.log(item)
          })
        }
      })
    },
    //新增
@@ -110,7 +141,7 @@
      this.addVisible = false;
    },
    //保存
    addSaveHandler() {
     async addSaveHandler() {
      if (this.selectData.length <= 0) {
        this.$message.warning('请至少选择一条数据!');
        return;
@@ -121,17 +152,19 @@
        return;
      }
      this.dataKeyList = this.selectData.map(obj => obj.code)
      const btmName = this.dataKeyList.join(",");
      if (btmName) {
        getStatisticAnalysis({btmNames: btmName}).then(res => {
      const newArray = this.selectData.map(item => {
        return {
          btmname: item.code,
          chartIds: item.codeType.join(',')
        }
      })
       saveStatisticAnalysis(newArray).then(res => {
          this.menuList = res.data.data;
          this.nextSave();
          this.$message.success('保存成功')
        }).catch(error=>{
          this.$message.error(error)
        });
      } else {
        this.$message.warning('请选择数据!')
      }
    },
    nextSave() {
      const typeList = {
@@ -148,9 +181,7 @@
        const dataKey = typeList[item.codeType];
        if (dataKey) {
          this[dataKey].push(item);
          this[dataKey].forEach(res=>{
            console.log('this[dataKey]',this[dataKey])
            console.log('res',res)
          this[dataKey].forEach(res => {
          })
          hasValidData = true;
        }