index.vue 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <template>
  2. <div class="h-full flex p-3 flex-col businessDetail">
  3. <div class="w-full bg-white p-2 mb-2 shadow-md rounded-md flex items-center">
  4. <div class="icon mr-4">
  5. <el-link :underline="false" @click="backPath()">
  6. <el-icon class="el-icon--right"><icon-view /></el-icon> 返回联系人列表
  7. </el-link>
  8. </div>
  9. <div class="mr-8">
  10. <el-select v-model="value" placeholder="请选择" style="width: 150px">
  11. <el-option v-for="item in options" :key="item.id" :label="item.productName" :value="item.id" />
  12. </el-select>
  13. </div>
  14. </div>
  15. <!-- 内容 -->
  16. <div class="flex-1 flex flex-col overflow-y-auto overflow-x-hidden scroll-bar" v-loading="pageLoading">
  17. <div class="w-full h-auto flex justify-between">
  18. <div class="bg-white shadow-md rounded-md" style="width: 46%;">
  19. <Information :data="information" />
  20. </div>
  21. <div class="bg-white ml-2 shadow-md rounded-md flex-1">
  22. <Attachment :data="attachment" :information="information" />
  23. </div>
  24. </div>
  25. <div class="w-full h-auto flex justify-between mt-2">
  26. <div class="bg-white shadow-md rounded-md" style="width: 65%;">
  27. <RelatedTasks :data="relatedTasks" :information="information" />
  28. </div>
  29. <div class="bg-white ml-2 shadow-md rounded-md flex-1">
  30. <OperationRecord :data="operationRecord" />
  31. </div>
  32. </div>
  33. <div class="w-full h-auto flex justify-between mt-2">
  34. <div class="bg-white shadow-md rounded-md w-full">
  35. <RelatedBusiness :data="relatedBusiness" />
  36. </div>
  37. </div>
  38. </div>
  39. </div>
  40. </template>
  41. <script lang="ts" setup>
  42. import { ref, reactive, onMounted, inject } from "vue";
  43. import { Edit, ArrowLeft as IconView } from '@element-plus/icons-vue'
  44. import { backPath } from '../../../utils/tools'
  45. import Information from '../component/information.vue'
  46. import Attachment from '../component/attachment.vue'
  47. import RelatedTasks from '../component/relatedTasks.vue'
  48. import OperationRecord from '../component/operationRecord.vue'
  49. import RelatedBusiness from '../component/relatedBusiness.vue'
  50. const information = ref({}) // 基本信息
  51. const attachment = ref([]) // 附件
  52. const relatedTasks = ref([]) // 相关任务
  53. const operationRecord = ref([]) // 操作记录
  54. const relatedBusiness = ref([]) // 相关商机
  55. const pageLoading = ref(false)
  56. const value = ref('')
  57. const options: any = ref([])
  58. onMounted(() => {
  59. })
  60. </script>
  61. <style lang="scss" scoped></style>