spic-decision-support-center.vue 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890
  1. <template>
  2. <a-layout :class="$style.mainDiv">
  3. <a-layout-header :class="$style.header">
  4. <div :class="$style.title"> </div>
  5. <div :class="$style.rightDiv">
  6. <div :class="$style.titles">审计总览 </div>
  7. <div :class="$style.year">
  8. <a-date-picker
  9. v-model="planYear"
  10. :class="$style.yearSelect"
  11. allow-clear
  12. mode="year"
  13. picker="YYYY"
  14. format="YYYY"
  15. :input-read-only="true"
  16. :open="yearOpen"
  17. placeholder="选择年份"
  18. @change="handlerChange('year', $event)"
  19. @panelChange="panelChange"
  20. @openChange="openChange"
  21. />
  22. </div>
  23. <div :class="$style.group">
  24. <div v-show="auditOrg.length === 0" :class="$style.holder" @click="holderClick"
  25. >审计机构
  26. </div>
  27. <a-form-model-item :label="null" prop="auditOrg">
  28. <!-- <sd-group-picker v-model="auditOrg" :single="true" :root-node="rootNode" /> -->
  29. <audit-group-picker
  30. v-model="auditOrg"
  31. :single="true"
  32. :read-only="false"
  33. :root-node="rootNode"
  34. @change="handlerChange('org', $event)"
  35. />
  36. </a-form-model-item>
  37. </div>
  38. <!--
  39. 需求确认去掉关闭按钮
  40. <div :class="$style.close" @click="closeWindow">
  41. <a-icon type="close"></a-icon>
  42. </div> -->
  43. </div>
  44. </a-layout-header>
  45. <a-layout-content :class="$style.contentDiv">
  46. <!-- 上部div (总部显示)-->
  47. <iam-audit-dsc-top-div
  48. v-if="!isTwo"
  49. :class="$style.topDiv"
  50. :unid-id="auditOrg"
  51. :plan-year="planYear"
  52. ></iam-audit-dsc-top-div>
  53. <!-- 上部div (二级单位显示)-->
  54. <spicAuditDscTopDiv
  55. v-if="isTwo"
  56. :class="$style.topDiv"
  57. :unid-id="auditOrg"
  58. :plan-year="planYear"
  59. ></spicAuditDscTopDiv>
  60. <!-- 中部div -->
  61. <!-- <iam-audit-dsc-center-div
  62. :unid-id="auditOrg"
  63. :plan-year="planYear"
  64. :class="$style.centerDiv"
  65. ></iam-audit-dsc-center-div> -->
  66. <!-- 底部div -->
  67. <a-row>
  68. <a-col :span="12">
  69. <iam-audit-dsc-bottom-div
  70. :key="key"
  71. title="审计发现问题"
  72. :unid-id="auditOrg"
  73. :options="chartOne"
  74. :class="$style.bottomDiv"
  75. :years="planYear"
  76. @echartClick="handlerOneClick"
  77. @getYear="handlerYear('1', $event)"
  78. ></iam-audit-dsc-bottom-div>
  79. </a-col>
  80. <a-col :span="12">
  81. <iam-audit-dsc-bottom-div
  82. :key="key"
  83. title="审计问题分析"
  84. :options="chartTwo"
  85. :unid-id="auditOrg"
  86. :class="$style.bottomDiv"
  87. :years="planYear"
  88. @echartClick="handlerTwoClick"
  89. @getYear="handlerYear('2', $event)"
  90. ></iam-audit-dsc-bottom-div>
  91. </a-col>
  92. </a-row>
  93. <a-row>
  94. <a-col :span="12">
  95. <iam-audit-dsc-bottom-div
  96. :key="key"
  97. title="问题涉及金额"
  98. :options="chartThree"
  99. :unid-id="auditOrg"
  100. :class="$style.bottomDiv"
  101. :years="planYear"
  102. @echartClick="handlerThreeClick"
  103. @getYear="handlerYear('3', $event)"
  104. ></iam-audit-dsc-bottom-div>
  105. </a-col>
  106. <a-col :span="12">
  107. <iam-audit-dsc-bottom-div
  108. :key="key"
  109. title="年度审计数量<span style='color:#e73030'>TOP5</span>的问题"
  110. :options="chartFour"
  111. :unid-id="auditOrg"
  112. :class="$style.bottomDiv"
  113. :years="planYear"
  114. @echartClick="handlerFourClick"
  115. @getYear="handlerYear('4', $event)"
  116. ></iam-audit-dsc-bottom-div>
  117. </a-col>
  118. </a-row>
  119. <a-row>
  120. <a-col :span="12">
  121. <iam-audit-dsc-bottom-div
  122. :key="key"
  123. title="审计整改情况"
  124. :options="chartFive"
  125. :unid-id="auditOrg"
  126. :class="$style.bottomDiv"
  127. :years="planYear"
  128. @echartClick="handlerFiveClick"
  129. @changeLegend="changeLegend"
  130. @getYear="handlerYear('5', $event)"
  131. ></iam-audit-dsc-bottom-div>
  132. </a-col>
  133. <a-col :span="12">
  134. <iam-audit-dsc-bottom-div
  135. :key="key"
  136. title="需要整改的问题"
  137. :options="chartSex"
  138. :unid-id="auditOrg"
  139. :class="$style.bottomDiv"
  140. :years="planYear"
  141. @echartClick="handlerSexClick"
  142. @getYear="handlerYear('6', $event)"
  143. ></iam-audit-dsc-bottom-div>
  144. </a-col>
  145. </a-row>
  146. <a-row>
  147. <a-col :span="12">
  148. <iam-audit-dsc-bottom-div
  149. :key="key"
  150. title="被审计整改情况"
  151. :options="chartSeven"
  152. :unid-id="auditOrg"
  153. :class="$style.bottomDiv"
  154. :years="planYear"
  155. @echartClick="handlerSevenClick"
  156. @changeLegend="changeLegend"
  157. @getYear="handlerYear('7', $event)"
  158. ></iam-audit-dsc-bottom-div>
  159. </a-col>
  160. <a-col :span="12">
  161. <iam-audit-dsc-bottom-div
  162. :key="key"
  163. title="被审计需整改问题"
  164. :options="chartEight"
  165. :unid-id="auditOrg"
  166. :class="$style.bottomDiv"
  167. :years="planYear"
  168. @echartClick="handlerEightClick"
  169. @getYear="handlerYear('8', $event)"
  170. ></iam-audit-dsc-bottom-div>
  171. </a-col>
  172. </a-row>
  173. </a-layout-content>
  174. </a-layout>
  175. </template>
  176. <script>
  177. import minxoptions from './minxisoptions'
  178. import auditGroupPicker from '@product/iam/components/picker/audit-group-picker.vue'
  179. import spicAuditDscTopDiv from './components/spic-audit-dsc-top-div.vue'
  180. import axios from '@/common/services/axios-instance'
  181. import iamAuditDscService from './components/iam-audit-dsc-service'
  182. import { getUserInfo } from '@/common/store-mixin'
  183. import components from './_import-components/spic-decision-support-center-import'
  184. export default {
  185. name: 'SpicDecisionSupportCenter',
  186. metaInfo: {
  187. title: '审计总览 ',
  188. },
  189. components: {
  190. auditGroupPicker,
  191. spicAuditDscTopDiv,
  192. ...components,
  193. },
  194. mixins: [minxoptions],
  195. data() {
  196. return {
  197. yearOpen: false,
  198. key: 0,
  199. auditOrg: [],
  200. options: [],
  201. planYear: undefined,
  202. rootNode: {},
  203. isTwo: false,
  204. }
  205. },
  206. watch: {
  207. // 监听数据,更新之后需要刷新图标
  208. planYear() {
  209. this.key++
  210. },
  211. auditOrg() {
  212. this.key++
  213. },
  214. },
  215. created() {
  216. // this.options = []
  217. // let curYear = new Date().getFullYear() - 5
  218. // for (let i = 0; i < 10; i++) {
  219. // this.options.push({
  220. // value: curYear + '',
  221. // label: curYear,
  222. // })
  223. // curYear++
  224. // }
  225. let userInfo = getUserInfo()
  226. const params = {
  227. orgId: userInfo.deptId,
  228. }
  229. // iamAuditDscService.getUserInfo(params).then((res) => {
  230. // this.id = res.data
  231. // const deptCode = userInfo.deptId.toString()
  232. // const deptName = userInfo.deptName
  233. // this.rootNode = { code: deptCode, name: deptName, id: this.id }
  234. // })
  235. axios({
  236. url: 'api/xcoa-mobile/v1/iamorg/getCurrentUserGroup',
  237. method: 'get',
  238. }).then((res) => {
  239. userInfo = res.data
  240. params.orgId = res.data.id
  241. axios({
  242. url: 'api/xcoa-mobile/v1/iamorg/findIamOrg',
  243. method: 'post',
  244. params,
  245. })
  246. .then((res) => {
  247. this.id = res.data.id
  248. const deptCode = res.data.orgId + ''
  249. const deptName = res.data.orgName
  250. this.rootNode = { code: deptCode, name: deptName, id: this.id }
  251. // this.id = res.data.id
  252. // const deptCode = userInfo.id.toString()
  253. // const deptName = res.data.orgName
  254. // this.rootNode = { code: deptCode, name: deptName, id: this.id }
  255. // bug22421 默认统计机构设置到本机构及一下
  256. const currNoe = {
  257. id: res.data.orgId,
  258. // oldId: 0,
  259. text: deptName,
  260. name: deptName,
  261. title: deptName,
  262. code: deptCode,
  263. leaf: false,
  264. isleaf: false,
  265. props: {},
  266. children: [],
  267. differentDisplay: false,
  268. expandable: true,
  269. type: 'Group',
  270. }
  271. this.auditOrg.push(currNoe)
  272. var code = currNoe.id
  273. axios({
  274. url: 'api/xcoa-mobile/v1/iamtarget/checkGroup?code=' + code,
  275. method: 'get',
  276. }).then((res) => {
  277. this.isTwo = res.data
  278. // console.log('shifou二级currNoe', this.isTwo)
  279. })
  280. })
  281. .finally(() => {
  282. this.loadData()
  283. })
  284. })
  285. // 22738 年份默认为当年
  286. this.planYear = new Date().getFullYear().toString()
  287. },
  288. mounted() {},
  289. methods: {
  290. // type 1-6 各自图表的type选取时间返回对应的年份year
  291. handlerYear(type, year) {
  292. debugger
  293. // console.log('日期返回', type, year)
  294. var unit = this.auditOrg
  295. const params = {
  296. unitId: unit[0].id,
  297. planYear: year,
  298. }
  299. if (type * 1 === 1) {
  300. // 发现问题数(柱状图)
  301. this.findQuestionNum(params)
  302. } else if (type * 1 === 2) {
  303. const params = {
  304. unitId: unit[0].id,
  305. planYear: year,
  306. name: 4,
  307. }
  308. // 审计问题分析
  309. this.findQuestionQuery1(params)
  310. } else if (type * 1 === 3) {
  311. // 问题涉及金额
  312. this.findAmountNum(params)
  313. } else if (type * 1 === 4) {
  314. const params = {
  315. unitId: unit[0].id,
  316. planYear: year,
  317. name: 4,
  318. }
  319. // 年度TOP5数据
  320. this.findTopQuery1(params)
  321. } else if (type * 1 === 5) {
  322. const params = {
  323. unitId: unit[0].id,
  324. planYear: year,
  325. name: 4,
  326. }
  327. // 审计整改情况
  328. this.findRectQuery1(params)
  329. } else if (type * 1 === 6) {
  330. // 需要整改的问题
  331. this.findRectQuestionNum(params)
  332. } else if (type * 1 === 7) {
  333. const params = {
  334. unitId: unit[0].id,
  335. planYear: year,
  336. name: 4,
  337. }
  338. // 被审计整改情况
  339. this.findRectQuerySeven1(params)
  340. } else if (type * 1 === 8) {
  341. // 被审计需整改问题
  342. this.findRectQuestionNumEight(params)
  343. }
  344. },
  345. // 点击事件
  346. handlerChange(type, e) {
  347. var code = this.auditOrg[0].id
  348. console.log('点击============groupgroupgroup-----', code)
  349. axios({
  350. url: 'api/xcoa-mobile/v1/iamtarget/checkGroup?code=' + code,
  351. method: 'get',
  352. }).then((res) => {
  353. this.isTwo = res.data
  354. console.log('shifou二级', this.isTwo)
  355. })
  356. // console.log('输出1111111111', type, e)
  357. this.loadData()
  358. },
  359. loadData() {
  360. const _this = this
  361. var year = this.planYear
  362. var unit = this.auditOrg
  363. // console.log(unit[0].id, 'params--unit[0].idunit[0].id')
  364. const params = {
  365. unitId: unit[0].id,
  366. planYear: this.planYear,
  367. }
  368. // 发现问题数(柱状图)
  369. this.findQuestionNum(params)
  370. // 审计问题分析
  371. this.findQuestionQuery()
  372. // 问题涉及金额
  373. this.findAmountNum(params)
  374. // 年度TOP5数据
  375. this.findTopQuery()
  376. // 审计整改情况
  377. this.findRectQuery()
  378. // 需要整改的问题
  379. this.findRectQuestionNum(params)
  380. // 被审计整改情况
  381. this.findRectQuerySeven()
  382. // 被审计需整改问题
  383. this.findRectQuestionNumEight(params)
  384. },
  385. // 发现问题数(柱状图)
  386. findQuestionNum(params) {
  387. const _this = this
  388. iamAuditDscService.findQuestionNumQuery(params).then((res) => {
  389. // console.log('柱状图11111----', res.data)
  390. const datas = res.data[0].data
  391. // console.log('柱状图11111----2', datas)
  392. let arr = []
  393. this.$nextTick(() => {
  394. if (datas?.length > 0) {
  395. arr = datas.map((itc) => {
  396. // console.log(itc, 'data------------')
  397. const obj = {
  398. name: itc?.name || null,
  399. value: itc?.value || 0,
  400. value1: itc?.text || 0,
  401. value2: itc?.percentage || 0,
  402. }
  403. return obj
  404. })
  405. } else {
  406. arr = []
  407. }
  408. // const datas = res.data
  409. // let arr = []
  410. // this.$nextTick(() => {
  411. // if (datas?.length > 0) {
  412. // arr = datas.map((itc) => {
  413. // console.log(itc, 'data------------')
  414. // const obj = {
  415. // name: itc.data[0]?.name || null,
  416. // value: itc.data[0]?.value || 0,
  417. // value1: itc.data[0]?.text || 0,
  418. // value2: itc.data[0]?.percentage || 0,
  419. // }
  420. // return obj
  421. // })
  422. // } else {
  423. // arr = []
  424. // }
  425. this.oneChartsMap(arr)
  426. })
  427. })
  428. },
  429. // 审计问题分析
  430. findQuestionQuery() {
  431. var unit = this.auditOrg
  432. const params = {
  433. unitId: unit[0].id,
  434. planYear: this.planYear,
  435. name: 4,
  436. }
  437. const _this = this
  438. iamAuditDscService.findQuestionQuery(params).then((res) => {
  439. const data = res.data
  440. // console.log('审计问题分析-------', data)
  441. _this.$nextTick(() => {
  442. const arr = data.map((itc) => {
  443. const obj = {
  444. name: itc.data[0].name,
  445. value: itc.data[0].value || 0,
  446. value2: itc.data[0].value1 || 0,
  447. // value3: itc.data[0].value2 || 0,
  448. }
  449. return obj
  450. })
  451. this.twoChartMap(arr)
  452. })
  453. })
  454. },
  455. findQuestionQuery1(params) {
  456. const _this = this
  457. iamAuditDscService.findQuestionQuery(params).then((res) => {
  458. const data = res.data
  459. _this.$nextTick(() => {
  460. const arr = data.map((itc) => {
  461. const obj = {
  462. name: itc.data[0].name,
  463. value: itc.data[0].value,
  464. value2: itc.data[0].value1,
  465. // value3: itc.data[0].value2,
  466. }
  467. return obj
  468. })
  469. this.twoChartMap(arr)
  470. })
  471. })
  472. },
  473. // 问题涉及金额
  474. findAmountNum(params) {
  475. const _this = this
  476. iamAuditDscService.getAuditFindMoneyList(params).then((res) => {
  477. const data = res.data
  478. // console.log('问题涉及金额-----------', data)
  479. _this.$nextTick(() => {
  480. const datas = JSON.parse(JSON.stringify(res.data[0]))
  481. const arr = datas.data.map((itc) => {
  482. const obj = {
  483. name: itc.name,
  484. value: itc.value || 0,
  485. }
  486. return obj
  487. })
  488. this.threeChartMap(arr)
  489. })
  490. })
  491. },
  492. // 年度TOP5
  493. findTopQuery() {
  494. var unit = this.auditOrg
  495. const params = {
  496. unitId: unit[0].id,
  497. planYear: this.planYear,
  498. name: 4,
  499. }
  500. const _this = this
  501. iamAuditDscService.getTOPResult(params).then((res) => {
  502. const data = res.data.filter((itcv) => itcv.data?.length > 0)
  503. console.log('年度TOP 5-------', data)
  504. let yearsc = ''
  505. _this.$nextTick(() => {
  506. const arr = data.map((itc) => {
  507. yearsc = itc.data[0].value
  508. const datas = []
  509. itc.data.forEach((itcv) => {
  510. datas.push({ label: itcv.name, value: itcv?.text || 0 })
  511. })
  512. const obj = {
  513. name: yearsc,
  514. data: datas,
  515. }
  516. return obj
  517. })
  518. console.log('年度TOP', arr)
  519. _this.fourChartMap(arr)
  520. })
  521. })
  522. },
  523. findTopQuery1(params) {
  524. const _this = this
  525. iamAuditDscService.getTOPResult(params).then((res) => {
  526. const data = res.data.filter((itcv) => itcv.data?.length > 0)
  527. let yearsc = ''
  528. let arr = []
  529. _this.$nextTick(() => {
  530. console.log(data, 'data------')
  531. if (data?.length > 0) {
  532. arr = data.map((itc) => {
  533. yearsc = itc.data[0].value
  534. const datas = []
  535. itc.data.forEach((itcv) => {
  536. datas.push({ label: itcv.name, value: itcv?.text * 1 || 0 })
  537. })
  538. const obj = {
  539. name: yearsc,
  540. data: datas,
  541. }
  542. return obj
  543. })
  544. } else {
  545. arr = []
  546. }
  547. console.log(arr, 'shuju1---arr')
  548. _this.fourChartMap(arr)
  549. })
  550. })
  551. },
  552. // 审计整改情况
  553. findRectQuery() {
  554. var unit = this.auditOrg
  555. const params = {
  556. unitId: unit[0].id,
  557. planYear: this.planYear,
  558. name: 4,
  559. }
  560. const _this = this
  561. iamAuditDscService.getRectResult(params).then((res) => {
  562. const data = res.data
  563. // console.log('审计整改情况------', data)
  564. _this.$nextTick(() => {
  565. const arr = data.map((itc) => {
  566. const obj = {
  567. name: itc.data[0].value,
  568. // value: 0,
  569. value2: itc.data[0].text || 0,
  570. // value3: itc.data[0].id,
  571. value4: itc.data[0].percentage || 0,
  572. }
  573. return obj
  574. })
  575. // console.log('xilie--', arr)
  576. this.fiveChartsMap(arr)
  577. })
  578. })
  579. },
  580. findRectQuery1(params) {
  581. const _this = this
  582. iamAuditDscService.getRectResult(params).then((res) => {
  583. const data = res.data
  584. _this.$nextTick(() => {
  585. const arr = data.map((itc) => {
  586. const obj = {
  587. name: itc.data[0].value,
  588. // value: 0,
  589. value2: itc.data[0].text || 0,
  590. // value3: itc.data[0].id,
  591. value4: itc.data[0].percentage || 0,
  592. }
  593. return obj
  594. })
  595. this.fiveChartsMap(arr)
  596. })
  597. })
  598. },
  599. // 需要整改的问题
  600. findRectQuestionNum(params) {
  601. const _this = this
  602. iamAuditDscService.getQuestionRectResult(params).then((res) => {
  603. const data = res.data
  604. // console.log('需要整改的问题', data)
  605. _this.$nextTick(() => {
  606. const datas = JSON.parse(JSON.stringify(res.data[0]))
  607. const arr = datas.data.map((itc) => {
  608. const obj = {
  609. name: itc.name,
  610. value: itc.value || 0,
  611. value2: itc.percentage || 0,
  612. }
  613. return obj
  614. })
  615. this.sexChartsMap(arr)
  616. })
  617. })
  618. },
  619. findRectQuerySeven() {
  620. var unit = this.auditOrg
  621. const params = {
  622. unitId: unit[0].id,
  623. planYear: this.planYear,
  624. name: 4,
  625. }
  626. const _this = this
  627. iamAuditDscService.getSevenRectResult(params).then((res) => {
  628. const data = res.data
  629. _this.$nextTick(() => {
  630. const arr = data.map((itc) => {
  631. const obj = {
  632. name: itc.data[0].value,
  633. value2: itc.data[0].text || 0,
  634. value4: itc.data[0].percentage || 0,
  635. }
  636. return obj
  637. })
  638. this.SevenChartsMap(arr)
  639. })
  640. })
  641. },
  642. findRectQuerySeven1(params) {
  643. const _this = this
  644. iamAuditDscService.getSevenRectResult(params).then((res) => {
  645. const data = res.data
  646. _this.$nextTick(() => {
  647. const arr = data.map((itc) => {
  648. const obj = {
  649. name: itc.data[0].value,
  650. value2: itc.data[0].text || 0,
  651. value4: itc.data[0].percentage || 0,
  652. }
  653. return obj
  654. })
  655. this.SevenChartsMap(arr)
  656. })
  657. })
  658. },
  659. findRectQuestionNumEight(params) {
  660. const _this = this
  661. iamAuditDscService.getEightQuestionRectResult(params).then((res) => {
  662. const data = res.data
  663. // console.log('需要整改的问题', data)
  664. _this.$nextTick(() => {
  665. const datas = JSON.parse(JSON.stringify(res.data[0]))
  666. const arr = datas.data.map((itc) => {
  667. const obj = {
  668. name: itc.name,
  669. value: itc.value || 0,
  670. value2: itc.percentage || 0,
  671. }
  672. return obj
  673. })
  674. this.eightChartsMap(arr)
  675. })
  676. })
  677. },
  678. // 1 审计发现问题
  679. handlerOneClick(item) {
  680. console.log(item, '-1-')
  681. },
  682. // 2 审计问题分析
  683. handlerTwoClick(item) {
  684. console.log(item, '-2-')
  685. },
  686. // 3 问题涉及金额
  687. handlerThreeClick(item) {
  688. console.log(item, '-3-')
  689. },
  690. // 4 年度审计数量TOP5的问题
  691. handlerFourClick(item) {
  692. debugger
  693. console.log(item, '年度审计数量TOP5点击')
  694. var unit = this.auditOrg
  695. var year = item.name
  696. const params = {
  697. unitId: unit[0].id,
  698. planYear: year,
  699. name: 4,
  700. }
  701. const url =
  702. '#/spic-audit-dsc-topfive-list?params=' +
  703. encodeURIComponent(JSON.stringify(params)) +
  704. '&type=top5list' +
  705. '&year=' +
  706. year
  707. window.open(url)
  708. console.log(item, '-4-')
  709. },
  710. // 5 审计整改情况
  711. handlerFiveClick(item) {
  712. console.log(item, '-5-')
  713. },
  714. // 6 需要整改的问题
  715. handlerSexClick(item) {
  716. console.log(item, '-6-')
  717. },
  718. handlerSevenClick(item) {
  719. console.log(item, '-7-')
  720. },
  721. handlerEightClick(item) {
  722. console.log(item, '-8-')
  723. },
  724. /**
  725. * 关闭当前窗口
  726. */
  727. closeWindow() {
  728. window.opener = window
  729. const win = window.open('', '_self')
  730. win.close()
  731. },
  732. holderClick() {
  733. document.querySelector('.group_iam-audit-dsc-main_product .ant-select').click()
  734. },
  735. /**
  736. * 打开或关闭年度选择
  737. */
  738. openChange(open) {
  739. this.yearOpen = open
  740. },
  741. /**
  742. * 年份选择时,关闭弹窗
  743. */
  744. panelChange(value) {
  745. this.planYear = value.format('YYYY')
  746. this.yearOpen = !this.yearOpen
  747. this.loadData()
  748. },
  749. },
  750. }
  751. </script>
  752. <style module lang="scss">
  753. @use '@/common/design' as *;
  754. $header-height: 60px;
  755. .main-div {
  756. min-height: 100%;
  757. .header {
  758. display: flex;
  759. height: 60px;
  760. padding: 0 30px;
  761. font-size: 25px;
  762. line-height: 60px;
  763. color: #fff;
  764. background: #1b365d;
  765. .title {
  766. float: left;
  767. width: 50%;
  768. background: url('~@custom/images/logo.png') no-repeat left;
  769. }
  770. .right-div {
  771. .titles {
  772. padding-right: 50px;
  773. font-size: 18px;
  774. color: #fff;
  775. }
  776. display: flex;
  777. justify-content: flex-end;
  778. width: 50%;
  779. :global(.ant-form-item-control) {
  780. :global(.ant-select-selection--multiple .ant-select-selection__choice) {
  781. color: #fff;
  782. background-color: transparent;
  783. }
  784. :global(.ant-select-selection__choice__remove) {
  785. color: #fff;
  786. }
  787. :global(.ant-select-focused) {
  788. box-shadow: none;
  789. }
  790. :global(.ant-select) {
  791. width: 200px;
  792. margin-top: 11px;
  793. vertical-align: baseline;
  794. cursor: pointer;
  795. }
  796. :global(.ant-select-selection--multiple) {
  797. cursor: pointer;
  798. }
  799. :global(.ant-select-search__field) {
  800. display: none;
  801. }
  802. :global(.ant-select-selection) {
  803. background-color: transparent;
  804. border: none;
  805. }
  806. :global(.icon_audit-value-picker_product) {
  807. color: #fff;
  808. }
  809. }
  810. :global(.ant-input) {
  811. color: #fff;
  812. background-color: transparent;
  813. border: none;
  814. }
  815. :global(.ant-calendar-picker-icon) {
  816. color: #fff;
  817. }
  818. .year {
  819. margin-right: 15px;
  820. .year-select {
  821. display: block;
  822. width: 120px;
  823. margin-top: 15px;
  824. :global(.ant-calendar-picker-input) {
  825. cursor: pointer;
  826. }
  827. }
  828. }
  829. .group {
  830. position: relative;
  831. .holder {
  832. position: absolute;
  833. left: 10px;
  834. z-index: 1;
  835. font-size: 16px;
  836. color: #bfbfbf;
  837. cursor: pointer;
  838. }
  839. :global(.ant-select-selection) {
  840. overflow-y: hidden;
  841. }
  842. :global(.ant-select-selection__choice) {
  843. border: none;
  844. }
  845. :global(.ant-select-selection__choice__remove) {
  846. display: none;
  847. }
  848. }
  849. .close {
  850. margin-left: 15px;
  851. font-size: 22px;
  852. cursor: pointer;
  853. }
  854. }
  855. }
  856. .content-div {
  857. margin: 20px;
  858. }
  859. .top-div {
  860. background: transparent;
  861. }
  862. .center-div {
  863. margin-top: 20px;
  864. }
  865. .bottom-div {
  866. margin-top: 20px;
  867. }
  868. }
  869. </style>