From 20068a4e695c4eae6361c567fa4b410460dec4dc Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 19 十月 2023 11:09:48 +0800
Subject: [PATCH] 代码提交
---
Source/UBCS-WEB/src/views/wel/Statistic.vue | 256 ++++++++++++++++++++++++++++++++++-----------------
1 files changed, 171 insertions(+), 85 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/wel/Statistic.vue b/Source/UBCS-WEB/src/views/wel/Statistic.vue
index 0341d74..e94e248 100644
--- a/Source/UBCS-WEB/src/views/wel/Statistic.vue
+++ b/Source/UBCS-WEB/src/views/wel/Statistic.vue
@@ -1,102 +1,188 @@
<template>
- <div>
- <avue-data-box :option="option" :animation="true"></avue-data-box>
+ <div class="App" v-loading="this.loading">
+ <div style="display: flex; justify-content: flex-end;margin-bottom: 10px">
+ <el-button icon="el-icon-more" plain size="small" type="primary" @click="MoreHandler">鏇村</el-button>
+ </div>
+ <avue-data-box ref="dataBox" :animation="true" :option="option" ></avue-data-box>
+ <el-dialog :visible.sync="dialogTableVisible" append-to-body class="avue-dialog avue-dialog--top" title="涓绘暟鎹厤缃�"
+ top="0">
+ <avue-crud ref="crud"
+ v-model="Crud.form"
+ :data="Crud.data"
+ :option="Crud.option"
+ @selection-change="selectionChange">
+ </avue-crud>
+ <div slot="footer" class="dialog-footer">
+ <el-button plain type="primary" @click="SaveHandler">淇濆瓨</el-button>
+ </div>
+ </el-dialog>
</div>
</template>
<script>
-import {validatenull} from "@/util/validate";
-import {getList} from "@/api/system/statistic";
-import {flowRoute} from "@/util/flow";
-
+import {getList, save} from "@/api/system/statistic";
export default {
-name: "Statistic",
- data(){
- return {
- countByServer:true,
- // listMyTask:[]
- option: {
- span:6,
- data: [
- {
- click: this.handleItemAClick,
- title: '鐗╁搧涓绘暟鎹�',
- count: 1723,
- icon: 'iconfont iconicon_doc',
- color: 'rgb(49, 180, 141)',
- uiUrl: "/MasterData/items?id=wupin@name=鐗╁搧涓绘暟鎹�",
- countUrl:'priceIndexController/countNeedConfirmPlan'
- },
- {
- click: this.handleItemBClick,
- title: '浜哄憳涓绘暟鎹�',
- count: 1225,
- icon: 'iconfont iconicon_dispose',
- color: 'rgb(56, 161, 242)',
- uiUrl:'/MasterData/items?id=renyuan@@name=浜哄憳涓绘暟鎹�',
- countUrl:'priceIndexController/countPricingPlan'
- },
- {
- click: this.handleItemCClick,
- title: '涓婚搴撳畾涔�',
- count: 523,
- icon: 'el-icon-setting',
- color: 'rgb(117, 56, 199)',
- uiUrl:'/modeling/classifyTree',
- countUrl:'priceIndexController/countNeedFeedbackPlan'
- },
- {
- click: this.handleItemDClick,
- title: '渚涘簲鍟嗕富鏁版嵁',
- count: 0,
- icon: 'iconfont iconicon_work',
- color: 'rgb(255, 102, 51)',
- uiUrl:'/MasterData/items?id=gongyingshang@@name=渚涘簲鍟嗕富鏁版嵁',
- countUrl:'priceIndexController/countMyUnCreatePricePlan'
- },
- ]
- },
- }
+ name: "Statistic",
+ data() {
+ return {
+ loading:true,
+ Crud: {
+ form: '',
+ data: [],
+ option: {
+ calcHeight: 80,
+ tip: false,
+ searchShow: false,
+ addBtn: false,
+ columnBtn: false,
+ header: false,
+ menu: false,
+ border: true,
+ index: true,
+ selection: true,
+ column: [
+ {
+ label: "涓绘暟鎹悕绉�",
+ prop: "menuName",
+ },
+ {
+ label: "寰呭姙鏁版嵁",
+ prop: "mdmCount",
+ },
+ {
+ label: "icon鍥炬爣",
+ prop: "icon",
+ overHidden: true,
+ },
+ {
+ label: "璺敱鍦板潃",
+ prop: "menuRoute",
+ overHidden: true,
+ },
+ {
+ label: "code",
+ prop: "code",
+ overHidden: true,
+ },
+ ]
+ }
+ },
+ userId: '',
+ hexColor: '',
+ newData: [],
+ SelectRow: [],
+ countByServer: true,
+ dialogTableVisible: false,
+ // listMyTask:[]
+ option: {
+ span: 6,
+ data: []
+ },
+ }
},
created() {
- this.getList();
+ this.MasterGetList();
},
- computed(){
+ mounted() {
+ this.FontInfo()
+ },
+ computed() {
},
methods: {
- handleItemAClick() {
- this.$router.push({ path: "/MasterData/items?id=wupin@name=鐗╁搧涓绘暟鎹�"} );
- },
- handleItemBClick() {
- this.$router.push({ path: '/MasterData/items?id=renyuan@@name=浜哄憳涓绘暟鎹�'} );
- },
- handleItemCClick() {
- this.$router.push({ path: '/modeling/classifyTree'} );
- },
- handleItemDClick() {
- this.$router.push({ path: '/MasterData/items?id=gongyingshang@@name=渚涘簲鍟嗕富鏁版嵁'} );
- },
- getList() {
- // debugger
- Object.values(this.option.data).map(record => {
- record.count = record.count || 0;
- if (!this.countByServer) {
- // 鏄墠绔煡璇�
- getList(record.countUrl, {}).then(res => {
- // console.log('res',res)
- if (res.data.data.success) {
- record.count = res.data.data.obj;
- } else {
- record.count = 0;
- }
- });
- }
- return {
- ...record
- };
+ FontInfo(){
+ this.$nextTick(() => {
+ const dataFatherBox = this.$refs.dataBox.$el;
+ console.log(dataFatherBox);
+ this.$nextTick(() => {
+ setTimeout(() => {
+ //瀛椾綋
+ const info = dataFatherBox.querySelectorAll('.item-info .info');
+ //杈规
+ const items = dataFatherBox.querySelectorAll('.item');
+ // console.log('info', info);
+ info.forEach((info) => {
+ info.style.fontSize = '16px';
+ });
+ items.forEach((item) => {
+ item.style.border = '1px solid rgb(200, 200, 200, 1)';
+ });
+ this.loading=false;
+ }, 1000); // 寤惰繜1绉掓煡鎵緄nfo鍏冪礌
+ });
});
},
+ selectionChange(row) {
+ // console.log(row)
+ this.SelectRow = row;
+ },
+ SaveHandler() {
+ if (this.SelectRow.length <= 0) {
+ this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹紒')
+ return
+ }
+ let mdmNameList = [];
+ mdmNameList = this.SelectRow.map(item => {
+ return item.code
+ })
+ console.log(mdmNameList)
+ save(this.userId, mdmNameList).then(res => {
+ console.log(res)
+ if (res.data.code === 200) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ //娓呴櫎宸叉湁鏁扮粍涓璸ush鏁版嵁
+ this.option.data = [];
+ this.newData=[];
+
+ this.MasterGetList()
+ this.dialogTableVisible = false;
+ //瀛椾綋鍜岃竟妗嗛噸鏂板姞杞�
+ this.loading=true;
+ this.FontInfo()
+ }
+ })
+ },
+ MoreHandler() {
+ this.dialogTableVisible = true;
+ },
+ // 闅忔満鑹�
+ randomColor() {
+ const r = Math.floor(Math.random() * 256); // 鐢熸垚 0 鍒� 255 涔嬮棿鐨勯殢鏈烘暟
+ const g = Math.floor(Math.random() * 256);
+ const b = Math.floor(Math.random() * 256);
+ // 灏� RGB 鍊艰浆鎹负鍗佸叚杩涘埗琛ㄧず褰㈠紡
+ const hexColor = "#" + r.toString(16).padStart(2, '0') + g.toString(16).padStart(2, '0') + b.toString(16).padStart(2, '0');
+ return hexColor;
+ },
+ MasterGetList() {
+ this.userId = localStorage.getItem('userId');
+ getList({userId: this.userId}).then(res => {
+ res.data.data.filter(item => {
+ // console.log(item.icon)
+ if (item.isDefault === 1) {
+ this.hexColor = this.randomColor();
+ this.option.data.push({
+ click: (item) => {
+ this.$router.push({path: item.uiUrl});
+ },
+ title: item.menuName,
+ count: parseInt(item.mdmCount),
+ icon: item.icon,
+ code: item.code,
+ isDefault: item.isDefault,
+ color: this.hexColor,
+ uiUrl: item.menuRoute,
+ id: 'custom-title'
+ });
+ } else if (item.isDefault === 0) {
+ this.newData.push(item);
+ this.Crud.data = this.newData;
+ }
+ });
+ // console.log(this.option.data);
+ // console.log(this.newData);
+ });
+ }
}
}
</script>
--
Gitblit v1.10.0