81d2b140 by zhangmeng

看板

1 parent f75319fe
......@@ -6,13 +6,12 @@ const url = params.get('sid');
// let url = '5342b777-d86a-4967-a18b-7329a3fca56b'
console.log(url)
/**
* 用户信息
* @returns {*}
*/
export function getYS000() {
export function getYS000(url) {
return request({
method: 'post',
data: {
......@@ -27,7 +26,7 @@ export function getYS000() {
* 营业收入
* @returns {*}
*/
export function getYS001() {
export function getYS001(url) {
return request({
method: 'post',
data: {
......@@ -41,7 +40,7 @@ export function getYS001() {
* 应收余额
* @returns {*}
*/
export function getYS002() {
export function getYS002(url) {
return request({
method: 'post',
data: {
......@@ -55,7 +54,7 @@ export function getYS002() {
* 现金余额
* @returns {*}
*/
export function getYS003() {
export function getYS003(url) {
return request({
method: 'post',
data: {
......@@ -69,7 +68,7 @@ export function getYS003() {
* DSO天数
* @returns {*}
*/
export function getYS004() {
export function getYS004(url) {
return request({
method: 'post',
data: {
......@@ -83,7 +82,7 @@ export function getYS004() {
* (五)董事会得分、领导重点关注
* @returns {*}
*/
export function getYS005() {
export function getYS005(url) {
return request({
method: 'post',
data: {
......@@ -97,7 +96,7 @@ export function getYS005() {
* 左侧 应收账款
* @returns {*}
*/
export function getYS006() {
export function getYS006(url) {
return request({
method: 'post',
data: {
......@@ -111,7 +110,7 @@ export function getYS006() {
* 右侧 开票计划与执行
* @returns {*}
*/
export function getYS007() {
export function getYS007(url) {
return request({
method: 'post',
data: {
......@@ -126,7 +125,7 @@ export function getYS007() {
* 右侧 回款
* @returns {*}
*/
export function getYS008() {
export function getYS008(url) {
return request({
method: 'post',
data: {
......@@ -140,7 +139,7 @@ export function getYS008() {
* 右侧 右侧模块-逾期360天以上未开票
* @returns {*}
*/
export function getYS009() {
export function getYS009(url) {
return request({
method: 'post',
data: {
......
import { createApp } from 'vue'
import {createApp} from 'vue'
import Cookies from 'js-cookie'
......@@ -10,7 +10,7 @@ import directive from './directive' // directive
// 注册指令
import plugins from './plugins' // plugins
import { download } from '@/utils/request'
import {download} from '@/utils/request'
// svg图标
import 'virtual:svg-icons-register'
......@@ -20,10 +20,19 @@ import elementIcons from '@/components/SvgIcon/svgicon'
// import './permissionPc' // permission control
import * as socket from './utils/sockets'
import { useDict } from '@/utils/dict'
import { getConfigKey, updateConfigByKey } from '@/api/system/config'
import { parseTime, resetForm, addDateRange, handleTree, selectDictLabel, selectDictLabels, fillImgUrl, downloadFile } from '@/utils/ruoyi'
import { CountDown } from 'vant'
import {useDict} from '@/utils/dict'
import {getConfigKey, updateConfigByKey} from '@/api/system/config'
import {
parseTime,
resetForm,
addDateRange,
handleTree,
selectDictLabel,
selectDictLabels,
fillImgUrl,
downloadFile
} from '@/utils/ruoyi'
import {CountDown} from 'vant'
import 'vant/lib/index.css'
import 'flag-icon-css/css/flag-icons.css'
import Particles from 'vue3-particles'
......@@ -47,7 +56,6 @@ import TreeSelect from '@/components/TreeSelect'
import DictTag from '@/components/DictTag'
import draggable from 'vuedraggable'
import VueVideoPlayer from '@videojs-player/vue'
......@@ -58,7 +66,7 @@ import router from './routerPc/index'
import localeCn from 'element-plus/es/locale/lang/zh-cn' // 中文语言
import localeEn from 'element-plus/es/locale/lang/en'
import DataV, { setClassNamePrefix } from 'datav-vue3'
import DataV, {setClassNamePrefix} from 'datav-vue3'
import {useStorage} from "@vueuse/core/index";
......@@ -68,7 +76,7 @@ import 'fullpage.js/dist/fullpage.min.css'
// import VueRouterTransition from 'vue-router-transition'
const language= useStorage('language',0)
const language = useStorage('language', 0)
const app = createApp(App)
// 全局方法挂载
......@@ -123,11 +131,10 @@ app.use(elementIcons)
app.use(CountDown)
app.use(Particles)
app.use(VueFullPage)
app.use(DataV, { classNamePrefix: 'dv-' })
app.use(DataV, {classNamePrefix: 'dv-'})
// app.use(Vcode)
// app.use(VueRouter);
// app.use(VueRouterTransition);
......@@ -137,7 +144,6 @@ app.use(VueVideoPlayer)
directive(app)
// 修改 el-dialog 默认点击遮照为不关闭
app._context.components.ElDialog.props.closeOnClickModal.default = false
......@@ -146,3 +152,6 @@ app.mount('#app')
if (process.env.NODE_ENV !== 'development') {
// disorderCopy()
}
console.log(1234)
\ No newline at end of file
......
......@@ -2,13 +2,13 @@
<div class="main">
<el-row class="w100">
<el-col :span="type=='是'?8:12">
<left-page/>
<left-page :type="type" :url="result"/>
</el-col>
<el-col v-if="type=='是'" :span="8">
<center-page :type="type=='是'"/>
<center-page :type="type=='是'" :url="result"/>
</el-col>
<el-col :span="type=='是'?8:12">
<right-page/>
<right-page :type="type" :url="result"/>
</el-col>
</el-row>
</div>
......@@ -20,15 +20,24 @@ import LeftPage from "@/viewsPc/vip/leftPage"
import CenterPage from "@/viewsPc/vip/centerPage"
import RightPage from "@/viewsPc/vip/rightPage"
import {getYS000} from '@/api/server.js'
import {ref} from 'vue'
import {ref, onMounted} from 'vue'
const type = ref('否')
// url.value = window.location.host + '/pc.html#/match/list/'
handelGetYS000()
// url.value = window.location.href
const url = ref('http://192.168.1.152:8899/login/sid=5342b777-d86a-4967-a18b-7329a3fca56b#/')
const result = ref()
result.value = url.value?.split('=')[1]?.split('#')[0];
onMounted(() => {
console.log(result.value)
if (result.value) handelGetYS000()
})
async function handelGetYS000() {
const res = await getYS000()
const res = await getYS000(result.value)
type.value = res.data?.IFBASE || '否'
}
......
......@@ -94,7 +94,7 @@ import {autoToolTip} from "@/plugins/auto-toolTip";
import ScrollingData from './scrollingData.vue'
import * as echarts from "echarts";
import * as api from "@/apiPc/common"
import {onMounted, ref} from 'vue'
import {onMounted, ref, computed} from 'vue'
import {dayjs} from 'element-plus'
import {getYS001, getYS002, getYS003, getYS004, getYS005} from '@/api/server.js'
......@@ -103,8 +103,14 @@ const props = defineProps({
type: Boolean,
default: false
},
url: {
type: String,
default: undefined
}
})
const url = computed(() => props.url)
const zhuRef1 = ref(null)
const zhuRef2 = ref(null)
const zhuRef3 = ref(null)
......@@ -140,9 +146,8 @@ let total = 0
let intervalA = null
onMounted(() => {
debugger
if (props.type) {
init()
if (url.value) init()
window.addEventListener('resize', handleResize);
}
......@@ -174,7 +179,7 @@ const init = () => {
}
async function handelGetYS001() {
const res = await getYS001()
const res = await getYS001(url.value)
resYear1.value = res.data.yeargroup
handelBing1(res.data.yeargroup[0], res.data.yeargroup[1])
handelZhu1(res.data.yeargroup[0], res.data.yeargroup[1])
......@@ -182,7 +187,7 @@ async function handelGetYS001() {
}
async function handelGetYS002() {
const res = await getYS002()
const res = await getYS002(url.value)
resYear2.value = res.data.yeargroup
handelBing2(res.data.yeargroup[0], res.data.yeargroup[1])
handelZhu2(res.data.yeargroup[0], res.data.yeargroup[1])
......@@ -190,7 +195,7 @@ async function handelGetYS002() {
}
async function handelGetYS003() {
const res = await getYS003()
const res = await getYS003(url.value)
resYear3.value = res.data.yeargroup
handelBing3(res.data.yeargroup[0], res.data.yeargroup[1])
handelZhu3(res.data.yeargroup[0], res.data.yeargroup[1])
......@@ -198,7 +203,7 @@ async function handelGetYS003() {
}
async function handelGetYS004() {
const res = await getYS004()
const res = await getYS004(url.value)
let arrList = res.data.blockgroup
// let arrList = [
// {
......@@ -300,7 +305,7 @@ async function handelGetYS004() {
}
async function handelGetYS005() {
const res = await getYS005()
const res = await getYS005(url.value)
form.value = res.data
}
......
......@@ -61,12 +61,21 @@
</template>
<script setup>
import {onMounted, ref, onUnmounted} from 'vue'
import {onMounted, ref, onUnmounted, computed} from 'vue'
import {autoToolTip} from "@/plugins/auto-toolTip";
import * as echarts from "echarts";
import * as api from "@/apiPc/common"
import {getYS006} from '@/api/server.js'
const props = defineProps({
url: {
type: String,
default: undefined
},
})
const url = computed(() => props.url)
const zhuRef = ref(null)
const lineRef = ref(null)
const payeeRef = ref(null)
......@@ -103,9 +112,8 @@ let chartC
let intervalA = null;
onMounted(() => {
// init()
window.addEventListener('resize', handleResize);
init()
if (url.value) init()
// handelGetYS006()
// setA()
// setB()
......@@ -113,7 +121,7 @@ onMounted(() => {
})
async function handelGetYS006() {
const res = await getYS006()
const res = await getYS006(url.value)
list.value = res.data.baselist
set1.value = []
set2.value = []
......
......@@ -60,12 +60,21 @@
</template>
<script setup>
import {onMounted, onUnmounted, ref} from 'vue'
import {onMounted, onUnmounted, computed, ref} from 'vue'
import {getYS007, getYS008, getYS009} from '@/api/server.js'
import {autoToolTip} from "@/plugins/auto-toolTip";
import * as echarts from "echarts";
import * as api from "@/apiPc/common"
const props = defineProps({
url: {
type: String,
default: undefined
},
})
const url = computed(() => props.url)
const zhuRef = ref(null)
const lineRef = ref(null)
const overdueRef = ref(null)
......@@ -207,7 +216,7 @@ const list8 = ref([
const list7 = ref([])
const list7Y = ref([])
const select7 = ref([])
const BC = ref()
let chartA
let chartB
......@@ -256,7 +265,7 @@ let color4 = {
}
onMounted(() => {
init()
if (url.value) init()
window.addEventListener('resize', handleResize);
// handelGetYS007()
// handelGetYS008()
......@@ -274,8 +283,9 @@ const init = () => {
}
async function handelGetYS007() {
const res = await getYS007()
const res = await getYS007(url.value)
list7.value = res.data.list
BC.value = res.data.BC * 100 || 0
list7.value.sort((a, b) => a.EXERATIO - b.EXERATIO);
list7Y.value = []
select7.value = []
......@@ -291,20 +301,20 @@ async function handelGetYS007() {
})
arr1.push({
value: Math.round(val.PLANCOST / 10000),
itemStyle: val.EXERATIO * 100 >= 90 ? color1 : color3,
itemStyle: val.EXERATIO * 100 >= BC.value ? color1 : color3,
name: (val.EXERATIO * 100).toFixed() + '%',
})
arr2.push({
value: Math.round(val.EXECOST / 10000),
name: (val.EXERATIO * 100).toFixed() + '%',
itemStyle: val.EXERATIO * 100 >= 90 ? color2 : color4
itemStyle: val.EXERATIO * 100 >= BC.value ? color2 : color4
})
arr3.push(val.EXERATIO)
}
const firstAbove = list7Y.value.find(v => v.name >= 90);
setA(list7Y.value, arr1, arr2, arr3, firstAbove.value)
const firstAbove = list7Y.value.find(v => v.name >= BC.value);
setA(list7Y.value, arr1, arr2, arr3, firstAbove.value, BC.value)
}
......@@ -324,23 +334,23 @@ function handelSelect7() {
arr1.push({
value: Math.round(val.PLANCOST / 10000),
name: (val.EXERATIO * 100).toFixed() + '%',
itemStyle: val.EXERATIO * 100 >= 90 ? color1 : color3
itemStyle: val.EXERATIO * 100 >= BC.value ? color1 : color3
})
arr2.push({
value: Math.round(val.EXECOST / 10000),
name: (val.EXERATIO * 100).toFixed() + '%',
itemStyle: val.EXERATIO * 100 >= 90 ? color2 : color4
itemStyle: val.EXERATIO * 100 >= BC.value ? color2 : color4
})
arr3.push(val.EXERATIO)
}
const firstAbove = list7Y.value.find(v => v.name >= 90);
const firstAbove = list7Y.value.find(v => v.name >= BC.value);
setA(list7Y.value, arr1, arr2, arr3, firstAbove.value)
setA(list7Y.value, arr1, arr2, arr3, firstAbove.value, BC.value)
}
async function handelGetYS008() {
const res = await getYS008()
const res = await getYS008(url.value)
list8.value = res.data.list
list8Y.value = []
month8.value = []
......@@ -385,7 +395,7 @@ function handelType8() {
}
async function handelGetYS009() {
const res = await getYS009()
const res = await getYS009(url.value)
list9.value = res.data.list
let arrY = []
let arr1 = []
......@@ -420,7 +430,7 @@ const getA = () => {
}
const setA = (arrY, arr1, arr2, arr3, markLineName) => {
const setA = (arrY, arr1, arr2, arr3, markLineName, BC) => {
chartA = echarts.init(zhuRef.value)
const option = {
tooltip: {
......@@ -583,7 +593,7 @@ const setA = (arrY, arr1, arr2, arr3, markLineName) => {
lineWidth: 2
},
label: {
formatter: '90%',
formatter: BC + '%',
position: 'end', // 可选值: 'start', 'middle', 'end'
distance: [-20, 40]
}
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!