Browse Source

接口相关

master
aBin 5 years ago
parent
commit
8fd75ca3e2
  1. 4
      .env.development
  2. 182
      src/components/Duration/Duration.js
  3. 8
      src/components/Duration/Duration.vue
  4. 2
      src/components/FastEd/FastEd.vue
  5. 3
      src/components/RFID/RFID.vue
  6. 290
      src/components/Statistics/Statistics.js
  7. 9
      src/components/Statistics/Statistics.vue
  8. 21
      src/config/api.js

4
.env.development

@ -1,8 +1,8 @@
VUE_APP_MODE=development
VUE_APP_NODE_ENV=development
VUE_APP_SCENE=greenvalley
VUE_APP_BASE_URL=http://www.sxwikionline.com/
VUE_APP_API_URL=http://www.sxwikionline.com/gateway
VUE_APP_BASE_URL=http://test.tall.wiki/
VUE_APP_API_URL=http://test.tall.wiki/gateway
VUE_APP_PROXY_URL=/gateway
VUE_APP_PUBLIC_PATH=/greenvalley
VUE_APP_MSG_URL=wss://test.tall.wiki/websocket/message/v4.0/ws

182
src/components/Duration/Duration.js

@ -1,85 +1,111 @@
var option = {
// title: {
// left: '10%',
// textStyle: {
// fontWeight: 'normal',
// color: '#fff', //标题颜色
// },
// text: '急救时长分析',
// },
tooltip: { trigger: 'axis' },
legend: {
x: 'center',
y: 'bottom',
data: ['我院记录', '国际水准', '当前数据'],
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
grid: {
left: '3%',
// right: '4%',
bottom: '10%',
containLabel: true,
import { getPointTime } from 'config/api';
const mixin = {
data() {
return {
pointTimeCurrentList: [],
pointTimeHospital: [],
pointTimeInternation: [],
};
},
xAxis: {
type: 'category',
boundaryGap: false,
data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'],
axisLabel: {
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
computed: {
option() {
return {
tooltip: { trigger: 'axis' },
legend: {
x: 'center',
y: 'bottom',
data: ['我院记录', '国际水准', '当前数据'],
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
grid: {
left: '3%',
// right: '4%',
bottom: '10%',
containLabel: true,
},
xAxis: {
type: 'category',
boundaryGap: false,
data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'],
axisLabel: {
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
},
yAxis: {
type: 'value',
name: '秒',
axisLabel: {
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
nameTextStyle: { color: '#ccc' },
splitLine: {
show: true,
lineStyle: {
type: 'dashed',
color: '#ccc',
},
},
},
series: [
{
name: '我院记录',
type: 'line',
stack: '总量',
symbolSize: 6,
// symbol: 'star',
data: this.pointTimeHospital,
color: 'rgb(18, 131, 227)',
},
{
name: '国际水准',
type: 'line',
stack: '总量',
symbolSize: 6,
data: this.pointTimeInternation,
color: 'rgb(30, 231, 231)',
},
{
name: '当前数据',
type: 'line',
stack: '总量',
symbolSize: 6,
data: this.pointTimeCurrentList,
color: 'rgb(227, 18, 187)',
},
],
};
},
},
yAxis: {
type: 'value',
name: '秒',
interval: 200,
axisLabel: {
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
nameTextStyle: { color: '#ccc' },
splitLine: {
show: true,
lineStyle: {
type: 'dashed',
color: '#ccc',
},
methods: {
async getData() {
try {
const params = { param: { id: 0 } };
const res = await getPointTime(params);
const { code, msg, data } = res.data;
if (code === 200) {
this.pointTimeCurrentList = data.pointTimeCurrentList;
this.pointTimeHospital = data.pointTimeHospital;
this.pointTimeInternation = data.pointTimeInternation;
} else {
console.log(msg);
}
} catch (error) {
console.log(error);
}
},
},
series: [
{
name: '我院记录',
type: 'line',
stack: '总量',
symbolSize: 6,
// symbol: 'star',
data: [120, 132, 101, 134, 90, 230, 210],
color: 'rgb(18, 131, 227)',
},
{
name: '国际水准',
type: 'line',
stack: '总量',
symbolSize: 6,
data: [220, 182, 191, 234, 290, 330, 310],
color: 'rgb(30, 231, 231)',
},
{
name: '当前数据',
type: 'line',
stack: '总量',
symbolSize: 6,
data: [150, 232, 201, 154, 190, 330, 410],
color: 'rgb(227, 18, 187)',
},
],
};
export default option;
export default mixin;

8
src/components/Duration/Duration.vue

@ -5,9 +5,10 @@
</div>
</template>
<script>
import option from './Duration.js';
import mixin from './Duration.js';
export default {
name: 'Duration',
mixins: [mixin],
data() {
return {
// msg: 'Welcome to Your Vue.js App',
@ -32,11 +33,12 @@ export default {
};
},
methods: {
drawLine() {
async drawLine() {
// domecharts
let myChart = this.$echarts.init(document.getElementById('Duration'));
//
myChart.setOption(option);
await this.getData();
myChart.setOption(this.option);
},
},
};

2
src/components/FastEd/FastEd.vue

@ -9,7 +9,7 @@
<div class="flex-1">{{ item.b }}</div>
<div class="flex-1">{{ item.c }}</div>
</div>
<div v-for="item in dataList" :key="item.b" style="height: 25%" class="flex-1 flex-row">
<div v-for="(item, index) in dataList" :key="index" style="height: 25%" class="flex-1 flex-row">
<div class="flex-1">{{ item.a }}</div>
<div class="flex-1">{{ item.b }}</div>
<div class="flex-1">{{ item.c }}</div>

3
src/components/RFID/RFID.vue

@ -77,7 +77,8 @@ export default {
// ball.classList = 'box';
ball.style.backgroundColor = randomColor();
// ball.style =
// 'width: 69px;height: 69px;line-height: 69px;text-align: center;font-size: 12px; color: #C8CED5; position: absolute;top: 100px; left: 200px;';
// 'width: 69px;height: 69px;line-height: 69px;text-align: center;font-size: 12px; color: #C8CED5;
// position: absolute;top: 100px; left: 200px;';
balls.push(ball);
}
}

290
src/components/Statistics/Statistics.js

@ -1,135 +1,177 @@
var option = {
tooltip: { trigger: 'axis' },
legend: [
{
x: 'center',
y: 'top',
data: ['本年', '去年'],
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
{
x: 'center',
y: 'bottom',
data: ['本年完成', '去年同期'],
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
],
xAxis: {
type: 'category',
data: ['01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月', '12月'],
axisLabel: {
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
import { selResult } from 'config/api';
const mixin = {
data() {
return {
sigleLast: [], // 去年柱形图
sigleNow: [], // 本年柱形图
sumLast: [], // 去年折线图
sumNow: [], // 本年折线图
};
},
yAxis: [
{
type: 'value',
interval: 200,
name: '人次',
axisTick: {
//y轴刻度线
show: false,
},
splitLine: {
show: true,
lineStyle: {
type: 'dashed',
color: '#666',
},
},
nameTextStyle: { color: '#ccc' },
axisLabel: {
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
},
{
type: 'value',
interval: 200,
name: '数量',
splitLine: {
show: true,
lineStyle: {
type: 'dashed',
color: '#666',
},
},
nameTextStyle: { color: '#ccc' },
axisLabel: {
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
},
],
series: [
{
name: '本年',
data: [120, 232, 301, 434, 590, 630, 720, 301, 434, 590, 630, 720],
type: 'line',
color: 'rgb(24, 144, 255)',
},
{
name: '去年',
data: [820, 932, 901, 934, 1290, 1330, 1320, 932, 901, 934, 1290, 1330],
type: 'line',
color: 'rgb(26, 235, 235)',
},
{
name: '本年完成',
data: [120, 232, 301, 434, 590, 630, 720, 232, 301, 434, 590, 630],
yAxisIndex: 1,
type: 'bar',
barWidth: '10%',
color: 'rgb(24, 144, 255)',
itemStyle: {
normal: {
label: {
show: true, //开启显示
position: 'top', //在上方显示
computed: {
option() {
return {
tooltip: { trigger: 'axis' },
legend: [
{
x: 'center',
y: 'top',
data: ['本年', '去年'],
textStyle: {
//数值样式
color: 'white',
fontSize: 12,
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
},
},
},
{
name: '去年同期',
data: [820, 932, 901, 934, 1290, 1330, 1320, 932, 901, 934, 1290, 1330],
yAxisIndex: 1,
type: 'bar',
barWidth: '10%',
color: 'rgb(26, 235, 235)',
itemStyle: {
normal: {
label: {
show: true, //开启显示
position: 'top', //在上方显示
{
x: 'center',
y: 'bottom',
data: ['本年完成', '去年同期'],
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
],
xAxis: {
type: 'category',
data: ['01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月', '12月'],
axisLabel: {
textStyle: {
//数值样式
color: 'white',
fontSize: 12,
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
},
},
yAxis: [
{
type: 'value',
interval: 20,
name: '人次',
axisTick: {
//y轴刻度线
show: false,
},
splitLine: {
show: true,
lineStyle: {
type: 'dashed',
color: '#666',
},
},
nameTextStyle: { color: '#ccc' },
axisLabel: {
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
},
{
type: 'value',
interval: 20,
name: '数量',
splitLine: {
show: true,
lineStyle: {
type: 'dashed',
color: '#666',
},
},
nameTextStyle: { color: '#ccc' },
axisLabel: {
textStyle: {
fontWeight: 'normal',
color: '#ccc', //标题颜色
},
},
},
],
series: [
{
name: '本年',
data: this.sumNow,
type: 'line',
color: 'rgb(24, 144, 255)',
},
{
name: '去年',
data: this.sumLast,
type: 'line',
color: 'rgb(26, 235, 235)',
},
{
name: '本年完成',
data: this.sigleNow,
yAxisIndex: 1,
type: 'bar',
barGap: '100%',
barWidth: '20%',
color: 'rgb(24, 144, 255)',
itemStyle: {
normal: {
label: {
show: true, //开启显示
position: 'top', //在上方显示
textStyle: {
//数值样式
color: 'white',
fontSize: 12,
},
},
},
},
},
{
name: '去年同期',
data: this.sigleLast,
yAxisIndex: 1,
type: 'bar',
barWidth: '20%',
color: 'rgb(26, 235, 235)',
itemStyle: {
normal: {
label: {
show: true, //开启显示
position: 'top', //在上方显示
textStyle: {
//数值样式
color: 'white',
fontSize: 12,
},
},
},
},
},
],
};
},
],
},
methods: {
async getData() {
try {
const params = {
param: {
hospitalId: 0,
year: '2020',
},
};
const res = await selResult(params);
const { code, msg, data } = res.data;
if (code === 200) {
this.sigleLast = data.sigleLast;
this.sigleNow = data.sigleNow;
this.sumLast = data.sumLast;
this.sumNow = data.sumNow;
} else {
console.log(msg);
}
} catch (error) {
console.log(error);
}
},
},
};
export default option;
export default mixin;

9
src/components/Statistics/Statistics.vue

@ -5,9 +5,10 @@
</div>
</template>
<script>
import option from './Statistics.js';
import mixin from './Statistics.js';
export default {
name: 'Statistics',
mixins: [mixin],
data() {
return {
width: '',
@ -20,7 +21,6 @@ export default {
let hg = window.innerHeight;
this.width = wh + 'px';
this.height = hg + 'px';
console.log(this.height);
window.onresize = () => {
return (() => {
wh = window.innerWidth;
@ -31,11 +31,12 @@ export default {
};
},
methods: {
drawLine() {
async drawLine() {
// domecharts
let myChart = this.$echarts.init(document.getElementById('myChart'));
//
myChart.setOption(option);
await this.getData();
myChart.setOption(this.option);
},
},
};

21
src/config/api.js

@ -6,22 +6,13 @@
import axios from 'axios';
let { proxyUrl, msgUrl } = require('@/config/setting');
const greenvalley = `${proxyUrl}/greenvalley`;
const page = `${greenvalley}/page`; // 创新平台相关操作
const policy = `${proxyUrl}/policy/policy`; // 创新政策相关接口
const wisdomcar = `${proxyUrl}/wisdomcar`; // 盐湖医院分路径
const statistics = `${wisdomcar}/statistics`; // 盐湖医院相关接口
// websocket基础地址
export const WS_BASE_URL = msgUrl;
// 页面列表查询
export const getPageList = params => axios.post(`${page}/list`, params);
// 查询政策列表
export const selLikePolicy = params => axios.post(`${policy}/selLikePolicy`, params);
// 查询政策详情
export const selPolicy = params => axios.post(`${policy}/selPolicy`, params);
// 申请加入三大平台
export const JoinPlatform = params => axios.post(`${greenvalley}/platform/JoinPlatform`, params);
// 上传附件
export const upload = `${greenvalley}/file/upload`;
// 加入我们
export const joinUs = params => axios.post(`${greenvalley}/PersonApply/joinUs`, params);
// 急救数量统计图数据
export const selResult = params => axios.post(`${statistics}/get/selResult`, params);
// 急救市场分析统计图数据
export const getPointTime = params => axios.post(`${statistics}/getPointTime`, params);

Loading…
Cancel
Save