多柱状体滚动

此代码段展示了在一个Vue应用中如何实现数据的筛选、日期选择、表格展示以及Echarts图表渲染。用户可以选择日期范围,并从二级受检病区下拉框中选择科室。表格数据和Echarts图表会根据选择更新,同时提供导出功能,将数据显示在图表上并转化为图片导出。
摘要由CSDN通过智能技术生成

<template>

<div class="workPreview" v-loading.fullscreen.lock="fullscreenLoading" element-loading-text="拼命加载中"

element-loading-spinner="el-icon-loading"

element-loading-background="rgba(0, 0, 0, 0.7)">

<headers>

<el-button

type="primary"

slot="OutBtn"

id="save"

size="mini"

style="position: absolute;right:8px;height:30px"

@click="download"

>导出</el-button>

</headers>

<div class="content">

<div class="searchStyle">

<span v-if="roleObj.roleNo=='00070301'">科室:</span>

<div

style="display:flex;position: relative;padding-left:4px;width: 18%;max-width: 150px;"

v-if="roleObj.roleNo=='00070301'"

>

<select-index

:testedWardSelectData="testedWardSelectData"

@searchSelectDept="searchSelectDept"

:popoverwidth='"150"'

:showData="showArr"

:selectType="true"

/>

</div>

<span style="minWidth:30px;">日期:</span>

<el-date-picker

style="width: 18%;max-width: 150px;"

v-model="searchParameters.timeStr"

value-format="yyyy-MM-dd"

type="date"

placeholder="选择日期"

:clearable='false'

:editable="false"

@change="gettimeStr()"

></el-date-picker>

<span>至</span>

<el-date-picker

style="width: 18%;max-width: 150px;"

v-model="searchParameters.timeEnd"

value-format="yyyy-MM-dd"

type="date"

placeholder="选择日期"

:clearable='false'

:editable="false"

@change="gettimeEnd()"

></el-date-picker>

</div>

<div class="registers">

<div class="tableStyle">

<div class="contentcont">

<!-- <div id="myChart2" class="myChart2" style="wdith:100%;" v-if="echartArr.length!=0"

:style="{minWidth: '100%',width:myChartWrapW,background:'#fff','border-radius': '8px',}"

></div> -->

<div

style="width:100%;display:flex;justify-content:space-between;margin-top:4px;"

>

<div style="width:100%;overflow-x:scroll" >

<div

id="myChart2"

class="myChart2"

:style="{minWidth: '100%',width:myChartWrapW,background:'#fff','border-radius': '8px',}"

></div>

<div :style="{minWidth: '100%',width:myChartWrapW,'margin-top': '18px',}" v-if="echartArr.length!=0">

<el-table

:data="echartArr"

:row-style="{height:38+'px',color:'#000000'}"

:header-cell-style="{height:38+'px',padding:0+'px',color:'#000000',fontWeight:'500'}"

:cell-style="{padding:0+'px'}"

height= 'calc(100vh - 540px)'

>

<el-table-column prop="levelName" label="层级" align="center" min-width="70"></el-table-column>

<el-table-column v-for="(item,index) in tabledata.levelProportionVoList" :key="index" align="center" :label="item.dateNow">

<el-table-column label="人数" align="center" min-width="50" :prop="'numberSum'+index"></el-table-column>

<el-table-column label="占比" align="center" min-width="50" :prop="'proportion'+index"></el-table-column>

</el-table-column>

</el-table>

</div>

<div v-else style="transform: scale(0.5);position: relative;width: 100%; height: 100%;">

<No-data/>

</div>

</div>

</div>

</div>

</div>

</div>

</div>

</div>

</template>

<script>

import NoData from "@/views/components/component/noData/index.vue";

import headers from "@/views/handerView/statisticalanalysis/components/headers.vue";

import selectIndex from "@/views/components/component/testedWardSelect/selectIndex.vue";

import {

// getNightShiftNumberDetail,

// statisticAnalysisgetNightShiftNumber,

statisticAnalysisgetShiftComparison,

personalFilesselectDictDeptList,

exportShiftComparison

} from "@/api/handleView/statisticalanalysis";

import {

dictDatadictType

} from "@/api/handleView/dict";

import py from "@/utils/lbdz";

import { output } from "@/utils/lbdz";

import { CanvasDrawImage } from "@/views/handerView/statisticalanalysis/js/index.js";

