sc
This commit is contained in:
5
.env.pro
5
.env.pro
@@ -5,6 +5,11 @@ VITE_DEV=false
|
|||||||
|
|
||||||
# 请求路径
|
# 请求路径
|
||||||
VITE_BASE_URL='/crm-api'
|
VITE_BASE_URL='/crm-api'
|
||||||
|
# 高德地图key密钥
|
||||||
|
# 1寻驾
|
||||||
|
VITE_AMAP_KEY=ec6b7ebe38f7ff27126f7088d87a9091
|
||||||
|
# 2莳松
|
||||||
|
# VITE_AMAP_KEY=9233a9d4ffe95fb335e70834503460fa
|
||||||
|
|
||||||
# 上传路径
|
# 上传路径
|
||||||
VITE_UPLOAD_URL='/crm-api/admin-api/system/file/upload'
|
VITE_UPLOAD_URL='/crm-api/admin-api/system/file/upload'
|
||||||
|
|||||||
@@ -46,6 +46,7 @@
|
|||||||
id="okrAnalysisTable"
|
id="okrAnalysisTable"
|
||||||
:data="originList"
|
:data="originList"
|
||||||
border
|
border
|
||||||
|
:show-summary="!!tableKeywords"
|
||||||
:span-method="objectSpanMethod"
|
:span-method="objectSpanMethod"
|
||||||
@cell-click="handleClickCell"
|
@cell-click="handleClickCell"
|
||||||
>
|
>
|
||||||
@@ -57,7 +58,26 @@
|
|||||||
<!-- <el-table-column prop="objectiveId" label="占比" width="100px">
|
<!-- <el-table-column prop="objectiveId" label="占比" width="100px">
|
||||||
<template #default> 0 </template>
|
<template #default> 0 </template>
|
||||||
</el-table-column> -->
|
</el-table-column> -->
|
||||||
<el-table-column prop="keyResultShowName" label="关键成果">
|
<el-table-column prop="keyResultShowName">
|
||||||
|
<template #header>
|
||||||
|
<div class="flex items-center justify-center">
|
||||||
|
<div class="flex-1 mr-10px">
|
||||||
|
<el-input
|
||||||
|
v-if="showTableSearch"
|
||||||
|
v-model="tableKeywords"
|
||||||
|
placeholder="请输入关键字"
|
||||||
|
size="small"
|
||||||
|
style="width: 100%"
|
||||||
|
clearable
|
||||||
|
@change="handleTableFilter"
|
||||||
|
/>
|
||||||
|
<div v-else>关键成果</div>
|
||||||
|
</div>
|
||||||
|
<el-button type="primary" size="small" @click="handleFilterTableClick">
|
||||||
|
{{ showTableSearch ? '取消' : '筛选' }}
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
{{ row.sourceName ? `【${row.sourceName}】` : '' }} {{ row.keyResultShowName }}
|
{{ row.sourceName ? `【${row.sourceName}】` : '' }} {{ row.keyResultShowName }}
|
||||||
</template>
|
</template>
|
||||||
@@ -302,6 +322,9 @@ const customColors = [
|
|||||||
|
|
||||||
const peroidList = ref([])
|
const peroidList = ref([])
|
||||||
|
|
||||||
|
const showTableSearch = ref(false)
|
||||||
|
const tableKeywords = ref('')
|
||||||
|
|
||||||
handleSearchPeroid()
|
handleSearchPeroid()
|
||||||
getOptions()
|
getOptions()
|
||||||
|
|
||||||
@@ -343,6 +366,7 @@ function nodeChange(nodeId) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const originList = ref([])
|
const originList = ref([])
|
||||||
|
const defaultTableList = ref([])
|
||||||
const spanObj = ref([])
|
const spanObj = ref([])
|
||||||
function getOkrList() {
|
function getOkrList() {
|
||||||
getAllOkrPage(searchForm.value).then((resp) => {
|
getAllOkrPage(searchForm.value).then((resp) => {
|
||||||
@@ -363,6 +387,7 @@ function getOkrList() {
|
|||||||
originList.value = [...originList.value, ...arr]
|
originList.value = [...originList.value, ...arr]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
defaultTableList.value = [...originList.value]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -548,6 +573,28 @@ function handleSaveComment() {
|
|||||||
function handleExport() {
|
function handleExport() {
|
||||||
exportTableWithVue('#okrAnalysisTable', `OKR分析报表-${currentNode.value.nodeName}`)
|
exportTableWithVue('#okrAnalysisTable', `OKR分析报表-${currentNode.value.nodeName}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function handleTableFilter() {
|
||||||
|
console.log('tableKeywords', tableKeywords.value)
|
||||||
|
|
||||||
|
if (tableKeywords.value) {
|
||||||
|
originList.value = defaultTableList.value.filter(
|
||||||
|
(item) =>
|
||||||
|
item.keyResultName.includes(tableKeywords.value) ||
|
||||||
|
item.sourceName.includes(tableKeywords.value)
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
originList.value = [...defaultTableList.value]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function handleFilterTableClick() {
|
||||||
|
showTableSearch.value = !showTableSearch.value
|
||||||
|
if (!showTableSearch.value) {
|
||||||
|
tableKeywords.value = ''
|
||||||
|
originList.value = [...defaultTableList.value]
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped></style>
|
<style lang="scss" scoped></style>
|
||||||
|
|||||||
@@ -113,16 +113,25 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :xl="12" :lg="12" :md="24" :sm="24" :xs="24">
|
<el-col :xl="16" :lg="16" :md="24" :sm="24" :xs="24">
|
||||||
<el-form-item label="会议内容:" prop="meetingContent">
|
<el-form-item label="会议内容" prop="meetingContent">
|
||||||
<div v-if="!!isDetail" v-dompurify-html="form.meetingContent" class="w-full"></div>
|
<div v-if="!!isDetail" v-dompurify-html="form.meetingContent" class="w-full"></div>
|
||||||
<Editor v-else v-model="form.meetingContent" height="500px" />
|
<Editor v-else v-model="form.meetingContent" height="500px" style="width: 100%" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :xl="12" :lg="12" :md="24" :sm="24" :xs="24" v-if="!!form.meetingId">
|
<el-col :xl="8" :lg="8" :md="24" :sm="24" :xs="24" v-if="!!form.meetingId">
|
||||||
<el-form-item label="会议纪要:" prop="meetingSummary">
|
<el-form-item label="会议纪要" prop="meetingSummary" label-width="80px">
|
||||||
<div v-if="!!isDetail" v-dompurify-html="form.meetingSummary" class="w-full"></div>
|
<!-- <div v-if="!!isDetail" v-dompurify-html="form.meetingSummary" class="w-full"></div>
|
||||||
<Editor v-else v-model="form.meetingSummary" height="500px" />
|
<Editor v-else v-model="form.meetingSummary" height="500px" /> -->
|
||||||
|
<div v-if="!!isDetail" class="w-full">{{ form.meetingSummary }}</div>
|
||||||
|
<el-input
|
||||||
|
v-else
|
||||||
|
type="textarea"
|
||||||
|
placeholder="请输入会议纪要"
|
||||||
|
:maxlength="-1"
|
||||||
|
:show-word-limit="false"
|
||||||
|
:autosize="{ minRows: 20 }"
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@@ -250,7 +259,9 @@ function handleUserChange() {
|
|||||||
expectUserOptions.value = userOptions.value.filter((user) =>
|
expectUserOptions.value = userOptions.value.filter((user) =>
|
||||||
form.value.expectUsers.some((it) => it == user.id)
|
form.value.expectUsers.some((it) => it == user.id)
|
||||||
)
|
)
|
||||||
form.value.actualUsers = [...form.value.expectUsers]
|
if (!isDetail) {
|
||||||
|
form.value.actualUsers = [...form.value.expectUsers]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
|
|||||||
Reference in New Issue
Block a user