diff --git a/frontend/src/api/modules/project-management/menuManagement.ts b/frontend/src/api/modules/project-management/menuManagement.ts index b70087fa94..61e18ef5aa 100644 --- a/frontend/src/api/modules/project-management/menuManagement.ts +++ b/frontend/src/api/modules/project-management/menuManagement.ts @@ -1,7 +1,7 @@ import MSR from '@/api/http/index'; import * as Url from '@/api/requrls/project-management/menuManagement'; -import { CommonList, TableQueryParams } from '@/models/common'; +import { TableQueryParams } from '@/models/common'; import type { MenuTableConfigItem, MenuTableListItem, @@ -10,15 +10,8 @@ import type { } from '@/models/projectManagement/menuManagement'; import { MenuEnum } from '@/enums/commonEnum'; -export async function postTabletList(params: TableQueryParams): Promise> { - const list = await MSR.get({ url: `${Url.getMenuListUrl}${params.projectId}` }); - const result: CommonList = { - total: list.length, - list, - pageSize: 10, - current: 1, - }; - return Promise.resolve(result); +export async function postTabletList(params: TableQueryParams) { + return MSR.get({ url: `${Url.getMenuListUrl}${params.projectId}` }); } // 获取资源池 @@ -100,3 +93,19 @@ export function getConfigByMenuItem(data: MenuTableListParams) { } return MSR.post({ url: `${Url.getConfigByMenuTypeUrl}${suffix}`, data }); } + +/** + * 获取平台的下拉选项 + * @param organizationId 组织id + * @returns + */ +export function getPlatformOptions(organizationId: string, type: MenuEnum) { + if (type === MenuEnum.bugManagement) { + return MSR.get({ url: `${Url.getPlatformOptionUrlByBug}${organizationId}` }); + } + return MSR.get({ url: `${Url.getPlatformOptionUrlByCase}${organizationId}` }); +} + +export function postSaveDefectSync(data: MenuTableConfigItem, projectId: string) { + return MSR.post({ url: `${Url.postSyncBugConfigUrl}${projectId}`, data }); +} diff --git a/frontend/src/api/requrls/project-management/menuManagement.ts b/frontend/src/api/requrls/project-management/menuManagement.ts index 98283f9d11..0e8558c974 100644 --- a/frontend/src/api/requrls/project-management/menuManagement.ts +++ b/frontend/src/api/requrls/project-management/menuManagement.ts @@ -2,3 +2,9 @@ export const getConfigByMenuTypeUrl = '/project/application/'; export const updateConfigByMenuTypeUrl = '/project/application/update/'; // 获取表格最外层的数据 export const getMenuListUrl = '/project/application/module-setting/'; +// 根据组织id获取bug平台下拉选项 +export const getPlatformOptionUrlByBug = '/project/application/bug/platform/'; +// 根据组织id获取case平台下拉选项 +export const getPlatformOptionUrlByCase = '/project/application/case/platform/'; +// 缺陷管理-同步缺陷配置 +export const postSyncBugConfigUrl = '/project/application/update/bug/sync/'; diff --git a/frontend/src/components/pure/ms-drawer/index.vue b/frontend/src/components/pure/ms-drawer/index.vue index ee84833f82..79879ca5c6 100644 --- a/frontend/src/components/pure/ms-drawer/index.vue +++ b/frontend/src/components/pure/ms-drawer/index.vue @@ -53,7 +53,7 @@ {{ t(props.saveContinueText || 'ms.drawer.saveContinue') }} - + {{ t(props.okText || 'ms.drawer.ok') }} @@ -83,6 +83,7 @@ mask?: boolean; // 是否显示遮罩 showSkeleton?: boolean; // 是否显示骨架屏 okLoading?: boolean; + okDisabled?: boolean; okText?: string; cancelText?: string; saveContinueText?: string; diff --git a/frontend/src/components/pure/ms-table/useTable.ts b/frontend/src/components/pure/ms-table/useTable.ts index 2e6f457491..cdab1852ad 100644 --- a/frontend/src/components/pure/ms-table/useTable.ts +++ b/frontend/src/components/pure/ms-table/useTable.ts @@ -24,7 +24,7 @@ export default function useTableProps( loadListFunc: (v?: TableQueryParams | any) => Promise> | MsTableDataItem>, props?: Partial>, // 数据处理的回调函数 - dataTransform?: (item: T) => (TableData & T) | any, + dataTransform?: (item: TableData) => (TableData & T) | any, // 编辑操作的保存回调函数 saveCallBack?: (item: T) => Promise ) { diff --git a/frontend/src/components/pure/ms-time-selector/MsTimeSelector.vue b/frontend/src/components/pure/ms-time-selector/MsTimeSelector.vue index 5253d5ff76..54b015d94f 100644 --- a/frontend/src/components/pure/ms-time-selector/MsTimeSelector.vue +++ b/frontend/src/components/pure/ms-time-selector/MsTimeSelector.vue @@ -10,7 +10,14 @@ @blur="handleEnter(true)" > @@ -50,9 +57,8 @@ if (isBlur) { if (!isEnter.value) { // 不是由Enter触发的blur - const { type, value } = parseValue(props.modelValue || props.defaultValue); + const { value } = parseValue(props.modelValue || props.defaultValue); current.value = value; - current.type = type; } isEnter.value = false; } else { diff --git a/frontend/src/views/project-management/projectAndPermission/menuManagement/components/defectSync.vue b/frontend/src/views/project-management/projectAndPermission/menuManagement/components/defectSync.vue index f78c041676..14b0d2acb5 100644 --- a/frontend/src/views/project-management/projectAndPermission/menuManagement/components/defectSync.vue +++ b/frontend/src/views/project-management/projectAndPermission/menuManagement/components/defectSync.vue @@ -1,3 +1,200 @@ - + - + diff --git a/frontend/src/views/project-management/projectAndPermission/menuManagement/locale/zh-CN.ts b/frontend/src/views/project-management/projectAndPermission/menuManagement/locale/zh-CN.ts index 755fe437ff..b89d9fc17d 100644 --- a/frontend/src/views/project-management/projectAndPermission/menuManagement/locale/zh-CN.ts +++ b/frontend/src/views/project-management/projectAndPermission/menuManagement/locale/zh-CN.ts @@ -33,7 +33,6 @@ export default { 'project.menu.CASE_RE_REVIEW': '重新提审', 'project.menu.CASE_RELATED': '关联需求', 'project.menu.BUG_SYNC': '同步缺陷', - 'project.menu.CRON_EXPRESSION': '同步频率', 'project.menu.SYNC_ENABLE': '状态', 'project.menu.MECHANISM': '接口测试待更新同步规则', 'project.menu.sd': '同步缺陷', @@ -48,4 +47,19 @@ export default { 'project.menu.row7': '当接口定义发生变更后,自动同步接口CASE', 'project.menu.notConfig': '未配置第三方信息,点击', 'project.menu.configure': '进行配置', + 'project.menu.status': '状态', + 'project.menu.incrementalSync': '增量同步', + 'project.menu.fullSync': '全量同步', + 'project.menu.platformPlaceholder': '暂未集成第三方平台,请联系组织管理员集成', + 'project.menu.platformLabel': '第三方项目管理平台', + 'project.menu.syncMechanism': '同步机制', + 'project.menu.CRON_EXPRESSION': '同步频率', + 'project.menu.projectKey': '项目 Key', + 'project.menu.projectId': '项目 ID', + 'project.menu.organizationId': '组织 ID', + 'project.menu.azureId': 'Azure 过滤 ID', + 'project.menu.defectType': '缺陷类型', + 'project.menu.howGetJiraKey': '如何获取JIRA 项目 key ', + 'project.menu.preview': '预览', + 'project.menu.pleaseInputJiraKey': '请输入 JIRA 项目 key', }; diff --git a/frontend/src/views/project-management/projectAndPermission/menuManagement/menuManagement.vue b/frontend/src/views/project-management/projectAndPermission/menuManagement/menuManagement.vue index 1bb6921a81..04363e073f 100644 --- a/frontend/src/views/project-management/projectAndPermission/menuManagement/menuManagement.vue +++ b/frontend/src/views/project-management/projectAndPermission/menuManagement/menuManagement.vue @@ -39,7 +39,9 @@
@@ -194,8 +196,6 @@ v-if="record.children" v-model="record.moduleEnable" size="small" - checked-value="true" - unchecked-value="false" @change="(v: boolean | string| number) => handleMenuStatusChange(record.module,v as boolean,record.module)" /> @@ -303,18 +303,7 @@ /> - - - +