export default {

name: "trialrecord",

components: {

headers,

NoData,

selectIndex

},

data() {

return {

roleObj:JSON.parse(sessionStorage.getItem('roleObj')),

requestHttpFlag: false,

fullscreenLoading:true,

searchParameters:{

preparerDepartCode:"",

timeStr: "",

timeEnd: "",

},

myChartWrapW:"",

echartArr: [

// { name: "大学本科", value: "1", id: "collegeRegularSum" },

// { name: "大学专科", value: "2", id: "collegeJuniorSum" },

// { name: "研究生", value: "3", id: "postgraduateSum" },

// { name: "中等职业", value: "4", id: "secondaryVocationalSum" },

// { name: "中等专科", value: "5", id: "secondarySpecialtySum" }

],

tabledata:[],

seriesarr:[],

testedWardSelectData: {},

showArr: {},

};

},

created() {

setTimeout(() => {

this.fullscreenLoading = false

}, 1000);

},

mounted() {

this.getTestedWardlistTwo()

// this.getauditRecordList()

this.fun_date()

},

methods: {

fun_date(){

var date1 = new Date()

var month1 = ""

if((date1.getMonth()+1)<10){

month1 = "0"+(date1.getMonth()+1)

}else{

month1 = ""+(date1.getMonth()+1)

}

var time2=date1.getFullYear()+"-"+month1+"-"+date1.getDate();//time1表示当前时间

var date2 = new Date(date1);

date2.setDate(date1.getDate()-6);

var month2 = ""

if((date1.getMonth()+1)<10){

month2 = "0"+(date2.getMonth()+1)

}else{

month2 = ""+(date2.getMonth()+1)

}

var time1 = date2.getFullYear()+"-"+month2+"-"+date2.getDate();

console.log(time1,time2,"===============")

this.searchParameters.timeStr=time1 //

this.searchParameters.timeEnd=time2 //

// return time2;

setTimeout(() => {

this.getauditRecordList();

}, 500);

},

inputHandleChange() {

this.debounce(() => {

this.searchParameters.pageNum = 1;

this.getauditRecordList();

}, 500)();

},

handleChange() {

// this.searchParameters.pageNum = 1;

this.getauditRecordList();

},

gettimeStr(){

var data1 = Date.parse(this.searchParameters.timeStr.replace(/-/g, "/"));

var data2 = Date.parse(this.searchParameters.timeEnd.replace(/-/g, "/"));

var datadiff = data2 - data1;

if(datadiff<0){

this.$message({

message: '开始时间不能大于结束时间!',

type: 'warning'

});

this.searchParameters.timeStr=""

return;

}

var time = 30 * 24 * 60 * 60 * 1000;

if (this.searchParameters.timeStr.length > 0 && this.searchParameters.timeEnd.length > 0) {

if (datadiff > time) {

this.$message({

message: '前后时间间隔不能大于30天',

type: 'warning'

});

this.searchParameters.timeStr=""

}else{

this.handleChange()

}

}

},

gettimeEnd(){

var data1 = Date.parse(this.searchParameters.timeStr.replace(/-/g, "/"));

var data2 = Date.parse(this.searchParameters.timeEnd.replace(/-/g, "/"));

var datadiff = data2 - data1;

if(datadiff<0){

this.$message({

message: '结束时间不能小于开始时间!',

type: 'warning'

});

this.searchParameters.timeEnd=""

return;

}

var time = 30 * 24 * 60 * 60 * 1000;

console.log(this.searchParameters.timeStr.length)

console.log(this.searchParameters.timeEnd.length)

if (this.searchParameters.timeStr.length > 0 && this.searchParameters.timeEnd.length > 0) {

if (datadiff > time) {

this.$message({

message: '前后时间间隔不能大于30天',

type: 'warning'

});

this.searchParameters.timeEnd=""

}else{

this.handleChange()

}

}

},

async download() {

if (this.antiFlag) {

return;

}

this.antiFlag = true;

let dirUrl = await CanvasDrawImage();

console.log(dirUrl,"===================")

let obj = {

url:dirUrl.value

}

exportShiftComparison(obj)

.then(response => {

if (response) {

output(this.$route.query.name, response);

this.$message.success("导出成功");

} else {

this.$message.error("导出失败");

}

this.antiFlag = false;

})

.catch(() => {

this.$message.error("导出失败");

this.antiFlag = false;

});

},

// 查询 二级受检病区下拉框数据 列表

getTestedWardlistTwo() {

// this.testedWardSelectData = [{"id":null,"deptCode":"-1","deptName":"全部","pym":null,"parentCode":null,"parentName":null,"levelCode":null,"deptKey":{"firstLetter":null,"deptList":null,"firstLetterList":["G","H","K","M","N","S","X","Z"],"deptKeyList":[{"firstLetter":"G","deptList":[{"id":"22","deptCode":"352","deptName":"ICU","pym":"G","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null},{"id":"24","deptCode":"0006","deptName":"骨科三","pym":"G","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null},{"id":"18","deptCode":"432","deptName":"骨科二","pym":"G","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null},{"id":"17","deptCode":"32","deptName":"骨科一","pym":"G","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"H","deptList":[{"id":"16","deptCode":"1233","deptName":"呼吸内科","pym":"H","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"K","deptList":[{"id":"19","deptCode":"55","deptName":"康复科","pym":"K","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"M","deptList":[{"id":"8","deptCode":"1101001","deptName":"妇产科二","pym":"M","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"N","deptList":[{"id":"21","deptCode":"123","deptName":"NICU","pym":"N","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"S","deptList":[{"id":"23","deptCode":"5223","deptName":"神经内科一","pym":"S","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null},{"id":"15","deptCode":"1222","deptName":"肾内科","pym":"S","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"X","deptList":[{"id":"25","deptCode":"0007","deptName":"心血管内科一","pym":"X","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null},{"id":"26","deptCode":"0008","deptName":"心血管内科二","pym":"X","parentCode":"100","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"Z","deptList":[{"id":"20","deptCode":"534","deptName":"重症科","pym":"Z","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null}],"type":null}},{"id":"5555","deptCode":"5555","deptName":"内科系","pym":"N","parentCode":"6666","parentName":null,"levelCode":"03","deptKey":{"firstLetter":null,"deptList":null,"firstLetterList":["G","H","K","M","N","S","X","Z"],"deptKeyList":[{"firstLetter":"G","deptList":[{"id":"22","deptCode":"352","deptName":"ICU","pym":"G","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null},{"id":"24","deptCode":"0006","deptName":"骨科三","pym":"G","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null},{"id":"18","deptCode":"432","deptName":"骨科二","pym":"G","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null},{"id":"17","deptCode":"32","deptName":"骨科一","pym":"G","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"H","deptList":[{"id":"16","deptCode":"1233","deptName":"呼吸内科","pym":"H","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"K","deptList":[{"id":"19","deptCode":"55","deptName":"康复科","pym":"K","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"M","deptList":[{"id":"8","deptCode":"1101001","deptName":"妇产科二","pym":"M","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"N","deptList":[{"id":"21","deptCode":"123","deptName":"NICU","pym":"N","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"S","deptList":[{"id":"23","deptCode":"5223","deptName":"神经内科一","pym":"S","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null},{"id":"15","deptCode":"1222","deptName":"肾内科","pym":"S","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"X","deptList":[{"id":"25","deptCode":"0007","deptName":"心血管内科一","pym":"X","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null},{"firstLetter":"Z","deptList":[{"id":"20","deptCode":"534","deptName":"重症科","pym":"Z","parentCode":"5555","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null}],"type":null}},{"id":"975103281070080000","deptCode":"100","deptName":"重症科系","pym":"Z","parentCode":"6666","parentName":null,"levelCode":"03","deptKey":{"firstLetter":null,"deptList":null,"firstLetterList":["X"],"deptKeyList":[{"firstLetter":"X","deptList":[{"id":"26","deptCode":"0008","deptName":"心血管内科二","pym":"X","parentCode":"100","parentName":null,"levelCode":"04","deptKey":null}],"firstLetterList":null,"deptKeyList":null,"type":null}],"type":null}}] ;

personalFilesselectDictDeptList().then(response => {

if (response.code == "200") {

// this.testedWardSelectData = response.data.deptList;

// console.log(response, "response===================");

// return;

let deptObj = {};

response.data.deptList.forEach((item, index) => {

if (item.deptCode == "-1") {

deptObj = item.deptKey;

item.deptKey.deptKeyList.forEach((node, next) => {

node.deptList.forEach(three => {

three.pymTwo = py.chineseToPinYin(three.deptName);

});

});

}

});

this.testedWardSelectData = deptObj;

}

});

},

searchSelectDept(params) {

console.log(params,"===========")

this.searchParameters.preparerDepartCode = params.selectDeptCode;

this.getauditRecordList();

},

//人员列表

getauditRecordList() {

// if (this.requestHttpFlag) {

// return;

// }

// this.requestHttpFlag = true;

var params = {

preparerDepartCode: this.searchParameters.preparerDepartCode, //

timeStr: this.searchParameters.timeStr, //

timeEnd: this.searchParameters.timeEnd, //

};

statisticAnalysisgetShiftComparison(params)

.then(response => {

if (response.code == "200") {

this.echartArr=[]

this.tabledata = response.data;

var personarr=[]

this.seriesarr=[]

this.tabledata.levelList.forEach(element => {

var params={

name:element,

type:'bar',

// stack: "总量",

// barWidth : 30,//柱图宽度

// barGap: '-45%',

barWidth: 20,

barGap:1, //柱子之间间距

data:[],

// data:[2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4],

}

this.seriesarr.push(params)

});

// console.log(this.seriesarr,"===========this.seriesarr")

this.tabledata.levelProportionVoList.forEach((element,index) => {

// console.log(element,"===========element===index")

personarr=[]

element.levelProportionDetailVoList.forEach((item,itemindex)=> {

this.seriesarr[itemindex].data.push(item.numberSum)

this.tabledata.levelProportionVoList[0].levelProportionDetailVoList[itemindex]["numberSum" + index] = item.numberSum

this.tabledata.levelProportionVoList[0].levelProportionDetailVoList[itemindex]["proportion" + index] = item.proportion

});

});

// console.log(this.seriesarr,"====================seriesarr")

// console.log(this.tabledata.levelProportionVoList[0].levelProportionDetailVoList,"====================this.tabledata.levelProportionVoList[0].levelProportionDetailVoList")

if(this.tabledata.levelProportionVoList.length>0 && this.tabledata.levelProportionVoList[0].levelProportionDetailVoList){

this.echartArr=this.tabledata.levelProportionVoList[0].levelProportionDetailVoList

}

console.log(this.echartArr,"====================tabledata")

if(this.tabledata.levelProportionVoList.length!=0){

this.myChartWrapW = (this.tabledata.levelProportionVoList.length + 1) * 260 + 'px';

}else{

this.myChartWrapW = '100px'

}

console.log(this.myChartWrapW,"==============this.myChartWrapW")

this.$nextTick(()=>{

var myChart = this.$echarts.init(document.getElementById('myChart2'));

myChart.dispose();

this.distribution2();

})

}

})

.catch(err => {

setTimeout(() => {

// this.requestHttpFlag = false;

}, 500);

});

},

distribution2() {

let myChart2 = this.$echarts.init(document.getElementById("myChart2"));

// let option = {

// tooltip : {

// trigger: 'axis'

// },

// legend: {

// // data:['人数','占比%'],

// bottom: "bottom"

// },

// calculable : true,

// xAxis : [

// {

// type : 'category',

// // data : ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']

// data :this.tabledata.dateList

// }

// ],

// yAxis : [

// {

// type : 'value',

// minInterval:1,

// }

// ],

// series :this.seriesarr

// // series : [

// // {

// // name:'人数',

// // type:'bar',

// // data:[2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3],

// // // data :this.tabledata.countList

// // },

// // {

// // name:'占比%',

// // type:'bar',

// // // data:[2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3],

// // data :this.tabledata.proportionList

// // }

// // ]

// };

let option = {

// backgroundColor: '#00265f',

tooltip: {

trigger: 'axis',

axisPointer: {

type: 'shadow'

}

},

legend: {

// data: ['引镇入库数', '引镇出库数', '航天入库数','航天出库数'],

align: 'right',

top:'15',

right: 10,

// textStyle: {

// color: "#fff"

// },

itemWidth: 10,

itemHeight: 10,

itemGap: 15,

// bottom: "bottom"

},

grid: {

left: '10',

right: '10',

bottom: '5%',

containLabel: true

},

xAxis: [{

type: 'category',

data:this.tabledata.dateList,

axisLine: {

show: true,

lineStyle: {

// color: "#fff",

width: 1,

type: "solid"

},

},

axisTick: {

show: false,

},

axisLabel: {

show: true,

// textStyle: {

// color: "#fff",

// }

},

}],

yAxis: [{

type: 'value',

minInterval:1,

axisLabel: {

fontSize:'10',

// formatter: '{value} %'

},

axisTick: {

show: false,

},

axisLine: {

show: false,

lineStyle: {

// color: "#fff",

width: 1,

type: "solid"

},

},

splitLine: {

lineStyle: {

type:'dashed',

color: "#666666",

}

}

}],

// dataZoom: [ //给x轴设置滚动条

// {

// start: 0, //默认为0

// end: 100 - 1500 / 31, //默认为100

// type: 'slider',

// show: true,

// xAxisIndex: [0],

// handleSize: 10, //滑动条的 左右2个滑动条的大小

// height: 6, //组件高度

// left: 50, //左边的距离

// right: 40, //右边的距离

// bottom: 0, //右边的距离

// handleColor: '#ddd', //h滑动图标的颜色

// // handleStyle: {

// // borderColor: "#cacaca",

// // borderWidth: "1",

// // shadowBlur: 2,

// // background: "#ddd",

// // shadowColor: "#ddd",

// // },

// // fillerColor: '#808080',

// // backgroundColor: '#ddd', //两边未选中的滑动条区域的颜色

// showDataShadow: false, //是否显示数据阴影 默认auto

// showDetail: false, //即拖拽时候是否显示详细数值信息 默认true

// // handleIcon: 'M-292,322.2c-3.2,0-6.4-0.6-9.3-1.9c-2.9-1.2-5.4-2.9-7.6-5.1s-3.9-4.8-5.1-7.6c-1.3-3-1.9-6.1-1.9-9.3c0-3.2,0.6-6.4,1.9-9.3c1.2-2.9,2.9-5.4,5.1-7.6s4.8-3.9,7.6-5.1c3-1.3,6.1-1.9,9.3-1.9c3.2,0,6.4,0.6,9.3,1.9c2.9,1.2,5.4,2.9,7.6,5.1s3.9,4.8,5.1,7.6c1.3,3,1.9,6.1,1.9,9.3c0,3.2-0.6,6.4-1.9,9.3c-1.2,2.9-2.9,5.4-5.1,7.6s-4.8,3.9-7.6,5.1C-285.6,321.5-288.8,322.2-292,322.2z',

// // filterMode: 'filter',

// },

// //下面这个属性是里面拖到

// {

// type: 'inside',

// show: true,

// xAxisIndex: [0],

// start: 0, //默认为1

// end: 100 - 1500 / 31, //默认为100

// },

// // {

// // start: 0, //默认为0

// // end: 100 - 1500 / 31, //默认为100

// // type: 'slider',

// // show: true,

// // xAxisIndex: [0],

// // handleSize: 10, //滑动条的 左右2个滑动条的大小

// // height: 3, //组件高度

// // left: 50, //左边的距离

// // right: 40, //右边的距离

// // bottom: 0, //右边的距离

// // borderColor: 'rgba(0,0,0,0)',

// // textStyle: {

// // color: '#05D5FF',

// // },

// // showDataShadow: false, //是否显示数据阴影 默认auto

// // showDetail: false, //即拖拽时候是否显示详细数值信息 默认true

// // },

// ],

series :this.seriesarr

};

myChart2.setOption(option);

},

}

};

