mirror of
				https://gitee.com/hhyykk/ipms-sjy-ui.git
				synced 2025-11-04 12:18:43 +08:00 
			
		
		
		
	CRM:code review 跟进记录,
This commit is contained in:
		@@ -7,8 +7,8 @@ export interface FollowUpRecordVO {
 | 
			
		||||
  bizId: number // 数据编号
 | 
			
		||||
  type: number // 跟进类型
 | 
			
		||||
  content: string // 跟进内容
 | 
			
		||||
  picUrls: string[]
 | 
			
		||||
  fileUrls: string[]
 | 
			
		||||
  picUrls: string[] // 图片
 | 
			
		||||
  fileUrls: string[] // 附件
 | 
			
		||||
  nextTime: Date // 下次联系时间
 | 
			
		||||
  businessIds: number[] // 关联的商机编号数组
 | 
			
		||||
  contactIds: number[] // 关联的联系人编号数组
 | 
			
		||||
 
 | 
			
		||||
@@ -141,14 +141,18 @@ const submitForm = async () => {
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** 关联联系人 */
 | 
			
		||||
const contactTableSelectRef = ref<InstanceType<typeof ContactTableSelect>>()
 | 
			
		||||
const handleAddContact = () => {
 | 
			
		||||
  contactTableSelectRef.value?.open()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** 关联商机 */
 | 
			
		||||
const businessTableSelectRef = ref<InstanceType<typeof BusinessTableSelect>>()
 | 
			
		||||
const handleAddBusiness = () => {
 | 
			
		||||
  businessTableSelectRef.value?.open()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** 重置表单 */
 | 
			
		||||
const resetForm = () => {
 | 
			
		||||
  formRef.value?.resetFields()
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,4 @@
 | 
			
		||||
<!-- 商机的选择列表 TODO 芋艿:后面看看要不要搞到统一封装里 -->
 | 
			
		||||
<template>
 | 
			
		||||
  <Dialog v-model="dialogVisible" :appendToBody="true" title="选择商机" width="700">
 | 
			
		||||
    <el-table
 | 
			
		||||
@@ -35,10 +36,12 @@ import { ElTable } from 'element-plus'
 | 
			
		||||
 | 
			
		||||
defineOptions({ name: 'BusinessTableSelect' })
 | 
			
		||||
withDefaults(defineProps<{ modelValue: number[] }>(), { modelValue: () => [] })
 | 
			
		||||
 | 
			
		||||
const list = ref<BusinessApi.BusinessVO[]>([]) // 列表的数据
 | 
			
		||||
const loading = ref(false) // 列表的加载中
 | 
			
		||||
const dialogVisible = ref(false) // 弹窗的是否展示
 | 
			
		||||
const formLoading = ref(false)
 | 
			
		||||
 | 
			
		||||
// 确认选择时的触发事件
 | 
			
		||||
const emits = defineEmits<{
 | 
			
		||||
  (e: 'update:modelValue', v: number[]): void
 | 
			
		||||
@@ -71,6 +74,7 @@ const getList = async () => {
 | 
			
		||||
    loading.value = false
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** 打开弹窗 */
 | 
			
		||||
const open = async () => {
 | 
			
		||||
  dialogVisible.value = true
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,4 @@
 | 
			
		||||
<!-- 联系人的选择列表 TODO 芋艿:后面看看要不要搞到统一封装里 -->
 | 
			
		||||
<template>
 | 
			
		||||
  <Dialog v-model="dialogVisible" :appendToBody="true" title="选择联系人" width="700">
 | 
			
		||||
    <el-table
 | 
			
		||||
@@ -35,10 +36,12 @@ import { ElTable } from 'element-plus'
 | 
			
		||||
 | 
			
		||||
defineOptions({ name: 'ContactTableSelect' })
 | 
			
		||||
withDefaults(defineProps<{ modelValue: number[] }>(), { modelValue: () => [] })
 | 
			
		||||
 | 
			
		||||
const list = ref<ContactApi.ContactVO[]>([]) // 列表的数据
 | 
			
		||||
const loading = ref(false) // 列表的加载中
 | 
			
		||||
const dialogVisible = ref(false) // 弹窗的是否展示
 | 
			
		||||
const formLoading = ref(false)
 | 
			
		||||
 | 
			
		||||
// 确认选择时的触发事件
 | 
			
		||||
const emits = defineEmits<{
 | 
			
		||||
  (e: 'update:modelValue', v: number[]): void
 | 
			
		||||
@@ -70,6 +73,7 @@ const getList = async () => {
 | 
			
		||||
    loading.value = false
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** 打开弹窗 */
 | 
			
		||||
const open = async () => {
 | 
			
		||||
  dialogVisible.value = true
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user