index.vue 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. <!--
  2. *@description: 工程历史详情
  3. *@author: yh Fu
  4. *@date: 2024-1-8 10:04:23
  5. *@version: V1.0.5
  6. -->
  7. <template>
  8. <el-dialog
  9. :visible.sync="dialogVisible"
  10. title=""
  11. width="60%"
  12. append-to-body
  13. custom-class="ConstructionDetailsDialog">
  14. <el-tabs v-model="activeName" type="card" @tab-click="viewSource" class="projectTabs">
  15. <el-tab-pane
  16. :label="e.label"
  17. :name="e.value"
  18. v-for="(e,idx) in currentDicts"
  19. :key="idx"
  20. >
  21. <el-collapse
  22. class="rmOldPie"
  23. v-for="(e,idx) in currentCollapses"
  24. :key="idx"
  25. >
  26. <el-collapse-item :name="idx">
  27. <template slot="title">
  28. <div style="display: flex;width: 100%;height: 100%;">
  29. <div style="width: 3%;height: 29px;margin: auto 0;border-radius: 73%;background-color: rgb(0, 157, 217);box-shadow: 1px 1px #BFBFBF;">
  30. </div>
  31. <h2 style="margin-left: 1%;font-weight: 700;">{{ e.updateTime }}</h2>
  32. </div>
  33. </template>
  34. <!-- 人员信息 -->
  35. <div>
  36. 负责人:{{ e.headName || '未知'}} &nbsp;&nbsp;
  37. 施工人:{{ e.constructUser || '未知'}} &nbsp;&nbsp;
  38. 负责人电话:{{ e.headPhone || '未知'}} &nbsp;&nbsp;
  39. 施工人电话:{{ e.constructPhone || '未知'}}
  40. </div>
  41. <hr>
  42. <!-- 用料明细 -->
  43. <div
  44. v-for="(i,idx) in e.zEngineeringMaterialBo"
  45. :key="idx"
  46. >
  47. 品牌:{{ i.brand || '未知'}}
  48. 材质:{{ i.corrosionLevel || '未知'}}
  49. 上门类型:{{ i.visitType || '未知'}}
  50. </div>
  51. <hr>
  52. <!-- 照片墙 -->
  53. <!-- <div style="width: 100%;height: 100%;">
  54. <img :src=require(v) v-for="v in e.zEngiineeringPhotoBoList" :key="v">
  55. </div> -->
  56. <ObsImageUpload
  57. ref="obsImageUpload"
  58. :limit="9999"
  59. :fileType="['png', 'jpg', 'jpeg']"
  60. disabled
  61. :value="e.zEngiineeringPhotoBoList"
  62. ></ObsImageUpload>
  63. </el-collapse-item>
  64. </el-collapse>
  65. </el-tab-pane>
  66. <el-button class="check" @click="checkWorking">审核</el-button>
  67. </el-tabs>
  68. </el-dialog>
  69. </template>
  70. <script>
  71. export default {
  72. name:'ConstructionDetails',
  73. props:['currentCollapses'],
  74. data(){
  75. return {
  76. currentDicts:[], // 当前类型工程节点项
  77. dialogVisible:false,
  78. activeNames: ['0'],
  79. }
  80. },
  81. methods:{
  82. // 查看单节点历史
  83. viewSource(e){
  84. console.log(this.$parent)
  85. this.$parent.viewNodeSource(e.name)
  86. },
  87. // 单项审核
  88. checkWorking(){
  89. },
  90. // 查看历史
  91. open(dicts,type = null){
  92. if(type == '1' || type == '2'){
  93. // 工业 市政
  94. this.$parent.viewNodeSource()
  95. this.currentDicts = [
  96. {
  97. value:"历史数据",
  98. label:"历史数据"
  99. }
  100. ]
  101. }else{
  102. console.log(dicts)
  103. this.currentDicts = dicts
  104. }
  105. this.dialogVisible = true
  106. }
  107. }
  108. }
  109. </script>
  110. <style lang="scss" scoped>
  111. ::v-deep .el-dialog{
  112. height: 85%;
  113. .el-dialog__body{
  114. overflow: hidden;
  115. height: 94%;
  116. }
  117. }
  118. ::v-deep .el-upload--picture-card{
  119. display: none;
  120. }
  121. .ConstructionDetailsDialog{
  122. position: absolute;
  123. .projectTabs{
  124. height: 100%;
  125. overflow: hidden;
  126. overflow-y: scroll;
  127. margin-top: 4%;
  128. ::v-deep .el-tabs__content{
  129. margin-top: 1%;
  130. }
  131. ::v-deep .el-tabs__nav{
  132. border: none;
  133. overflow: hidden;
  134. overflow-x: scroll;
  135. }
  136. ::v-deep .el-tabs__item{
  137. // width: 47%;
  138. border: 1px solid #797979;
  139. border-radius: 5px;
  140. }
  141. ::v-deep .el-tabs__item.is-active{
  142. background-color: #169BD5;
  143. color: #fff;
  144. }
  145. ::v-deep .el-tabs__header{
  146. position: fixed;
  147. width: 53%;
  148. border: none;
  149. top: 13%;
  150. }
  151. ::v-deep .el-collapse-item__wrap{
  152. padding: 0 4%;
  153. }
  154. .check{
  155. position: fixed;
  156. right: 22.1%;
  157. top: 13.1%;
  158. height: 4.6%;
  159. background-color: #CC9900;
  160. color: #fff;
  161. }
  162. }
  163. .projectTabs::-webkit-scrollbar{
  164. display: none;
  165. }
  166. ::v-deep .rmOldPie{
  167. .el-collapse-item{
  168. border: none;
  169. }
  170. }
  171. }
  172. </style>