index.vue 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752
  1. <template>
  2. <basic-container>
  3. <el-dialog :modal-append-to-body="false" :visible.sync="editBussinessVisible" title="编辑资料" width="80%">
  4. <avue-form v-if="editBussinessVisible" :table-loading="loading" v-model="bussiness" :option="bussinessOption"
  5. @reset-change="emptytChange" @submit="submitBussiness()">
  6. </avue-form>
  7. </el-dialog>
  8. <el-dialog :modal-append-to-body="false" :visible.sync="chongzhiVisible" title="采购页面" width="70%" center top="2vh" modal="true">
  9. <div v-if="chongzhiVisible">
  10. <purchase :serviceRate="bussiness.serviceRate" v-if="chongzhiVisible" @finishSubmit="finishSubmit"></purchase>
  11. </div>
  12. </el-dialog>
  13. <el-card v-if="permission.account_static">
  14. <el-row :gutter="50">
  15. <el-col :span="24">
  16. <accountstatic head="采购商财务账本" :statData="bussinessaccountData"></accountstatic>
  17. </el-col>
  18. </el-row>
  19. </el-card>
  20. <el-card v-if="permission.bussiness_screen" :span="24">
  21. <el-row>
  22. <div>
  23. <el-row :gutter="50">
  24. <el-col span="12">
  25. <div style="background: linear-gradient(-125deg, #2f9de2, #4d4dff);border-radius: 30px;">
  26. <avue-avatar style="margin:20px;" :size="128" :src="bussiness.icon"></avue-avatar>
  27. <span style="color: white;">{{bussiness.name}}</span>
  28. <span style="color: white;margin-left: 40px;">API密钥:</span> <span style="color: white;margin-left:10px">******</span>
  29. <span style="margin-left: 10px;">
  30. <el-tooltip content="API密钥用于接口对接,请谨慎保存" placement="bottom" effect="dark">
  31. <el-button type="primary" size="mini" @click="doCopy()">
  32. 复制
  33. </el-button>
  34. </el-tooltip>
  35. </span>
  36. <span style="font-weight: bold; margin-left: 30px;">
  37. <el-link target="_blank" type="success" :href="bussiness.apiFilePath">Api文档下载(打开需输入密钥)</el-link>
  38. </span>
  39. <div>
  40. <el-button style="margin-left:50px;" type="primary" class="button" @click="editBussiness">商户配置(可设置回调地址)</el-button>
  41. <span style="color: white;margin-left: 40px;">服务费率(千分比):{{bussiness.serviceRate}}</span>
  42. <span style="color: white;margin-left: 40px;">每日限额(元):{{bussiness.maxLimit}}</span>
  43. </div>
  44. <div style="color: white;margin-left: 20px;margin-top:30px;">
  45. <span style="color: white;">商户回调地址:{{bussiness.recallUrl}}</span>
  46. </div>
  47. <div style="margin-left: 20px;margin-top:30px;">
  48. <span style="color: white;">账户余额</span>
  49. </div>
  50. <div style="margin-left: 20px;margin-top:10px;padding-bottom: 20px;">
  51. <span>
  52. <avue-avatar style="margin-bottom: 30px;" src="/img/bg/rmb.png"></avue-avatar>
  53. </span>
  54. <span style="font-size:60px;margin-left:20px;margin-bottom: 20px;color:white;">
  55. {{bussiness.remain}}
  56. </span>
  57. </div>
  58. <!--<div style="margin-left: 20px;margin-top:30px;">
  59. <span style="color: white;">在途金额</span>
  60. </div>
  61. <div style="margin-left: 20px;margin-top:10px;padding-bottom: 20px;">
  62. <span>
  63. <avue-avatar style="margin-bottom: 30px;" src="/img/bg/rmb.png"></avue-avatar>
  64. </span>
  65. <span style="font-size:60px;margin-left:20px;margin-bottom: 20px;color:white;">
  66. {{bussiness.freeze}}
  67. </span>
  68. </div>-->
  69. </div>
  70. </el-col>
  71. <el-col span="12" height="400px">
  72. <el-row :gutter="50">
  73. <!--<el-col span="12">
  74. <div style="background-color: #4d4dff;border-radius: 30px;" align="center" @click="chongzhi">
  75. <img style="margin:10px;" float="center" :size="30" src="/img/bg/qb.png" />
  76. <div style="color: white;padding-bottom: 10px;">
  77. 商户采购
  78. </div>
  79. </div>
  80. </el-col>-->
  81. <el-col span="12">
  82. <div style="background-color: #ff5050;border-radius: 30px;" align="center" @click="toMyOrder">
  83. <img style="margin:10px;" float="center" :size="30" src="/img/bg/zd.png" />
  84. <div style="color: white;padding-bottom: 10px;">
  85. 我的账单
  86. </div>
  87. </div>
  88. </el-col>
  89. </el-row>
  90. <el-row :gutter="50">
  91. <el-col span="12">
  92. <div style="background-color: #d633ff;border-radius: 30px;" align="center" @click="toMyDebit">
  93. <img style="margin:10px;" float="center" :size="30" src="/img/bg/fxfr.png" />
  94. <div style="color: white;padding-bottom: 10px;">
  95. 分销分润
  96. </div>
  97. </div>
  98. </el-col>
  99. <el-col span="12">
  100. <div style="background-color: #8080ff;border-radius: 30px;" align="center" @click="toBin">
  101. <img style="margin:10px;" float="center" :size="30" src="/img/bg/sm.png" />
  102. <div style="color: white;padding-bottom: 10px;">
  103. 卡bin查询
  104. </div>
  105. </div>
  106. </el-col>
  107. </el-row>
  108. </el-col>
  109. </el-row>
  110. </div>
  111. </el-row>
  112. </el-card>
  113. </basic-container>
  114. </template>
  115. <script>
  116. import request from '@/router/axios';
  117. import echarts from "echarts";
  118. import accountstatic from "@/components/index/accountstatic.vue"
  119. import purchase from "./purchase.vue"
  120. import {
  121. getByAccount,
  122. update
  123. } from "@/api/guosen/bussiness"
  124. import {
  125. mapGetters
  126. } from "vuex";
  127. export default {
  128. components: {
  129. accountstatic,purchase
  130. },
  131. data() {
  132. return {
  133. agenteraccountData:{},
  134. useraccountData: {},
  135. bussinessaccountData: {
  136. todayIn: null,
  137. todayOut:null,
  138. historyIn:null,
  139. historyOut:null
  140. },
  141. loading: true,
  142. editBussinessVisible: false,
  143. moneyChina: "壹拾万元整",
  144. bussiness: {},
  145. statDatas: [
  146. {
  147. key: "技术服务费率",
  148. value: 0
  149. },
  150. {
  151. key: "技术服务费",
  152. value: 0
  153. },
  154. {
  155. key: "采购金额",
  156. value: 0
  157. },
  158. {
  159. key: "可用余额",
  160. value: 0
  161. }
  162. ],
  163. yibaoOrder: {
  164. },
  165. billrecord: {
  166. payStatus: 0,
  167. type: 5
  168. },
  169. money: 100000,
  170. serviceRate: 0.005,
  171. chongzhiVisible: false,
  172. buttonDay: "primary",
  173. buttonMonth: "",
  174. selectDate: [],
  175. dateType: "daterange",
  176. dataPlace: "选择日期",
  177. query: {
  178. staticType: 1
  179. },
  180. tgOption: {
  181. span: 8,
  182. data: [{
  183. count: "66.6万",
  184. title: '总曝光量',
  185. },
  186. {
  187. count: '88.8万',
  188. title: '总点击率',
  189. },
  190. {
  191. count: '688万',
  192. title: '总访问量',
  193. },
  194. {
  195. count: '6666',
  196. title: '今日曝光量',
  197. },
  198. {
  199. count: '6666',
  200. title: '今日点击率',
  201. },
  202. {
  203. count: '6666',
  204. title: '今日访问量',
  205. }
  206. ]
  207. },
  208. bussiness_option2: {
  209. span: 12,
  210. data: [{
  211. click: function(item) {
  212. alert(JSON.stringify(item));
  213. },
  214. count: '150',
  215. title: '采购',
  216. icon: 'el-icon-warning',
  217. color: 'rgb(49, 180, 141)'
  218. }, {
  219. click: function(item) {
  220. alert(JSON.stringify(item));
  221. },
  222. count: '53%',
  223. title: '跳出率',
  224. icon: 'el-icon-view',
  225. color: '#00a65a'
  226. }, {
  227. click: function(item) {
  228. alert(JSON.stringify(item));
  229. },
  230. count: '44',
  231. title: '用户注册数',
  232. icon: 'el-icon-setting',
  233. color: '#f39c12'
  234. }]
  235. },
  236. bussinessOption: {
  237. height: 'auto',
  238. calcHeight: 30,
  239. tip: false,
  240. searchShow: true,
  241. searchMenuSpan: 6,
  242. border: true,
  243. index: true,
  244. viewBtn: true,
  245. selection: true,
  246. dialogClickModal: false,
  247. dialogWidth: "30%",
  248. column: [{
  249. label: "采购商名称",
  250. labelWidth: 130,
  251. prop: "name",
  252. span: 24,
  253. rules: [{
  254. required: true,
  255. message: "请输入采购商名称",
  256. trigger: "blur"
  257. }]
  258. },
  259. {
  260. label: "api回调地址",
  261. prop: "recallUrl",
  262. labelWidth: 130,
  263. span: 24,
  264. hide: true,
  265. placeholder: "请输入回调地址,比如:http://xxx.xxx.xxx.xxx/xxx",
  266. rules: [{
  267. required: false,
  268. message: "请输入回调地址,比如:http://xxx.xxx.xxx.xxx/xxx",
  269. trigger: "blur"
  270. }]
  271. },
  272. {
  273. label: "广告图",
  274. prop: "icon",
  275. labelWidth: 130,
  276. span: 12,
  277. type: "upload",
  278. listType: "picture-img",
  279. action: '/api/putObject',
  280. propsHttp: {
  281. url: 'data'
  282. },
  283. rules: [{
  284. required: false,
  285. message: "请输入营业执照",
  286. trigger: "blur"
  287. }]
  288. },
  289. {
  290. label: "营业执照",
  291. prop: "businessLicense",
  292. labelWidth: 130,
  293. span: 12,
  294. type: "upload",
  295. listType: "picture-img",
  296. action: '/api/putObject',
  297. propsHttp: {
  298. url: 'data'
  299. },
  300. rules: [{
  301. required: false,
  302. message: "请输入营业执照",
  303. trigger: "blur"
  304. }]
  305. },
  306. {
  307. label: "税务登记证",
  308. prop: "taxAffairsLicense",
  309. labelWidth: 130,
  310. type: "upload",
  311. listType: "picture-img",
  312. action: '/api/putObject',
  313. propsHttp: {
  314. url: 'data'
  315. },
  316. span: 12,
  317. rules: [{
  318. required: false,
  319. message: "请输入税务登记证",
  320. trigger: "blur"
  321. }]
  322. },
  323. {
  324. label: "组织机构代码证",
  325. prop: "organizationCodeLicense",
  326. labelWidth: 130,
  327. span: 12,
  328. type: "upload",
  329. listType: "picture-img",
  330. action: '/api/putObject',
  331. propsHttp: {
  332. url: 'data'
  333. },
  334. rules: [{
  335. required: false,
  336. message: "请输入关联账号的密码",
  337. trigger: "blur"
  338. }]
  339. },
  340. {
  341. label: "关联账号的id",
  342. prop: "accountId",
  343. hide: true,
  344. display: false,
  345. rules: [{
  346. required: true,
  347. message: "请输入关联账号的id",
  348. trigger: "blur"
  349. }]
  350. },
  351. ]
  352. },
  353. bussiness_option1: {
  354. height: "500px",
  355. span: 24,
  356. data: [{
  357. click: function(item) {
  358. alert(JSON.stringify(item));
  359. },
  360. title: '分类统计',
  361. subtitle: '实时',
  362. count: 7993,
  363. allcount: 10222,
  364. text: '当前分类总记录数',
  365. color: 'rgb(27, 201, 142)',
  366. key: '类'
  367. },
  368. ]
  369. },
  370. }
  371. },
  372. computed: {
  373. ...mapGetters(["permission", "userInfo"])
  374. },
  375. watch: {
  376. "money"() {
  377. if (this.money < 0) {
  378. this.money = 1;
  379. }
  380. // this.moneyChina = this.convertCurrency(this.money)
  381. this.statDatas[0].value = this.bussiness.serviceRate / 1000
  382. this.statDatas[1].value = this.money * this.bussiness.serviceRate / 1000
  383. this.statDatas[2].value = parseFloat(this.money)
  384. this.statDatas[3].value = parseFloat(this.statDatas[2].value) - parseFloat(this.statDatas[1].value)
  385. },
  386. },
  387. mounted() {
  388. var _that = this;
  389. // this.type = this.tabsOption.column[0];
  390. let befDate = new Date();
  391. let byear = befDate.getFullYear();
  392. let bmonth = befDate.getMonth() + 1;
  393. let bday = befDate.getDate();
  394. let startTime = `${byear}-${bmonth}-${bday}`;
  395. this.selectDate = [startTime, startTime];
  396. this.getData();
  397. this.getOrderCommissionData();
  398. this.getAccoutStatic()
  399. getByAccount().then(res => {
  400. if(res.data.data){
  401. _that.bussiness = res.data.data
  402. _that.statDatas[0].value = res.data.data.serviceRate / 1000
  403. _that.statDatas[1].value = _that.money * _that.statDatas[0].value
  404. _that.statDatas[2].value = _that.money
  405. _that.statDatas[3].value = _that.statDatas[2].value - _that.statDatas[1].value
  406. console.log("buss" + JSON.stringify(_that.bussiness))
  407. }
  408. })
  409. },
  410. methods: {
  411. submitBussiness() {
  412. this.bussiness.userPassword = null;
  413. this.bussiness.leastPrice = null;
  414. update(this.bussiness).then(res => {
  415. this.$message({
  416. type: "success",
  417. message: res.data.msg
  418. });
  419. this.editBussinessVisible = false;
  420. })
  421. },
  422. /*convertCurrency(money) {
  423. //汉字的数字
  424. var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖');
  425. //基本单位
  426. var cnIntRadice = new Array('', '拾', '佰', '仟');
  427. //对应整数部分扩展单位
  428. var cnIntUnits = new Array('', '万', '亿', '兆');
  429. //对应小数部分单位
  430. var cnDecUnits = new Array('角', '分', '毫', '厘');
  431. //整数金额时后面跟的字符
  432. var cnInteger = '整';
  433. //整型完以后的单位
  434. var cnIntLast = '元';
  435. //最大处理的数字
  436. var maxNum = 999999999999999.9999;
  437. //金额整数部分
  438. var integerNum;
  439. //金额小数部分
  440. var decimalNum;
  441. //输出的中文金额字符串
  442. var chineseStr = '';
  443. //分离金额后用的数组,预定义
  444. var parts;
  445. if (money == '') {
  446. return '';
  447. }
  448. money = parseFloat(money);
  449. if (money >= maxNum) {
  450. //超出最大处理数字
  451. return '';
  452. }
  453. if (money == 0) {
  454. chineseStr = cnNums[0] + cnIntLast + cnInteger;
  455. return chineseStr;
  456. }
  457. //转换为字符串
  458. money = money.toString();
  459. if (money.indexOf('.') == -1) {
  460. integerNum = money;
  461. decimalNum = '';
  462. } else {
  463. parts = money.split('.');
  464. integerNum = parts[0];
  465. decimalNum = parts[1].substr(0, 4);
  466. }
  467. //获取整型部分转换
  468. if (parseInt(integerNum, 10) > 0) {
  469. var zeroCount = 0;
  470. var IntLen = integerNum.length;
  471. for (let i = 0; i < IntLen; i++) {
  472. var n = integerNum.substr(i, 1);
  473. var p = IntLen - i - 1;
  474. var q = p / 4;
  475. var m = p % 4;
  476. if (n == '0') {
  477. zeroCount++;
  478. } else {
  479. if (zeroCount > 0) {
  480. chineseStr += cnNums[0];
  481. }
  482. //归零
  483. zeroCount = 0;
  484. chineseStr += cnNums[parseInt(n)] + cnIntRadice[m];
  485. }
  486. if (m == 0 && zeroCount < 4) {
  487. chineseStr += cnIntUnits[q];
  488. }
  489. }
  490. chineseStr += cnIntLast;
  491. }
  492. //小数部分
  493. if (decimalNum != '') {
  494. var decLen = decimalNum.length;
  495. for (var i = 0; i < decLen; i++) {
  496. var n = decimalNum.substr(i, 1);
  497. if (n != '0') {
  498. chineseStr += cnNums[Number(n)] + cnDecUnits[i];
  499. }
  500. }
  501. }
  502. if (chineseStr == '') {
  503. chineseStr += cnNums[0] + cnIntLast + cnInteger;
  504. } else if (decimalNum == '') {
  505. chineseStr += cnInteger;
  506. }
  507. return chineseStr;
  508. },*/
  509. editBussiness() {
  510. this.editBussinessVisible = true;
  511. },
  512. doCopy() {
  513. this.$copyText(this.bussiness.secret)
  514. this.$message.success("复制成功")
  515. },
  516. toMyDebit() {
  517. this.$router.push('/guosen/bussinessdebitrequest');
  518. },
  519. toBin() {
  520. this.$router.push('/guosen/bankcode');
  521. },
  522. toMyOrder() {
  523. this.$router.push('/bussiness/order');
  524. },
  525. guid() {
  526. var str = "abcdefghijklmnopqrstuvwxyz0123456789"; // 可以作为常量放到random外面
  527. var result = "";
  528. for (var i = 0; i < 32; i++) {
  529. result += str[parseInt(Math.random() * str.length)];
  530. }
  531. return result;
  532. },
  533. chongzhi() {
  534. this.chongzhiVisible = true;
  535. },
  536. //按日
  537. handleDay() {
  538. this.buttonDay = "primary";
  539. this.buttonMonth = "";
  540. this.query.staticType = 1;
  541. this.dateType = "daterange";
  542. this.dataPlace = "选择日期";
  543. },
  544. //按月
  545. handleMonth() {
  546. this.buttonDay = "";
  547. this.buttonMonth = "primary";
  548. this.query.staticType = 2;
  549. this.dateType = "monthrange";
  550. this.dataPlace = "选择月份";
  551. },
  552. getAccoutStatic() {
  553. let that = this;
  554. request({
  555. url: '/api/cyzh-static/adStaticAccountStatic',
  556. method: "get",
  557. }).then(res => {
  558. //今日分润
  559. let todayOut = res.data.data.todayOut;
  560. that.useraccountData.todayOut = todayOut.userOut;
  561. that.agenteraccountData.todayOut = todayOut.proxyOut;
  562. that.bussinessaccountData.todayOut = todayOut.adsOut;
  563. //历史提现
  564. let historyOut = res.data.data.totalOut;
  565. that.useraccountData.historyOut = historyOut.userOut;
  566. that.agenteraccountData.historyOut = historyOut.proxyOut;
  567. that.bussinessaccountData.historyOut = historyOut.adsOut;
  568. //今日采购
  569. let todayIn = res.data.data.todayIn;
  570. that.useraccountData.todayIn = todayIn.userIn;
  571. that.agenteraccountData.todayIn = todayIn.proxyIn;
  572. that.bussinessaccountData.todayIn = todayIn.adsIn;
  573. //历史收入
  574. let historyIn = res.data.data.totalIn;
  575. that.useraccountData.historyIn = historyIn.userIn;
  576. that.agenteraccountData.historyIn = historyIn.proxyIn;
  577. that.bussinessaccountData.historyIn = historyIn.adsIn;
  578. that.$forceUpdate()
  579. that.drawPie();
  580. })
  581. },
  582. getOrderCommissionData() {
  583. this.query.beginDate = this.selectDate[0];
  584. this.query.endDate = this.selectDate[1];
  585. request({
  586. url: '/api/cyzh-static/staticOrderCommission',
  587. method: "post",
  588. data: this.query
  589. }).then(res => {
  590. this.drawRealDemandLine(res.data.data.dateList, res.data.data.unClearList, res.data.data.clearedList)
  591. })
  592. },
  593. getData() {
  594. request({
  595. url: '/api/cyzh-static/static',
  596. method: "get"
  597. }).then(res => {
  598. const resData = res.data.data;
  599. if(!resData.userCount){
  600. this.optionMusic.data[0].count = resData.userCount;
  601. this.optionMusic.data[1].count = resData.agenterCount;
  602. this.optionMusic.data[2].count = resData.activityCount;
  603. this.optionMusic.data[3].count = resData.shopCount;
  604. }
  605. })
  606. },
  607. finishSubmit(){
  608. this.chongzhiVisible = false;
  609. },
  610. handleStatic() {
  611. this.getOrderCommissionData();
  612. },
  613. drawPie() {
  614. let $todayOut = document.getElementById('todayOut');
  615. if(!$todayOut){
  616. return ;
  617. }
  618. let todayOutChart = echarts.init($todayOut);
  619. todayOutChart.setOption(this.optionTodayOut);
  620. let histroyOuntChart = echarts.init(document.getElementById('historyOut'));
  621. histroyOuntChart.setOption(this.optionHistoryOut);
  622. let todayInChart = echarts.init(document.getElementById('todayIn'));
  623. todayInChart.setOption(this.optionTodayIn);
  624. let historyInChart = echarts.init(document.getElementById('historyIn'));
  625. historyInChart.setOption(this.optionHistoryIn);
  626. },
  627. //柱形图
  628. drawRealDemandLine(dateList, unclearDataList, clearedDataList) {
  629. // 基于准备好的dom,初始化echarts实例
  630. let $orderStatistics = document.getElementById('orderStatistics');
  631. if (!$orderStatistics) return;
  632. let myChart = echarts.init($orderStatistics)
  633. // 基于准备好的dom,初始化echarts实例
  634. // 绘制图表
  635. myChart.setOption({
  636. title: {
  637. text: ''
  638. },
  639. tooltip: {
  640. trigger: 'axis',
  641. axisPointer: {
  642. type: 'shadow'
  643. }
  644. },
  645. grid: { //直角坐标系内绘图网格
  646. show: true, //是否显示直角坐标系网格。[ default: false ]
  647. left: "10%", //grid 组件离容器左侧的距离。
  648. right: "30px",
  649. borderColor: "#c45455", //网格的边框颜色
  650. bottom: "20%" //
  651. },
  652. legend: {
  653. data: ['待结算', '已结算'],
  654. show: true,
  655. },
  656. // x轴拖动
  657. dataZoom: [{
  658. type: "slider",
  659. realtime: true, //拖动滚动条时是否动态的更新图表数据
  660. height: 25, //滚动条高度
  661. start: 0, //滚动条开始位置(共100等份)
  662. end: 100 //结束位置(共100等份)
  663. }],
  664. xAxis: {
  665. data: dateList,
  666. axisLabel: { //坐标轴刻度标签的相关设置。
  667. interval: 0,
  668. rotate: "45"
  669. }
  670. },
  671. yAxis: {},
  672. series: [{
  673. name: '待结算',
  674. type: 'bar',
  675. stack: '佣金',
  676. data: unclearDataList
  677. }, {
  678. name: '已结算',
  679. type: 'bar',
  680. stack: '佣金',
  681. data: clearedDataList
  682. }]
  683. });
  684. }
  685. }
  686. }
  687. </script>
  688. <style>
  689. .button {
  690. padding: 10;
  691. float: center;
  692. }
  693. .image {
  694. width: 35%;
  695. display: block;
  696. border-radius: 65px;
  697. }
  698. .myTable {
  699. border-collapse: collapse;
  700. margin: 0 auto;
  701. text-align: center;
  702. }
  703. </style>