</script>

<style scoped lang="scss">

.content{

padding: 4px;

}

.searchStyle {

flex: 1;

padding: 4px;

// margin-top: 4px;

display: flex;

align-items: center;

background: #fff;

span {

font-size: 14px;

margin: 0 5px;

}

::v-deep {

.el-input__inner {

height: 32px;

line-height: 32px;

}

}

}

.registers {

width: 100%;

background: #fff;

font-size: 14px;

border-bottom: none;

box-sizing: border-box;

margin-top: 4px;

height: calc(100vh - 95px);

padding: 4px;

.tableStyle {

width: 100%;

height: 100%;

// border: 1px solid;

.contentcont{

height: calc(100vh - 95px);

}

}

}

.myChart2{

// height: calc(100vh - 390px);

height: 400px;

// border: 1px solid;

}

::v-deep {

/**

改变边框颜色

*/

// .el-table {

// border-bottom: 1px solid #d0d0d0;

// // border-right: 1px solid #d0d0d0;

// margin: 0 auto;

// }

// .el-table th {

// border: 1px solid #d0d0d0 !important;

// border-right: none !important;

// border-bottom: none !important;

// }

// .el-table td {

// border: 1px solid #d0d0d0;

// border-right: none !important;

// border-bottom: none !important;

// }

}

</style>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值