| | |
| | | <Col :span="20" :class="`${prefixCls}-col`"> |
| | | <div class="mb-10px"> |
| | | <div class="mb-5px"> |
| | | Vben |
| | | {{cluesData.homepage || cluesData.cluesName}} |
| | | <Icon |
| | | icon="majesticons:open" |
| | | class="mr-15px cursor-pointer" |
| | |
| | | :size="16" |
| | | /> |
| | | </div> |
| | | <div>海纳百川,有容乃大</div> |
| | | <div>{{cluesData.cluesName}}</div> |
| | | </div> |
| | | <div class="mb-10px flex"> |
| | | <div> |
| | | <span>跟进人:</span> |
| | | <span>111</span> |
| | | <span>{{cluesData.createUserName||'--'}}</span> |
| | | </div> |
| | | <div class="ml-10px flex"> |
| | | <span>线索评分<BasicHelp :text="['评分规则:1,评分=各维度分数(所打分数*该维度权重)的总和;', '2,如只有首次评分,则以首次评分为准;如有两次评分,则取两次评分的平均值。']"/>:</span> |
| | | <span>10</span> |
| | | <span>{{'--'}}</span> |
| | | </div> |
| | | </div> |
| | | <div class=""> |
| | | <template v-for="tag in tags" :key="tag"> |
| | | <Tag class="mb-2"> |
| | | {{ tag }} |
| | | <template v-for="tag in cluesData.tagList" :key="tag"> |
| | | <Tag class="mb-2" :color="tag.color"> |
| | | {{ tag.name }} |
| | | </Tag> |
| | | </template> |
| | | <TagSelector class="pb-10px inline-block mt-10px"></TagSelector> |
| | | <TagSelector v-model:tags-value="tagsValue" class="pb-10px inline-block mt-10px"></TagSelector> |
| | | </div> |
| | | |
| | | </Col> |
| | |
| | | </Row> |
| | | <div :class="`${prefixCls}-bottom`"> |
| | | <Tabs> |
| | | <template v-for="item in achieveList" :key="item.key"> |
| | | <template v-for="item in tabList" :key="item.key"> |
| | | <TabPane :tab="item.name"> |
| | | |
| | | <ScrollContainer class="scroll-wrap"> |
| | |
| | | <script lang="ts" setup> |
| | | import Icon from '@/components/Icon/Icon.vue'; |
| | | import { Col, Row, Tabs, Tag } from 'ant-design-vue'; |
| | | import { computed } from 'vue'; |
| | | import {computed,ref} from 'vue'; |
| | | import Dynamic from './Dynamic.vue'; |
| | | import Detail from './Detail.vue'; |
| | | import Schedule from './Schedule.vue'; |
| | | |
| | | import headerImg from '@/assets/images/header.jpg'; |
| | | import { useUserStore } from '@/store/modules/user'; |
| | | import { achieveList, tags } from './data'; |
| | | import { tabList, tags } from './data'; |
| | | import {BasicHelp} from "@/components/Basic"; |
| | | import ScrollContainer from "@/components/Container/src/ScrollContainer.vue"; |
| | | import {TagSelector} from "@/components/TagSelector"; |
| | | import {useCluesRowStore} from "@/store/modules/cluesRowData"; |
| | | |
| | | const userStore = useUserStore(); |
| | | const TabPane = Tabs.TabPane; |
| | |
| | | }; |
| | | const prefixCls = 'clues-drawer'; |
| | | const avatar = computed(() => userStore.getUserInfo.avatar || headerImg); |
| | | |
| | | let cluesData = ref({}); |
| | | const cluesRowStore= useCluesRowStore(); |
| | | cluesData.value = cluesRowStore.getRowData; |
| | | Logger.log('父组件cluesData',cluesData); |
| | | |
| | | |
| | | |
| | | let tagsValue = ref([]); |
| | | const selectedTags = ref([{name:'好说话',color:'pink'}, {name:'有礼貌',color:'red'}, {name:'初步意向',color:'red'}, {name:'已联系',color:'red'}]); |
| | | tagsValue.value = selectedTags.value.map((item) => item.name); |
| | | Logger.log('父组件tagsValue',tagsValue.value); |
| | | </script> |
| | | <style lang="less" scoped> |
| | | .clues-drawer { |