diff --git a/src/api/crm/backlog/index.ts b/src/api/crm/backlog/index.ts
deleted file mode 100644
index 7ea01990..00000000
--- a/src/api/crm/backlog/index.ts
+++ /dev/null
@@ -1,22 +0,0 @@
-import request from '@/config/axios'
-// TODO 芋艿:融合下
-
-// 5. 获得待审核合同数量
-export const getCheckContractCount = async () => {
- return await request.get({ url: '/crm/contract/check-contract-count' })
-}
-
-// 6. 获得待审核回款数量
-export const getCheckReceivablesCount = async () => {
- return await request.get({ url: '/crm/receivable/check-receivables-count' })
-}
-
-// 7. 获得待回款提醒数量
-export const getRemindReceivablePlanCount = async () => {
- return await request.get({ url: '/crm/receivable-plan/remind-receivable-plan-count' })
-}
-
-// 8. 获得即将到期的合同数量
-export const getEndContractCount = async () => {
- return await request.get({ url: '/crm/contract/end-contract-count' })
-}
diff --git a/src/api/crm/receivable/index.ts b/src/api/crm/receivable/index.ts
index 1c184925..069d6c4a 100644
--- a/src/api/crm/receivable/index.ts
+++ b/src/api/crm/receivable/index.ts
@@ -64,3 +64,8 @@ export const exportReceivable = async (params) => {
export const submitReceivable = async (id: number) => {
return await request.put({ url: `/crm/receivable/submit?id=${id}` })
}
+
+// 获得待审核回款数量
+export const getAuditReceivableCount = async () => {
+ return await request.get({ url: '/crm/receivable/audit-count' })
+}
diff --git a/src/api/crm/receivable/plan/index.ts b/src/api/crm/receivable/plan/index.ts
index ce379beb..6e0cab4a 100644
--- a/src/api/crm/receivable/plan/index.ts
+++ b/src/api/crm/receivable/plan/index.ts
@@ -67,3 +67,8 @@ export const deleteReceivablePlan = async (id: number) => {
export const exportReceivablePlan = async (params) => {
return await request.download({ url: `/crm/receivable-plan/export-excel`, params })
}
+
+// 获得待回款提醒数量
+export const getReceivablePlanRemindCount = async () => {
+ return await request.get({ url: '/crm/receivable-plan/remind-count' })
+}
diff --git a/src/views/crm/backlog/components/ReceivableAuditList.vue b/src/views/crm/backlog/components/ReceivableAuditList.vue
new file mode 100644
index 00000000..2831d45b
--- /dev/null
+++ b/src/views/crm/backlog/components/ReceivableAuditList.vue
@@ -0,0 +1,201 @@
+
+
+
+ 待审核回款
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ scope.row.no }}
+
+
+
+
+
+
+ {{ scope.row.customerName }}
+
+
+
+
+
+
+ {{ scope.row.contract.no }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 查看审批
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/crm/backlog/components/ReceivablePlanRemindList.vue b/src/views/crm/backlog/components/ReceivablePlanRemindList.vue
new file mode 100644
index 00000000..9a3cf0cf
--- /dev/null
+++ b/src/views/crm/backlog/components/ReceivablePlanRemindList.vue
@@ -0,0 +1,220 @@
+
+
+
+ 待回款提醒
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ scope.row.customerName }}
+
+
+
+
+
+
+
+ {{ scope.row.period }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ erpPriceInputFormatter(scope.row.receivable.price) }}
+
+ {{ erpPriceInputFormatter(0) }}
+
+
+
+
+
+
+ {{ erpPriceInputFormatter(scope.row.price - scope.row.receivable.price) }}
+
+ {{ erpPriceInputFormatter(scope.row.price) }}
+
+
+
+
+
+
+
+
+ 创建回款
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/crm/backlog/index.vue b/src/views/crm/backlog/index.vue
index b5c3a9a4..3dc069c0 100644
--- a/src/views/crm/backlog/index.vue
+++ b/src/views/crm/backlog/index.vue
@@ -18,28 +18,29 @@
-
+
-
+
-
-
diff --git a/src/views/crm/backlog/tables/RemindReceivables.vue b/src/views/crm/backlog/tables/RemindReceivables.vue
deleted file mode 100644
index 8ca3fd4d..00000000
--- a/src/views/crm/backlog/tables/RemindReceivables.vue
+++ /dev/null
@@ -1,128 +0,0 @@
-
-
-
- 待回款提醒
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ userList.find((user) => user.id === scope.row.ownerUserId)?.nickname }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/crm/backlog/tables/common.ts b/src/views/crm/backlog/tables/common.ts
deleted file mode 100644
index fafc154f..00000000
--- a/src/views/crm/backlog/tables/common.ts
+++ /dev/null
@@ -1,38 +0,0 @@
-/** 跟进状态 */
-export const FOLLOWUP_STATUS = [
- { label: '已跟进', value: true },
- { label: '待跟进', value: false }
-]
-
-/** 归属范围 */
-export const SCENE_TYPES = [
- { label: '我负责的', value: 1 },
- { label: '我参与的', value: 2 },
- { label: '下属负责的', value: 3 }
-]
-
-/** 联系状态 */
-export const CONTACT_STATUS = [
- { label: '今日需联系', value: 1 },
- { label: '已逾期', value: 2 },
- { label: '已联系', value: 3 }
-]
-
-/** 审批状态 */
-export const AUDIT_STATUS = [
- { label: '已审批', value: 20 },
- { label: '待审批', value: 10 }
-]
-
-/** 回款提醒类型 */
-export const RECEIVABLE_REMIND_TYPE = [
- { label: '待回款', value: 1 },
- { label: '已逾期', value: 2 },
- { label: '已回款', value: 3 }
-]
-
-/** 合同过期状态 */
-export const CONTRACT_EXPIRY_TYPE = [
- { label: '即将过期', value: 1 },
- { label: '已过期', value: 2 }
-]
diff --git a/src/views/crm/business/BusinessForm.vue b/src/views/crm/business/BusinessForm.vue
index 4c7d253f..6b03047b 100644
--- a/src/views/crm/business/BusinessForm.vue
+++ b/src/views/crm/business/BusinessForm.vue
@@ -175,7 +175,6 @@ const formRules = reactive({
const formRef = ref() // 表单 Ref
const userOptions = ref([]) // 用户列表
const statusTypeList = ref([]) // 商机状态类型列表
-// TODO 芋艿:统一的客户选择面板
const customerList = ref([]) // 客户列表的数据
/** 子表的表单 */
diff --git a/src/views/crm/contact/ContactForm.vue b/src/views/crm/contact/ContactForm.vue
index 14f0d1f2..ac749da9 100644
--- a/src/views/crm/contact/ContactForm.vue
+++ b/src/views/crm/contact/ContactForm.vue
@@ -214,7 +214,6 @@ const formRules = reactive({
})
const formRef = ref() // 表单 Ref
const userOptions = ref([]) // 用户列表
-// TODO 芋艿:统一的客户选择面板
const customerList = ref([]) // 客户列表
const contactList = ref([]) // 联系人列表
diff --git a/src/views/crm/contract/ContractForm.vue b/src/views/crm/contract/ContractForm.vue
index 5ea55720..9c5b2c6a 100644
--- a/src/views/crm/contract/ContractForm.vue
+++ b/src/views/crm/contract/ContractForm.vue
@@ -235,7 +235,6 @@ const formRules = reactive({
})
const formRef = ref() // 表单 Ref
const userOptions = ref([]) // 用户列表
-// TODO 芋艿:统一的客户选择面板
const customerList = ref([]) // 客户列表的数据
const businessList = ref([])
const contactList = ref([])
diff --git a/src/views/crm/customer/limitConfig/CustomerLimitConfigForm.vue b/src/views/crm/customer/limitConfig/CustomerLimitConfigForm.vue
index d8aa9240..c7338a43 100644
--- a/src/views/crm/customer/limitConfig/CustomerLimitConfigForm.vue
+++ b/src/views/crm/customer/limitConfig/CustomerLimitConfigForm.vue
@@ -82,7 +82,6 @@ const formRules = reactive({
maxCount: [{ required: true, message: '数量上限不能为空', trigger: 'blur' }]
})
const formRef = ref() // 表单 Ref
-// TODO @芋艿:看看怎么搞个部门选择组件
const deptTree = ref() // 部门树形结构
const userOptions = ref([]) // 用户列表
diff --git a/src/views/crm/permission/components/PermissionForm.vue b/src/views/crm/permission/components/PermissionForm.vue
index 3eff4e6a..c86e8bd0 100644
--- a/src/views/crm/permission/components/PermissionForm.vue
+++ b/src/views/crm/permission/components/PermissionForm.vue
@@ -129,7 +129,6 @@ const resetForm = (bizType: number, bizId: number) => {
}
onMounted(async () => {
// 获得用户列表
- // TODO 芋艿:用户列表的选择组件
userOptions.value = await UserApi.getSimpleUserList()
})
diff --git a/src/views/crm/permission/components/TransferForm.vue b/src/views/crm/permission/components/TransferForm.vue
index c9f5eed1..3b4e6dfb 100644
--- a/src/views/crm/permission/components/TransferForm.vue
+++ b/src/views/crm/permission/components/TransferForm.vue
@@ -40,7 +40,7 @@
-
+
确 定
取 消
@@ -117,7 +117,6 @@ const resetForm = () => {
}
onMounted(async () => {
// 获得用户列表
- // TODO 芋艿:用户列表的选择组件
userOptions.value = await UserApi.getSimpleUserList()
})
diff --git a/src/views/crm/product/ProductForm.vue b/src/views/crm/product/ProductForm.vue
index 1748c804..1bc5aaca 100644
--- a/src/views/crm/product/ProductForm.vue
+++ b/src/views/crm/product/ProductForm.vue
@@ -207,6 +207,6 @@ onMounted(async () => {
const data = await ProductCategoryApi.getProductCategoryList({})
productCategoryList.value = handleTree(data, 'id', 'parentId')
// 系统用户列表
- userList.value = await getSimpleUserList() // TODO 芋艿:替换成用户组件
+ userList.value = await getSimpleUserList()
})
diff --git a/src/views/crm/receivable/detail/index.vue b/src/views/crm/receivable/detail/index.vue
index 162825f2..ef9e8469 100644
--- a/src/views/crm/receivable/detail/index.vue
+++ b/src/views/crm/receivable/detail/index.vue
@@ -39,9 +39,10 @@ import { getOperateLogPage } from '@/api/crm/operateLog'
import ReceivableForm from '@/views/crm/receivable/ReceivableForm.vue'
defineOptions({ name: 'CrmReceivablePlanDetail' })
+const props = defineProps<{ id?: number }>()
+const route = useRoute()
const message = useMessage()
-
const receivableId = ref(0) // 回款编号
const loading = ref(true) // 加载中
const receivable = ref({} as ReceivableApi.ReceivableVO) // 回款详情
diff --git a/src/views/crm/receivable/index.vue b/src/views/crm/receivable/index.vue
index 1a8b32de..608f6158 100644
--- a/src/views/crm/receivable/index.vue
+++ b/src/views/crm/receivable/index.vue
@@ -287,6 +287,11 @@ const handleSubmit = async (row: ReceivableApi.ReceivableVO) => {
await getList()
}
+/** 查看审批 */
+const handleProcessDetail = (row: ReceivableApi.ReceivableVO) => {
+ push({ name: 'BpmProcessInstanceDetail', query: { id: row.processInstanceId } })
+}
+
/** 打开回款详情 */
const { push } = useRouter()
const openDetail = (id: number) => {
@@ -303,11 +308,6 @@ const openContractDetail = (id: number) => {
push({ name: 'CrmContractDetail', params: { id } })
}
-/** 查看审批 */
-const handleProcessDetail = (row: ReceivableApi.ReceivableVO) => {
- push({ name: 'BpmProcessInstanceDetail', query: { id: row.processInstanceId } })
-}
-
/** 导出按钮操作 */
const handleExport = async () => {
try {