pull/781/head
parent
5c0e4096f8
commit
8d85aa49b7
|
|
@ -4,7 +4,7 @@ NODE_ENV=development
|
|||
VITE_DEV=true
|
||||
|
||||
# 请求路径
|
||||
VITE_BASE_URL='http://172.22.3.168:48080'
|
||||
VITE_BASE_URL='http://8.130.12.151:48080'
|
||||
|
||||
# 文件上传类型:server - 后端上传, client - 前端直连上传,仅支持 S3 服务
|
||||
VITE_UPLOAD_TYPE=server
|
||||
|
|
|
|||
|
|
@ -1,54 +1,48 @@
|
|||
<!-- 合同详情页面组件-->
|
||||
<template>
|
||||
<ContractDetailsHeader v-loading="loading" :contract="contract">
|
||||
<el-button v-if="permissionListRef?.validateWrite" @click="openForm('update', contract.id)">
|
||||
编辑
|
||||
</el-button>
|
||||
<el-button v-if="permissionListRef?.validateOwnerUser" type="primary" @click="transferContract">
|
||||
转移
|
||||
</el-button>
|
||||
</ContractDetailsHeader>
|
||||
<el-col>
|
||||
<el-tabs>
|
||||
<el-tab-pane label="跟进记录">
|
||||
<FollowUpList :biz-id="contract.id" :biz-type="BizTypeEnum.CRM_CONTRACT" />
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="基本信息">
|
||||
<ContractDetailsInfo :contract="contract" />
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="产品">
|
||||
<ContractProductList :contract="contract" />
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="回款">
|
||||
<ReceivablePlanList
|
||||
:contract-id="contract.id!"
|
||||
:customer-id="contract.customerId"
|
||||
@create-receivable="createReceivable"
|
||||
/>
|
||||
<ReceivableList
|
||||
ref="receivableListRef"
|
||||
:contract-id="contract.id!"
|
||||
:customer-id="contract.customerId"
|
||||
/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="团队成员">
|
||||
<PermissionList
|
||||
ref="permissionListRef"
|
||||
:biz-id="contract.id!"
|
||||
:biz-type="BizTypeEnum.CRM_CONTRACT"
|
||||
:show-action="true"
|
||||
@quit-team="close"
|
||||
/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="操作日志">
|
||||
<OperateLogV2 :log-list="logList" />
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
</el-col>
|
||||
<ContentWrap class="mt-10px">
|
||||
<el-col>
|
||||
<el-tabs>
|
||||
<el-tab-pane label="跟进记录">
|
||||
<FollowUpList :biz-id="contract.id" :type="1" :biz-type="BizTypeEnum.CRM_CONTRACT" />
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="基本信息">
|
||||
<ContractDetailsInfo :contract="contract" />
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="产品">
|
||||
<ContractProductList :contract="contract" />
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="回款">
|
||||
<ReceivablePlanList
|
||||
:type="1"
|
||||
:contract-id="contract.id!"
|
||||
:customer-id="contract.customerId"
|
||||
@create-receivable="createReceivable"
|
||||
/>
|
||||
<ReceivableList
|
||||
ref="receivableListRef"
|
||||
:type="1"
|
||||
:contract-id="contract.id!"
|
||||
:customer-id="contract.customerId"
|
||||
/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="团队成员">
|
||||
<PermissionList
|
||||
ref="permissionListRef"
|
||||
:type="1"
|
||||
:biz-id="contract.id!"
|
||||
:biz-type="BizTypeEnum.CRM_CONTRACT"
|
||||
:show-action="true"
|
||||
@quit-team="close"
|
||||
/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="操作日志">
|
||||
<OperateLogV2 :log-list="logList" />
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
</el-col>
|
||||
</ContentWrap>
|
||||
|
||||
<!-- 表单弹窗:添加/修改 -->
|
||||
<ContractForm ref="formRef" @success="getContractData" />
|
||||
<CrmTransferForm ref="transferFormRef" :biz-type="BizTypeEnum.CRM_CONTRACT" @success="close" />
|
||||
</template>
|
||||
<script lang="ts" setup>
|
||||
import { useTagsViewStore } from '@/store/modules/tagsView'
|
||||
|
|
@ -59,8 +53,6 @@ import ContractDetailsHeader from './ContractDetailsHeader.vue'
|
|||
import ContractProductList from './ContractProductList.vue'
|
||||
import { BizTypeEnum } from '@/api/crm/permission'
|
||||
import { getOperateLogPage } from '@/api/crm/operateLog'
|
||||
import ContractForm from '@/views/crm/contract/ContractForm.vue'
|
||||
import CrmTransferForm from '@/views/crm/permission/components/TransferForm.vue'
|
||||
import PermissionList from '@/views/crm/permission/components/PermissionList.vue'
|
||||
import FollowUpList from '@/views/crm/followup/index.vue'
|
||||
import ReceivableList from '@/views/crm/receivable/components/ReceivableList.vue'
|
||||
|
|
@ -89,6 +81,7 @@ const openForm = (type: string, id?: number) => {
|
|||
const getContractData = async () => {
|
||||
loading.value = true
|
||||
try {
|
||||
console.log('%csrc/views/crm/contract/detail/index.vue:92 234', 'color: #007acc;', contractId.value,234);
|
||||
contract.value = await ContractApi.getContract(contractId.value)
|
||||
await getOperateLog(contractId.value)
|
||||
} finally {
|
||||
|
|
@ -130,6 +123,7 @@ const close = () => {
|
|||
|
||||
/** 初始化 */
|
||||
onMounted(async () => {
|
||||
console.log('%csrc/views/crm/contract/detail/index.vue:134 props.id', 'color: #007acc;', props.id);
|
||||
const id = props.id || route.query.id
|
||||
if (!id) {
|
||||
message.warning('参数错误,合同不能为空!')
|
||||
|
|
|
|||
|
|
@ -389,7 +389,7 @@ const handleProcessDetail = (row) => {
|
|||
|
||||
/** 打开合同详情 */
|
||||
const { push } = useRouter()
|
||||
const openDetail = (row) => {
|
||||
const openDetail = (row: Object) => {
|
||||
router.push({ name: 'CrmContractDetail', query: { id: row.id } })
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<!-- 某个记录的跟进记录列表,目前主要用于 CRM 客户、商机等详情界面 -->
|
||||
<template>
|
||||
<!-- 操作栏 -->
|
||||
<el-row class="mb-10px" justify="end">
|
||||
<el-row class="mb-10px" justify="end" v-if="!type">
|
||||
<el-button @click="openForm">
|
||||
<Icon class="mr-5px" icon="ep:edit" />
|
||||
写跟进
|
||||
|
|
@ -69,7 +69,7 @@
|
|||
</el-link>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="操作">
|
||||
<el-table-column align="center" label="操作" v-if="!type">
|
||||
<template #default="scope">
|
||||
<el-button link type="danger" @click="handleDelete(scope.row.id)"> 删除 </el-button>
|
||||
</template>
|
||||
|
|
@ -99,7 +99,8 @@ import { BizTypeEnum } from '@/api/crm/permission'
|
|||
defineOptions({ name: 'FollowUpRecord' })
|
||||
const props = defineProps<{
|
||||
bizType: number
|
||||
bizId: number
|
||||
bizId: number,
|
||||
type: number
|
||||
}>()
|
||||
const message = useMessage() // 消息弹窗
|
||||
const { t } = useI18n() // 国际化
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<template>
|
||||
<!-- 操作栏 -->
|
||||
<el-row v-if="showAction" justify="end">
|
||||
<el-row v-if="showAction && !type" justify="end">
|
||||
<el-button v-if="validateOwnerUser" type="primary" @click="openForm">
|
||||
<Icon class="mr-5px" icon="ep:plus" />
|
||||
新增
|
||||
|
|
@ -57,7 +57,8 @@ const message = useMessage() // 消息
|
|||
const props = defineProps<{
|
||||
bizType: number // 模块类型
|
||||
bizId: number | undefined // 模块数据编号
|
||||
showAction: boolean //是否展示操作按钮
|
||||
showAction: boolean, //是否展示操作按钮
|
||||
type: number
|
||||
}>()
|
||||
const loading = ref(true) // 列表的加载中
|
||||
const list = ref<PermissionApi.PermissionVO[]>([]) // 列表的数据
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<template>
|
||||
<!-- 操作栏 -->
|
||||
<el-row justify="end">
|
||||
<el-row justify="end" v-if="!type">
|
||||
<el-button @click="openForm('create')">
|
||||
<Icon class="mr-5px" icon="icon-park:income-one" />
|
||||
创建回款
|
||||
|
|
@ -33,7 +33,7 @@
|
|||
/>
|
||||
<el-table-column align="center" label="负责人" prop="ownerUserName" />
|
||||
<el-table-column align="center" label="备注" prop="remark" />
|
||||
<el-table-column align="center" fixed="right" label="操作" width="130px">
|
||||
<el-table-column align="center" fixed="right" label="操作" width="130px" v-if="!type">
|
||||
<template #default="scope">
|
||||
<el-button
|
||||
v-hasPermi="['crm:receivable:update']"
|
||||
|
|
@ -78,6 +78,7 @@ defineOptions({ name: 'CrmReceivableList' })
|
|||
const props = defineProps<{
|
||||
customerId?: number // 客户编号
|
||||
contractId?: number // 合同编号
|
||||
type: number
|
||||
}>()
|
||||
|
||||
const message = useMessage() // 消息弹窗
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<template>
|
||||
<!-- 操作栏 -->
|
||||
<el-row justify="end">
|
||||
<el-row justify="end" v-if="!type">
|
||||
<el-button @click="openForm('create', undefined)">
|
||||
<Icon class="mr-5px" icon="icon-park:income" />
|
||||
创建回款计划
|
||||
|
|
@ -37,7 +37,7 @@
|
|||
/>
|
||||
<el-table-column label="负责人" prop="ownerUserName" width="120" />
|
||||
<el-table-column align="center" label="备注" prop="remark" />
|
||||
<el-table-column align="center" fixed="right" label="操作" width="200px">
|
||||
<el-table-column align="center" fixed="right" label="操作" width="200px" v-if="!type">
|
||||
<template #default="scope">
|
||||
<el-button
|
||||
v-hasPermi="['crm:receivable:create']"
|
||||
|
|
@ -89,6 +89,8 @@ defineOptions({ name: 'CrmReceivablePlanList' })
|
|||
const props = defineProps<{
|
||||
customerId?: number // 客户编号
|
||||
contractId?: number // 合同编号
|
||||
type: number
|
||||
|
||||
}>()
|
||||
|
||||
const message = useMessage() // 消息弹窗
|
||||
|
|
|
|||
Loading…
Reference in New Issue