equipmentBoard.vue 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726
  1. <template>
  2. <div class="content">
  3. <dv-full-screen-container>
  4. <!-- 头部内容 -->
  5. <div class="header">
  6. <dv-decoration-8 class="left" />
  7. <dv-decoration-5 class="center" />
  8. <dv-decoration-8 class="right" :reverse="true" />
  9. <div class="title">{{ titleName }}</div>
  10. <div class="time">
  11. <span>月份:</span>
  12. <el-date-picker v-model="month" type="month" value-format="yyyy-MM" format="yyyy-MM" placeholder="日期选择" style="width: 120px" :readonly="false" :editable="true" :clearable="false" @change="updateAll" />
  13. </div>
  14. <div class="back" @click.prevent="goBack()">
  15. <dv-border-box-8>返回</dv-border-box-8>
  16. </div>
  17. </div>
  18. <dv-border-box-1 style="height:88%;overflow: hidden;">
  19. <!-- 顶部数据 -->
  20. <div class="topCard">
  21. <top-bar v-if="topBarData.length" :info="topBarData" />
  22. </div>
  23. <dv-decoration-10 style="height:2%;display:flex;" />
  24. <div class="middleCard">
  25. <div style="width:100%;height: 100%;box-sizing: border-box;overflow: hidden;">
  26. <div class="middleCardLeft">
  27. <middleCard v-if="MiddleLeftPieViewList.data.length" :info="MiddleLeftPieViewList" ref="middleCardLeft" />
  28. </div>
  29. <dv-decoration-2 :reverse="true" style="width:2%;height: 100%;" />
  30. <div class="middleCardRight1">
  31. <CarouselTabl v-if="MiddleLeftPieViewList.data.length" :info="shiyonglvConfig" title="设备使用记录列表" isup=isup />
  32. </div>
  33. <!-- <div class="middleCardCenter">
  34. <middleCard v-if="eBgRateData.data.length" :info="eBgRateData" ref="middleCardCenter"/>
  35. </div> -->
  36. <dv-decoration-2 :reverse="true" style="width:2%;height:100%;" />
  37. <div class="middleCardRight">
  38. <CarouselTabl v-if="config.data.length" :info="config" title="设备报废列表" />
  39. </div>
  40. </div>
  41. </div>
  42. <dv-decoration-10 style="height:2%;display:flex;" />
  43. <div class="bottomCard">
  44. <div style="width:24%">
  45. <zhuzhuangtu v-if="sheBeiData.data.length" :info="sheBeiData" ref="sheBeiDataDataref" />
  46. </div>
  47. <dv-decoration-2 :reverse="true" style="width:1%;height:100%;overflow: hidden;box-sizing: border-box;" />
  48. <div style="width:25%;height: 100%;overflow: hidden;box-sizing: border-box;display:flex;">
  49. <div class="bottomCardLeft0">
  50. <middleCard v-if="weiHuSheBeiData.data.length" :info="weiHuSheBeiData" ref="sheBeiWeiHuRef" />
  51. </div>
  52. <!-- <dv-decoration-2 :reverse="true" style="width:3%;height:100%;;margin: 0 10px;" /> -->
  53. <!-- <div style="width:37%">
  54. <zhuzhuangtu v-if="sheBeiweiHuData.data.length" :info="sheBeiweiHuData" ref="sheBeiWeiHuDataref"/>
  55. </div> -->
  56. </div>
  57. <dv-decoration-2 :reverse="true" style="width:1%;height:100%;overflow: hidden;box-sizing: border-box;" />
  58. <div style="width:25%;display:flex;">
  59. <!-- <div style="width:40%">
  60. <zhuzhuangtu v-if="zhuantaiEData.data.length" :info="zhuantaiEData" ref="zhuantaiEDataref" />
  61. </div> -->
  62. <!-- <dv-decoration-2 :reverse="true" style="width:3%;height:100%;" /> -->
  63. <div class="bottomCardright">
  64. <middleCard v-if="jianDingjiaoZhunSheBeiData.data.length" :info="jianDingjiaoZhunSheBeiData" ref="jiandingRef" />
  65. </div>
  66. </div>
  67. <dv-decoration-2 :reverse="true" style="width:1%;height:100%;overflow: hidden;box-sizing: border-box;" />
  68. <div style="width:24%;overflow: hidden;box-sizing: border-box;display:flex;">
  69. <div class="bottomCardLeft">
  70. <middleCard v-if="sheBeiHeChaData.data.length" :info="sheBeiHeChaData" ref="sheBeiHeChaRef"/>
  71. </div>
  72. <!-- <dv-decoration-2 :reverse="true" style="width:5px;height:330px;margin: 0 10px;" /> -->
  73. <!-- <div style="width:100%">
  74. <zhuzhuangtu v-if="bottomData.data.length" :info="bottomData" ref="bottomCardLeft" />
  75. </div> -->
  76. </div>
  77. </div>
  78. </dv-border-box-1>
  79. </dv-full-screen-container>
  80. </div>
  81. </template>
  82. <script>
  83. import screenfull from "screenfull";
  84. import curdPost from "@/business/platform/form/utils/custom/joinCURD.js";
  85. import { color } from "echarts/lib/export";
  86. // import { config } from 'public/lib/UEditor/third-party/zeroclipboard/ZeroClipboard';
  87. // import { acceptList } from "./data.js";
  88. // import { number } from 'echarts/lib/export';
  89. export default {
  90. name: "checkBoard",
  91. components: {
  92. topBar: () => import("./component/equipmentBoardTopcard"),
  93. middleCard: () => import("./component/getPieView"),
  94. zhuzhuangtu: () => import("./component/zhuzhuangtu"),
  95. CarouselTabl: () => import("./component/CarouselTabl"),
  96. },
  97. data() {
  98. const d = new Date();
  99. return {
  100. titleName: "设备管理看板",
  101. year: d.toJSON().slice(0, 4),
  102. month: d.toJSON().slice(0, 7),
  103. today: d.toJSON().slice(0, 10),
  104. topBarData: [],
  105. timer: null,
  106. MiddleLeftPieViewList: {},
  107. eBgRateData: {},
  108. sheBeiHeChaData: {},
  109. jianDingjiaoZhunSheBeiData: {},
  110. weiHuSheBeiData: {},
  111. shiyonglvConfig: {
  112. header: ["设备名称","使用人", "使用时间","存放位置", "状态", "频率"],
  113. data: [],
  114. columnWidth: ["130", "90","110","120", "100", "70"],
  115. rowNum: 6,
  116. },
  117. bottomData: {},
  118. zhuantaiEData: {},
  119. sheBeiData: { xData: [], data: [], config: { idSelector: "" } },
  120. sheBeiDataShow:false,
  121. sheBeiweiHuData: {},
  122. config: {},
  123. zichan: 0,
  124. };
  125. },
  126. created() {
  127. if (screenfull.isEnabled && !screenfull.isFullscreen) {
  128. this.allView();
  129. }
  130. this.updateAll();
  131. },
  132. beforeDestroy() {
  133. if (screenfull.isFullscreen) {
  134. screenfull.toggle();
  135. }
  136. },
  137. methods: {
  138. allView() {
  139. // 默认显示全屏
  140. screenfull.request();
  141. },
  142. goBack() {
  143. this.$router.back(-1);
  144. },
  145. updateAll(e) {
  146. // this.getSheBeiMony();
  147. this.getCarouselShiYonglvTable();
  148. this.getTopBarData();
  149. this.getMiddleLeftPieView();
  150. this.getCarouselTable();
  151. // this.getbottomData();
  152. },
  153. async getTopBarData() {
  154. let this_ = this;
  155. this.MiddleLeftPieViewList = {
  156. data: [],
  157. config: { idSelector: "main" },
  158. rowNum: 6,
  159. color: [],
  160. };
  161. this_.sheBeiDataShow = false;
  162. this.eBgRateData = { data: [], config: {} };
  163. this.sheBeiHeChaData = { data: [], config: {} };
  164. this.jianDingjiaoZhunSheBeiData = { data: [], config: {} };
  165. this.sheBeiData={ xData: [], data: [], config: { idSelector: "" } };
  166. this.weiHuSheBeiData = { data: [], config: {} };
  167. this.bottomData = { xData: [], data: [], config: { idSelector: "" } };
  168. this.zhuantaiEData = { xData: [], data: [], config: { idSelector: "" } };
  169. this.sheBeiweiHuData = {
  170. xData: [],
  171. data: [],
  172. config: { idSelector: "" },
  173. };
  174. let sql = `select a.Equipments,a1.mony,b.addEquipments,c.testEquipments,c1.testNoEquipments,d.checkEquipments,
  175. d1.checkNoEquipments,e.goodEquipments,f.scrapEquipments,g.limitedEquipments,h.weiHuNoEquipments,h1.weiHuEquipments
  176. from
  177. (select count(*) as Equipments from t_sbdj) as a,
  178. (select zi_chan_yuan_zhi_ as mony FROM t_sbdj) as a1,
  179. (select count(*) as addEquipments from t_sbdj where gou_jin_ri_qi_ LIKE '${this_.month}') as b,
  180. (select count(*) as testEquipments from t_sbjdxzqr where shi_fou_guo_shen_ ='1') as c,
  181. (select count(*) as testNoEquipments from t_sbjdxzqr) as c1,
  182. (select count(*) as checkEquipments from t_sbhcjlb where create_time_ LIKE '${this_.month}' and shi_fou_guo_shen_ ='1') as d,
  183. (select count(*) as checkNoEquipments from t_sbhcjlb where create_time_ LIKE '${this_.month}') as d1,
  184. (select count(*) as goodEquipments from t_sbdj where she_bei_zhuang_ta ='正常') as e,
  185. (select count(*) as scrapEquipments from t_sbdj where she_bei_zhuang_ta ='停用' or she_bei_zhuang_ta ='报废' or she_bei_zhuang_ta ='报废/停用') as f,
  186. (select count(*) as limitedEquipments from t_sbdj where she_bei_zhuang_ta ='限制使用' or she_bei_zhuang_ta ='备用') as g,
  187. (select count(*) as weiHuNoEquipments from t_mjsbwhjhzb where create_time_ LIKE '${this_.month}') as h,
  188. (select count(*) as weiHuEquipments from t_mjsbwhbyjlby where create_time_ LIKE '${this_.month}' and shi_fou_guo_shen_ ='1') as h1`;
  189. await curdPost("sql", sql)
  190. .then((res) => {
  191. const data = res.variables.data;
  192. let zichan = this_.getAllMonyInt(data);
  193. zichan = zichan +''
  194. zichan =zichan.substring(0,zichan.length-4)
  195. let eIntactnessRate = Number(
  196. (
  197. (data[0].goodEquipments / data[0].Equipments).toFixed(2) * 100 +
  198. ""
  199. ).slice(0, 5)
  200. );
  201. let eBadRate = Number(
  202. ((100 - eIntactnessRate).toFixed(4) + "").slice(0, 4)
  203. );
  204. let obj = {};
  205. obj.value = Number(
  206. (
  207. (data[0].goodEquipments / data[0].Equipments).toFixed(4) * 100 +
  208. ""
  209. ).slice(0, 5)
  210. );
  211. obj.name = "正常设备数";
  212. this_.MiddleLeftPieViewList.data.push(obj);
  213. obj = {};
  214. obj.value = Number(
  215. (
  216. (data[0].limitedEquipments / data[0].Equipments).toFixed(4) *
  217. 100 +
  218. ""
  219. ).slice(0, 5)
  220. );
  221. obj.name = "受限设备数";
  222. this_.MiddleLeftPieViewList.data.push(obj);
  223. obj = {};
  224. obj.value = Number(
  225. (
  226. (data[0].scrapEquipments / data[0].Equipments).toFixed(4) * 100 +
  227. ""
  228. ).slice(0, 5)
  229. );
  230. obj.name = "停用/报废";
  231. this_.MiddleLeftPieViewList.data.push(obj);
  232. this_.MiddleLeftPieViewList.color = ["#339933", "#FFFF66", "#FF0033"];
  233. this_.MiddleLeftPieViewList.config.title = "设备工作状态情况";
  234. this_.MiddleLeftPieViewList.config.idSelector = "main2";
  235. this_.$nextTick(() => {
  236. // setTimeout(() => {
  237. // this_.$refs.middleCardLeft.getMiddleLeft(); // hhhh xxxx
  238. // }, 1000)
  239. });
  240. obj = {};
  241. let result = [
  242. {
  243. title: "",
  244. children: [
  245. {
  246. label: "设备总数",
  247. value: data[0].Equipments,
  248. danwei: "",
  249. },
  250. {
  251. label: "新增数",
  252. value: data[0].addEquipments,
  253. danwei: "",
  254. },
  255. {
  256. label: "正常数",
  257. value: data[0].goodEquipments,
  258. danwei: "",
  259. },
  260. {
  261. label: "受限数",
  262. value: data[0].limitedEquipments,
  263. danwei: "",
  264. },
  265. {
  266. label: "报废/停用数",
  267. value: data[0].scrapEquipments,
  268. danwei: "",
  269. },
  270. ],
  271. },
  272. {
  273. title: "",
  274. children: [
  275. {
  276. label: "计划维护数",
  277. value: data[0].weiHuNoEquipments,
  278. danwei: "",
  279. },
  280. {
  281. label: "已维护数",
  282. value: data[0].weiHuEquipments,
  283. danwei: "",
  284. },
  285. ],
  286. },
  287. {
  288. title: "",
  289. children: [
  290. {
  291. label: "计划检定/校准数",
  292. value: data[0].testNoEquipments,
  293. danwei: "",
  294. },
  295. {
  296. label: "已检定/校准数",
  297. value: data[0].testEquipments,
  298. danwei: "",
  299. },
  300. ],
  301. },
  302. {
  303. title: "",
  304. children: [
  305. {
  306. label: "本月计划核查数",
  307. value: data[0].checkNoEquipments,
  308. danwei: "",
  309. },
  310. {
  311. label: "本月已核查数",
  312. value: data[0].checkEquipments,
  313. danwei: "",
  314. },
  315. ],
  316. },
  317. {
  318. title: "",
  319. children: [
  320. {
  321. label: "完好率",
  322. value: eIntactnessRate,
  323. danwei: "%",
  324. },
  325. {
  326. label: "故障率",
  327. value: eBadRate,
  328. danwei: "%",
  329. },
  330. {
  331. label: "总值(万元)",
  332. value: zichan,
  333. danwei: "",
  334. },
  335. ],
  336. },
  337. ];
  338. //设备数量统计
  339. this_.sheBeiData.xData = [
  340. "设备总数",
  341. "新增数",
  342. "良好数",
  343. "受限数",
  344. "报废停用数",
  345. ];
  346. this_.sheBeiData.data.push(data[0].Equipments);
  347. this_.sheBeiData.data.push(data[0].addEquipments);
  348. this_.sheBeiData.data.push(data[0].goodEquipments);
  349. this_.sheBeiData.data.push(data[0].limitedEquipments);
  350. this_.sheBeiData.data.push(data[0].scrapEquipments);
  351. this_.sheBeiData.config.title = "设备数量情况一览";
  352. this_.sheBeiData.config.idSelector = "main8";
  353. this_.sheBeiDataShow = true;
  354. //
  355. this_.bottomData.xData = ["本月计划核查数", "本月已核查数"];
  356. this_.bottomData.data.push(data[0].checkNoEquipments);
  357. this_.bottomData.data.push(data[0].checkEquipments);
  358. this_.bottomData.config.title = "核查设备完成图";
  359. this_.bottomData.config.idSelector = "main4";
  360. // this_.$nextTick(()=>{
  361. // setTimeout(() => {
  362. // }, 1000)
  363. // })
  364. this_.zhuantaiEData.xData = [
  365. "计划检定/校准数",
  366. "已完成检定/校准数",
  367. ];
  368. this_.zhuantaiEData.data.push(data[0].testNoEquipments);
  369. this_.zhuantaiEData.data.push(data[0].testEquipments);
  370. this_.zhuantaiEData.config.title = "检定/校准设备完成图";
  371. this_.zhuantaiEData.config.idSelector = "main3";
  372. //维护设备数柱状图
  373. this_.sheBeiweiHuData.xData = ["计划维护数", "已完成数"];
  374. this_.sheBeiweiHuData.data.push(data[0].weiHuNoEquipments);
  375. this_.sheBeiweiHuData.data.push(data[0].weiHuEquipments);
  376. this_.sheBeiweiHuData.config.title = "设备维护柱状图";
  377. this_.sheBeiweiHuData.config.idSelector = "mainWeiHuZ";
  378. this_.$nextTick(() => {
  379. // setTimeout(() => {
  380. // this_.$refs.zhuantaiEDataref.getMiddleLeft(); // hhhh xxxx
  381. // this_.$refs.bottomCardLeft.getMiddleLeft(); // hhhh xxxx
  382. // this_.$refs.sheBeiWeiHuDataref.getMiddleLeft();
  383. // }, 1000)
  384. });
  385. let objRate = {};
  386. objRate.name = "完好率";
  387. objRate.value =eIntactnessRate;
  388. this_.eBgRateData.data.push(objRate);
  389. objRate = {};
  390. objRate.value =eBadRate;
  391. objRate.name = "故障率";
  392. this_.eBgRateData.data.push(objRate);
  393. this_.eBgRateData.color = ["#339933", "#FF0033"];
  394. this_.eBgRateData.config.title = "设备工作状态完成率";
  395. this_.eBgRateData.config.idSelector = "main1";
  396. //设备数维护
  397. let objweihu = {};
  398. objweihu.name = "计划维护数";
  399. objweihu.value = data[0].weiHuNoEquipments;
  400. this_.weiHuSheBeiData.data.push(objweihu);
  401. objweihu = {};
  402. objweihu.value = data[0].weiHuEquipments;
  403. objweihu.name = "已维护数";
  404. this_.weiHuSheBeiData.data.push(objweihu);
  405. this_.weiHuSheBeiData.color = ["#5470c6", "#38a838"];
  406. this_.weiHuSheBeiData.config.title = "设备维护完成率";
  407. this_.weiHuSheBeiData.config.idSelector = "mainWeiHu";
  408. //设备数核查
  409. let objHeCha = {};
  410. objHeCha.name = "本月计划核查数";
  411. objHeCha.value = data[0].checkNoEquipments;
  412. this_.sheBeiHeChaData.data.push(objHeCha);
  413. objHeCha = {};
  414. objHeCha.value = data[0].checkEquipments;
  415. objHeCha.name = "本月已核查数";
  416. this_.sheBeiHeChaData.data.push(objHeCha);
  417. this_.sheBeiHeChaData.color = ["#5470c6", "#38a838"];
  418. this_.sheBeiHeChaData.config.title = "设备核查完成率";
  419. this_.sheBeiHeChaData.config.idSelector = "mainHeCha";
  420. //设备数检定校准
  421. let objJianding = {};
  422. objJianding.name = "计划检定/校准数";
  423. objJianding.value = data[0].testNoEquipments;
  424. this_.jianDingjiaoZhunSheBeiData.data.push(objJianding);
  425. objJianding = {};
  426. objJianding.value = data[0].testEquipments;
  427. objJianding.name = "已完成数";
  428. this_.jianDingjiaoZhunSheBeiData.data.push(objJianding);
  429. this_.jianDingjiaoZhunSheBeiData.color = ["#5470c6", "#38a838"];
  430. this_.jianDingjiaoZhunSheBeiData.config.title = "设备检定/校准完成率";
  431. this_.jianDingjiaoZhunSheBeiData.config.idSelector = "mainJianDing";
  432. this_.$nextTick(() => {
  433. // setTimeout(() => {
  434. // this_.$refs.middleCardCenter.getMiddleLeft();// hhhh xxxx
  435. // this_.$refs.sheBeiHeChaRef.getMiddleLeft();//
  436. // this_.$refs.jiandingRef.getMiddleLeft();
  437. // }, 1000)
  438. });
  439. objRate = {};
  440. this_.topBarData = result;
  441. })
  442. .catch((err) => {
  443. console.log(err);
  444. });
  445. },
  446. getMiddleLeftPieView() {
  447. // [ { value: 1048, name: 'Search Engine' },]
  448. console.log();
  449. },
  450. async getCarouselShiYonglvTable() {
  451. let this_ = this;
  452. // const sql = `select she_bei_ming_chen,she_bei_bian_hao_ ,create_time_,she_bei_zhuang_ku,COUNT(*) AS pinlv FROM t_mjsbsy GROUP BY she_bei_bian_hao_ HAVING create_time_ LIKE '${this.month}%' ORDER BY pinlv DESC`;
  453. const sql = `select a.she_bei_ming_chen ,a.create_time_,a.shi_yong_qian_qin,b.name_,c.cun_fang_di_dian_,COUNT(*) AS pinlv FROM t_yqsbsydjb as a join ibps_party_employee as b on a.shi_yong_ren_ = b.ID_ join t_sbdj as c on a.yi_qi_bian_hao_ = c.id_ GROUP BY create_time_ HAVING create_time_ LIKE '${this.month}%' ORDER BY pinlv DESC`;
  454. let data1 = [];
  455. let res1 = [];
  456. this_.shiyonglvConfig.data = [];
  457. await curdPost("sql", sql)
  458. .then((res) => {
  459. const result = res.variables.data;
  460. result.forEach((item) => {
  461. data1 = [];
  462. data1.push(item.she_bei_ming_chen);
  463. data1.push(item.name_);
  464. data1.push(this_.timestampToTime(item.create_time_ / 1000));
  465. data1.push(item.cun_fang_di_dian_);
  466. // data1.push(item.create_time_);
  467. data1.push(item.shi_yong_qian_qin);
  468. data1.push(item.pinlv);
  469. this_.shiyonglvConfig.data.push(data1);
  470. // this_.$forceUpdate()
  471. });
  472. // console.log(this_.shiyonglvConfig.data);
  473. })
  474. .catch((err) => {
  475. console.log(err);
  476. });
  477. this.isup = true;
  478. },
  479. timestampToTime(timestamp) {
  480. var date = new Date(timestamp * 1000);
  481. var Y = date.getFullYear() + "-";
  482. var M =
  483. (date.getMonth() + 1 < 10
  484. ? "0" + (date.getMonth() + 1)
  485. : date.getMonth() + 1) + "-";
  486. var D =
  487. (date.getDate() < 10 ? "0" + date.getDate() : date.getDate()) + " ";
  488. var h = date.getHours() + ":";
  489. var m = date.getMinutes() + ":";
  490. var s = date.getSeconds();
  491. return Y + M + D;
  492. },
  493. async getCarouselTable() {
  494. this.config = {
  495. header: ["设备名称", "编号", "状态"],
  496. columnWidth: ["135","125", "50"],
  497. rowNum: 6,
  498. data: [],
  499. };
  500. let this_ = this;
  501. const sql =
  502. "select * from t_sbdj where she_bei_zhuang_ta ='停用' or she_bei_zhuang_ta ='报废' or she_bei_zhuang_ta ='报废/停用'";
  503. let data1 = [];
  504. await curdPost("sql", sql)
  505. .then((res) => {
  506. const result = res.variables.data;
  507. result.forEach((item) => {
  508. data1 = [];
  509. data1.push(item.she_bei_ming_cheng_);
  510. data1.push(item.she_bei_shi_bie_h);
  511. // data1.push(item.gui_ge_xing_hao_);
  512. data1.push(item.she_bei_zhuang_ta);
  513. this_.config.data.push(data1);
  514. });
  515. })
  516. .catch((err) => {
  517. console.log(err);
  518. });
  519. },
  520. getAllMonyInt(monyArr) {
  521. let mony = 0;
  522. let filterMony;
  523. monyArr.forEach((item) => {
  524. if (item.mony.includes("元")) {
  525. filterMony = item.mony.slice(0, item.mony.length - 1) * 1;
  526. mony += filterMony;
  527. }
  528. });
  529. // console.log(mony.toFixed(2))
  530. // return mony.toFixed(2);
  531. return mony;
  532. },
  533. // async getSheBeiMony (){
  534. // let this_= this;
  535. // const sql = "select zi_chan_yuan_zhi_ as mony FROM t_sbdj";
  536. // await curdPost("sql",sql).then(res=>{
  537. // let data = res.variables.data;
  538. // this_.zichan= this_.getAllMonyInt(data);
  539. // console.log(this_.zichan);
  540. // }).catch(err=>{
  541. // console.error(err)
  542. // })
  543. // }
  544. },
  545. };
  546. </script>
  547. <style lang="scss" scoped>
  548. .content {
  549. width: 100%;
  550. height: 100%;
  551. background-color: #030409;
  552. position: absolute;
  553. color: #fff;
  554. z-index: 999;
  555. #dv-full-screen-container {
  556. background-image: url("./img/bg.png");
  557. background-size: 100% 100%;
  558. box-shadow: 0 0 3px blue;
  559. display: flex;
  560. flex-direction: column;
  561. }
  562. .main-content {
  563. flex: 1;
  564. display: flex;
  565. flex-direction: column;
  566. }
  567. .block-left-right-content {
  568. flex: 1;
  569. display: flex;
  570. margin-top: 0.8%;
  571. }
  572. .block-top-bottom-content {
  573. flex: 1;
  574. display: flex;
  575. flex-direction: column;
  576. box-sizing: border-box;
  577. padding-left: 0.8%;
  578. }
  579. .block-top-content {
  580. height: 55%;
  581. display: flex;
  582. flex-grow: 0;
  583. box-sizing: border-box;
  584. padding-bottom: 0.8%;
  585. }
  586. .header {
  587. position: relative;
  588. width: 100%;
  589. height: 10%;
  590. display: flex;
  591. justify-content: space-between;
  592. flex-shrink: 0;
  593. box-sizing: border-box;
  594. overflow: hidden;
  595. .left,
  596. .right {
  597. width: 25%;
  598. height: 60px;
  599. }
  600. .center {
  601. width: 40%;
  602. height: 60px;
  603. margin-top: 30px;
  604. }
  605. .title {
  606. position: absolute;
  607. font-size: 30px;
  608. font-weight: bold;
  609. left: 50%;
  610. top: 15px;
  611. transform: translateX(-50%);
  612. }
  613. .time,
  614. .back {
  615. width: 8%;
  616. cursor: pointer;
  617. height: 2.825rem;
  618. line-height: 2.825rem;
  619. text-align: center;
  620. margin-top: 2.5%;
  621. flex: 1;
  622. position: absolute;
  623. color: #ffffff;
  624. }
  625. .time {
  626. display: flex;
  627. justify-content: flex-end;
  628. width: 20%;
  629. right: 75%;
  630. }
  631. .back {
  632. left: 75%;
  633. }
  634. }
  635. .topCard {
  636. width: 100%;
  637. height: 18%;
  638. box-sizing: border-box;
  639. overflow: hidden;
  640. }
  641. .bottomCard {
  642. height: 36%;
  643. overflow: hidden;
  644. box-sizing: border-box;
  645. }
  646. .middleCard {
  647. height: 38%;
  648. overflow: hidden;
  649. box-sizing: border-box;
  650. }
  651. .middleCard,
  652. .bottomCard {
  653. width: 96%;
  654. margin-left: 30px;
  655. // margin-top: 30px;
  656. div {
  657. display: inline-block;
  658. }
  659. .middleCardLeft {
  660. width: 26%;
  661. height: 100%;
  662. box-sizing: border-box;
  663. overflow: hidden;
  664. }
  665. // .middleCardCenter{
  666. // width: 25%;
  667. // height: 100%;
  668. // box-sizing: border-box;
  669. // overflow: hidden;
  670. // }
  671. .middleCardRight {
  672. width: 26%;
  673. height: 100%;
  674. box-sizing: border-box;
  675. overflow: hidden;
  676. }
  677. .middleCardRight1 {
  678. width: 44%;
  679. height: 100%;
  680. box-sizing: border-box;
  681. overflow: hidden;
  682. }
  683. padding: 2px;
  684. }
  685. .bottomCard {
  686. display: flex;
  687. div {
  688. display: inline-block;
  689. }
  690. .bottomCardLeft0,
  691. .bottomCardLeft {
  692. height: 100%;
  693. overflow: hidden;
  694. box-sizing: border-box;
  695. width: 100%;
  696. }
  697. .bottomCardLeft {
  698. height: 100%;
  699. overflow: hidden;
  700. box-sizing: border-box;
  701. width: 100%;
  702. }
  703. .bottomCardright {
  704. height: 100%;
  705. overflow: hidden;
  706. box-sizing: border-box;
  707. width: 100%;
  708. }
  709. }
  710. }
  711. .dv-decoration-10 {
  712. width: 95%;
  713. margin: 7px 2% 0;
  714. height: 5px;
  715. }
  716. </style>