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
	
	 zy
						zy