satisfaction.vue 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <template>
  2. <div>
  3. <el-dialog
  4. title="满意度统计图"
  5. :visible.sync="generalShow"
  6. width="80%"
  7. top="0"
  8. append-to-body
  9. custom-class="customClass"
  10. @close="close"
  11. >
  12. <div>
  13. <div class="topBorder">
  14. <div ref="Echart" class="chart" />
  15. </div>
  16. <div class="centerBorder">
  17. <div class="cenSin" style="border-right: 1px solid #ccc">
  18. <div ref="Echart1" class="chart" />
  19. </div>
  20. <div class="cenSin">
  21. <div ref="Echart2" class="chart" />
  22. </div>
  23. </div>
  24. <div class="centerBorder">
  25. <div class="cenSin" style="border-right: 1px solid #ccc">
  26. <div ref="Echart3" class="chart" />
  27. </div>
  28. <div class="cenSin">
  29. <div ref="Echart4" class="chart" />
  30. </div>
  31. </div>
  32. </div>
  33. </el-dialog>
  34. </div>
  35. </template>
  36. <script>
  37. import satisfactionJS from './satisfactionJS'
  38. export default {
  39. mixins: [satisfactionJS],
  40. props: {
  41. show: {
  42. type: Boolean,
  43. default: false
  44. },
  45. generalList: {
  46. type: Array,
  47. default: () => {
  48. return []
  49. }
  50. }
  51. },
  52. data () {
  53. return {
  54. generalShow: this.show,
  55. id: ''
  56. }
  57. },
  58. watch: {
  59. show: {
  60. handler () {
  61. // this.generalShow = this.show
  62. },
  63. deep: true,
  64. immediate: true
  65. }
  66. },
  67. methods: {
  68. close () {
  69. this.$emit('generalClose', false)
  70. }
  71. }
  72. }
  73. </script>
  74. <style lang="less" scoped>
  75. /deep/ .customClass .el-dialog__header{
  76. border-bottom: none;
  77. }
  78. /deep/ .customClass .el-dialog__footer{
  79. border-top: none;
  80. }
  81. .topBorder{
  82. // border-bottom: 1px solid #ccc;
  83. }
  84. .chart{
  85. width: 100%;
  86. height: 300px;
  87. }
  88. .centerBorder{
  89. display: flex;
  90. align-items: center;
  91. justify-content: space-between;
  92. border-top: 1px solid #ccc;
  93. .cenSin{
  94. width: 48%;
  95. }
  96. }
  97. </style>