From b53a329412df94aeed9919c57a62b635169ad5c3 Mon Sep 17 00:00:00 2001 From: zhouhaibin Date: Tue, 20 May 2025 19:59:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=90=88=E5=90=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ContractualTaskChecklist/index.ts | 74 ++ .../ContractualTaskChecklist/model.ts | 77 ++ .../contractReview/ContractualTasks/index.ts | 9 + src/assets/icons/file-list.svg | 10 + src/assets/images/markup-logo.svg | 6 + src/assets/images/upload-icon.svg | 6 + .../ContractualTaskChecklist.data.ts | 62 ++ .../ContractualTaskChecklistModal.vue | 207 ++++ .../ContractualTaskChecklist/index.vue | 115 +++ .../components/ComparisonReview.vue | 550 +++++++++++ .../components/InferenceReview.vue | 413 ++++++++ .../components/ReviewDialog.vue | 903 ++++++++++++++++++ .../ContractualTasks/index copy.vue | 220 +++++ .../contractReview/ContractualTasks/index.vue | 262 ++--- 14 files changed, 2752 insertions(+), 162 deletions(-) create mode 100644 src/api/contractReview/ContractualTaskChecklist/index.ts create mode 100644 src/api/contractReview/ContractualTaskChecklist/model.ts create mode 100644 src/assets/icons/file-list.svg create mode 100644 src/assets/images/markup-logo.svg create mode 100644 src/assets/images/upload-icon.svg create mode 100644 src/views/contractReview/ContractualTaskChecklist/ContractualTaskChecklist.data.ts create mode 100644 src/views/contractReview/ContractualTaskChecklist/ContractualTaskChecklistModal.vue create mode 100644 src/views/contractReview/ContractualTaskChecklist/index.vue create mode 100644 src/views/contractReview/ContractualTasks/components/ComparisonReview.vue create mode 100644 src/views/contractReview/ContractualTasks/components/InferenceReview.vue create mode 100644 src/views/contractReview/ContractualTasks/components/ReviewDialog.vue create mode 100644 src/views/contractReview/ContractualTasks/index copy.vue diff --git a/src/api/contractReview/ContractualTaskChecklist/index.ts b/src/api/contractReview/ContractualTaskChecklist/index.ts new file mode 100644 index 0000000..3caeeea --- /dev/null +++ b/src/api/contractReview/ContractualTaskChecklist/index.ts @@ -0,0 +1,74 @@ +import { defHttp } from '@/utils/http/axios'; +import { ID, IDS, commonExport } from '@/api/base'; +import { ContractualTaskChecklistVO, ContractualTaskChecklistFormList, ContractualTaskChecklistQuery } from './model'; + +/** + * 查询合同任务审查清单列表 + * @param params + * @returns + */ +export function ContractualTaskChecklistList(params?: ContractualTaskChecklistQuery) { + return defHttp.get({ url: '/productManagement/ContractualTaskChecklist/list', params }); +} + +/** + * 查询合同任务审查清单列表(不分页) + * @param params + * @returns + */ +export function ContractualTaskChecklistQueryList(params?: ContractualTaskChecklistQuery) { + return defHttp.get({ url: '/productManagement/ContractualTaskChecklist/queryList', params }); +} + +/** + * 导出合同任务审查清单列表 + * @param params + * @returns + */ +export function ContractualTaskChecklistExport(params?: ContractualTaskChecklistQuery) { + return commonExport('/productManagement/ContractualTaskChecklist/export', params ?? {}); +} + +/** + * 查询合同任务审查清单详细 + * @param id id + * @returns + */ +export function ContractualTaskChecklistInfo(id: ID) { + return defHttp.get({ url: '/productManagement/ContractualTaskChecklist/' + id }); +} +/** + * 查询合同任务审查清单详细 + * @param id id + * @returns + */ +export function ContractualTaskChecklistInfoByGroupId(id: ID) { + return defHttp.get({ url: '/productManagement/ContractualTaskChecklist/queryByGroupId/' + id }); +} + +/** + * 新增合同任务审查清单 + * @param data + * @returns + */ +export function ContractualTaskChecklistAdd(data: ContractualTaskChecklistFormList) { + return defHttp.postWithMsg({ url: '/productManagement/ContractualTaskChecklist', data }); +} + +/** + * 更新合同任务审查清单 + * @param data + * @returns + */ +export function ContractualTaskChecklistUpdate(data: ContractualTaskChecklistFormList) { + return defHttp.putWithMsg({ url: '/productManagement/ContractualTaskChecklist', data }); +} + +/** + * 删除合同任务审查清单 + * @param id id + * @returns + */ +export function ContractualTaskChecklistRemove(id: ID | IDS) { + return defHttp.deleteWithMsg({ url: '/productManagement/ContractualTaskChecklist/' + id },); +} diff --git a/src/api/contractReview/ContractualTaskChecklist/model.ts b/src/api/contractReview/ContractualTaskChecklist/model.ts new file mode 100644 index 0000000..8a4693a --- /dev/null +++ b/src/api/contractReview/ContractualTaskChecklist/model.ts @@ -0,0 +1,77 @@ +import { BaseEntity, PageQuery } from '@/api/base'; + + +export interface ContractualTaskChecklistVO { + /** + * id + */ + id: string | number; + + /** + * 清单名称 + */ + name: string; + + + /** + * 清单项内容 + */ + checklistItem: string; + + /** + * 清单项描述 + */ + checklistItemDesc: string; +} + +export interface ChecklistItemForm { + /** + * id + */ + id?: string | number; + + /** + * 清单项内容 + */ + checklistItem?: string; + + /** + * 清单项描述 + */ + checklistItemDesc?: string; + name?: string; +} + + +export interface ContractualTaskChecklistQuery extends PageQuery { + /** + * 清单名称 + */ + name?: string; + + /** + * 清单项内容 + */ + checklistItem?: string; + + /** + * 日期范围参数 + */ + params?: any; +} +export interface ContractualTaskChecklistForm extends BaseEntity { + id?: string | number; + name: string; + checklistItem: string; + checklistItemDesc?: string; + groupId?: string | number; +} + +export interface ContractualTaskChecklistResponse extends Omit { + checklistItems?: { + checklistItem: string; + checklistItemDesc: string; + }[]; +} + +export type ContractualTaskChecklistFormList = ContractualTaskChecklistForm[]; \ No newline at end of file diff --git a/src/api/contractReview/ContractualTasks/index.ts b/src/api/contractReview/ContractualTasks/index.ts index 2407fd0..5cd87d7 100644 --- a/src/api/contractReview/ContractualTasks/index.ts +++ b/src/api/contractReview/ContractualTasks/index.ts @@ -55,3 +55,12 @@ export function ContractualTasksUpdate(data: ContractualTasksForm) { export function ContractualTasksRemove(id: ID | IDS) { return defHttp.deleteWithMsg({ url: '/productManagement/ContractualTasks/' + id },); } + +/** + * 分析合同文档 + * @param ossId 文档OSS ID + * @returns + */ +export function AnalyzeContract(ossId: string) { + return defHttp.get({ url: '/productManagement/ContractualTasks/analyzeContract', params: { ossId } }); +} diff --git a/src/assets/icons/file-list.svg b/src/assets/icons/file-list.svg new file mode 100644 index 0000000..6f581ad --- /dev/null +++ b/src/assets/icons/file-list.svg @@ -0,0 +1,10 @@ + + + + \ No newline at end of file diff --git a/src/assets/images/markup-logo.svg b/src/assets/images/markup-logo.svg new file mode 100644 index 0000000..fc0dbdf --- /dev/null +++ b/src/assets/images/markup-logo.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/assets/images/upload-icon.svg b/src/assets/images/upload-icon.svg new file mode 100644 index 0000000..0c91711 --- /dev/null +++ b/src/assets/images/upload-icon.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/views/contractReview/ContractualTaskChecklist/ContractualTaskChecklist.data.ts b/src/views/contractReview/ContractualTaskChecklist/ContractualTaskChecklist.data.ts new file mode 100644 index 0000000..1bff5ea --- /dev/null +++ b/src/views/contractReview/ContractualTaskChecklist/ContractualTaskChecklist.data.ts @@ -0,0 +1,62 @@ +import { BasicColumn } from '@/components/Table'; +import { FormSchema } from '@/components/Form'; + +export const formSchemas: FormSchema[] = [ + { + label: '清单名称', + field: 'name', + component: 'Input', + } +]; + +export const columns: BasicColumn[] = [ + { + title: 'groupId', + dataIndex: 'groupId', + ifShow: false, + }, + { + title: '清单名称', + dataIndex: 'name', + }, + { + title: '清单项数量', + dataIndex: 'checklistItemNum', + } +]; + +export const modalSchemas: FormSchema[] = [ + { + label: 'id', + field: 'id', + required: false, + component: 'Input', + show: false, + }, + { + label: '清单名称', + field: 'name', + required: true, + component: 'Input', + } +]; + +// 清单项表格列定义 +export const checklistItemColumns: BasicColumn[] = [ + { + title: 'id', + dataIndex: 'id', + ifShow: false, + }, + { + title: '清单项内容', + dataIndex: 'checklistItem', + align: 'left', + width: 200, + }, + { + title: '清单项描述', + dataIndex: 'checklistItemDesc', + align: 'left', + } +]; diff --git a/src/views/contractReview/ContractualTaskChecklist/ContractualTaskChecklistModal.vue b/src/views/contractReview/ContractualTaskChecklist/ContractualTaskChecklistModal.vue new file mode 100644 index 0000000..df8dd53 --- /dev/null +++ b/src/views/contractReview/ContractualTaskChecklist/ContractualTaskChecklistModal.vue @@ -0,0 +1,207 @@ + + + + + diff --git a/src/views/contractReview/ContractualTaskChecklist/index.vue b/src/views/contractReview/ContractualTaskChecklist/index.vue new file mode 100644 index 0000000..7ab4e70 --- /dev/null +++ b/src/views/contractReview/ContractualTaskChecklist/index.vue @@ -0,0 +1,115 @@ + + + + + diff --git a/src/views/contractReview/ContractualTasks/components/ComparisonReview.vue b/src/views/contractReview/ContractualTasks/components/ComparisonReview.vue new file mode 100644 index 0000000..f4c3c89 --- /dev/null +++ b/src/views/contractReview/ContractualTasks/components/ComparisonReview.vue @@ -0,0 +1,550 @@ + + + + + \ No newline at end of file diff --git a/src/views/contractReview/ContractualTasks/components/InferenceReview.vue b/src/views/contractReview/ContractualTasks/components/InferenceReview.vue new file mode 100644 index 0000000..695a9a1 --- /dev/null +++ b/src/views/contractReview/ContractualTasks/components/InferenceReview.vue @@ -0,0 +1,413 @@ + + + + + \ No newline at end of file diff --git a/src/views/contractReview/ContractualTasks/components/ReviewDialog.vue b/src/views/contractReview/ContractualTasks/components/ReviewDialog.vue new file mode 100644 index 0000000..a923f22 --- /dev/null +++ b/src/views/contractReview/ContractualTasks/components/ReviewDialog.vue @@ -0,0 +1,903 @@ + + + + + \ No newline at end of file diff --git a/src/views/contractReview/ContractualTasks/index copy.vue b/src/views/contractReview/ContractualTasks/index copy.vue new file mode 100644 index 0000000..3baef25 --- /dev/null +++ b/src/views/contractReview/ContractualTasks/index copy.vue @@ -0,0 +1,220 @@ + + + + + diff --git a/src/views/contractReview/ContractualTasks/index.vue b/src/views/contractReview/ContractualTasks/index.vue index 2bb9c44..c286053 100644 --- a/src/views/contractReview/ContractualTasks/index.vue +++ b/src/views/contractReview/ContractualTasks/index.vue @@ -1,180 +1,118 @@ - async function handleDetail(record: Recordable) { - try { - let res = await DocumentTaskResultsInfoByTaskId(record.id); + +.tab-icon { + margin-right: 5px; +} +