StepsMyBox.vue 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. <template>
  2. <!-- 全流程管理组件 -->
  3. <div class="StepsMyBox">
  4. <div style="padding: 10px">
  5. <el-button type="primary" icon="el-icon-arrow-left" @click="backEvent()">返回上级</el-button>
  6. </div>
  7. <!-- 全流程管理主题 -->
  8. <div class="StepsMyBox_main">
  9. <!-- 左侧项目明细 -->
  10. <div class="StepsMyBox_main_left">
  11. <div class="StepsMyBox_main_left_main">
  12. <div class="StepsMyBox_main_left_main_title">2018年张江镇基本农田审计项目</div>
  13. <div class="StepsMyBox_main_left_main_info">基本信息</div>
  14. <div class="StepsMyBox_main_left_main_info">
  15. <div>年份:</div>
  16. <div>2018-05-12</div>
  17. </div>
  18. <div class="StepsMyBox_main_left_main_info">
  19. <div>项目类型:</div>
  20. <div>土地资源</div>
  21. </div>
  22. <div class="StepsMyBox_main_left_main_info">
  23. <div>涉及街镇:</div>
  24. <div>张江镇、川沙镇</div>
  25. </div>
  26. <div class="StepsMyBox_main_left_main_info">
  27. <div>参与人员:</div>
  28. <div>5个</div>
  29. </div>
  30. <div class="StepsMyBox_main_left_main_info">
  31. <div>追踪问题:</div>
  32. <div>5个</div>
  33. </div>
  34. </div>
  35. </div>
  36. <!-- 右侧流程明细 -->
  37. <div class="StepsMyBox_main_right">
  38. <div>
  39. <el-steps :active="stepsIndex" style="margin: 40px 40px 40px 80px;">
  40. <el-step v-for="item in stepsList" :key="item.index">
  41. <template slot="title">
  42. <div
  43. class="stepsTitle"
  44. :style="{ background: stepsIndex == item.index ? '#00aaff' : '' }"
  45. @click="changeStepsIndex(item.index)"
  46. >
  47. {{ item.title }}
  48. </div>
  49. </template>
  50. </el-step>
  51. </el-steps>
  52. </div>
  53. <div class="stepsInfoBox">???</div>
  54. </div>
  55. </div>
  56. </div>
  57. </template>
  58. <script>
  59. /**
  60. * 头部菜单(全流程管理)组件
  61. * @author: LiuMengxiang
  62. * @Date: 2022年11月21-25日
  63. */
  64. export default {
  65. name: "StepsMyBox",
  66. data() {
  67. return {
  68. // 当前或默认选中的步骤条下标加一
  69. stepsIndex: 1,
  70. // 步骤条列表
  71. stepsList: [
  72. { index: 1, title: "立项" },
  73. { index: 2, title: "通知" },
  74. { index: 3, title: "实施" },
  75. { index: 4, title: "报告" },
  76. { index: 5, title: "整改" }
  77. ]
  78. };
  79. },
  80. props: {},
  81. mounted() {},
  82. watch: {},
  83. methods: {
  84. // 返回上级
  85. backEvent() {
  86. this.$emit("hideStepsMyBoxState");
  87. },
  88. // 切换步骤条
  89. changeStepsIndex(index) {
  90. this.stepsIndex = index;
  91. }
  92. }
  93. };
  94. </script>
  95. <style lang="less" scoped>
  96. .StepsMyBox {
  97. padding: 0;
  98. position: absolute;
  99. display: flex;
  100. background: #001220 !important;
  101. z-index: 999;
  102. width: 100%;
  103. height: 100%;
  104. -moz-user-select: none;
  105. -webkit-user-select: none;
  106. -ms-user-select: none;
  107. -khtml-user-select: none;
  108. user-select: none;
  109. overflow: hidden;
  110. flex-direction: column;
  111. &_main {
  112. padding: 10px;
  113. width: calc(100% - 20px);
  114. height: calc(100% - 20px);
  115. display: flex;
  116. justify-content: space-between;
  117. &_left {
  118. width: calc(25% - 5px);
  119. height: 100%;
  120. background: #00274d !important;
  121. &_main {
  122. margin: 20px 30px;
  123. display: flex;
  124. flex-direction: column;
  125. &_title {
  126. font-size: 20px;
  127. font-family: pingfangSC;
  128. font-weight: 400;
  129. color: #4dc3ff;
  130. line-height: 58px;
  131. }
  132. &_info {
  133. display: flex;
  134. padding: 10px 0;
  135. font-size: 18px;
  136. font-family: pingfangSC;
  137. font-weight: bold;
  138. color: #ffffff;
  139. line-height: 60px;
  140. div {
  141. font-size: 16px;
  142. font-family: pingfangSC;
  143. font-weight: 400;
  144. color: #ffffff;
  145. line-height: 50px;
  146. width: 50%;
  147. }
  148. }
  149. }
  150. }
  151. &_right {
  152. width: calc(75% - 5px);
  153. height: 100%;
  154. background: #00274d !important;
  155. .stepsTitle {
  156. margin-top: 10px;
  157. transform: translate(-30%, 0%);
  158. width: 2rem;
  159. cursor: pointer;
  160. padding: 0px 20px;
  161. border: 1px solid #00aaff;
  162. border-radius: 3px;
  163. color: #ffffff;
  164. font-weight: bold;
  165. }
  166. .stepsInfoBox{
  167. width: calc(100% - 80px);
  168. height: calc(100% - 200px);
  169. margin: 40px;
  170. margin-top: 0px;
  171. background: #00000064 !important;
  172. }
  173. }
  174. }
  175. }
  176. </style>