diff --git a/backend/services/case-management/src/main/java/io/metersphere/functional/controller/FunctionalCaseDemandController.java b/backend/services/case-management/src/main/java/io/metersphere/functional/controller/FunctionalCaseDemandController.java index c29579ce44..156d6a2074 100644 --- a/backend/services/case-management/src/main/java/io/metersphere/functional/controller/FunctionalCaseDemandController.java +++ b/backend/services/case-management/src/main/java/io/metersphere/functional/controller/FunctionalCaseDemandController.java @@ -76,7 +76,7 @@ public class FunctionalCaseDemandController { @PostMapping("/third/list/page") @Operation(summary = "用例管理-功能用例-关联需求-获取三方需求列表") - @RequiresPermissions(value = {PermissionConstants.FUNCTIONAL_CASE_READ_ADD, PermissionConstants.FUNCTIONAL_CASE_READ_UPDATE, PermissionConstants.FUNCTIONAL_CASE_READ_DELETE}, logical = Logical.OR) + @RequiresPermissions(value = {PermissionConstants.FUNCTIONAL_CASE_READ, PermissionConstants.FUNCTIONAL_CASE_READ_ADD, PermissionConstants.FUNCTIONAL_CASE_READ_UPDATE, PermissionConstants.FUNCTIONAL_CASE_READ_DELETE}, logical = Logical.OR) public PluginPager pageDemand(@RequestBody @Validated FunctionalThirdDemandPageRequest request) { return functionalCaseDemandService.pageDemand(request); } diff --git a/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabComment/tabCommentIndex.vue b/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabComment/tabCommentIndex.vue index 82b5f36f85..65082dbf1f 100644 --- a/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabComment/tabCommentIndex.vue +++ b/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabComment/tabCommentIndex.vue @@ -80,6 +80,7 @@ import { useI18n } from '@/hooks/useI18n'; import useModal from '@/hooks/useModal'; import useFeatureCaseStore from '@/store/modules/case/featureCase'; + import { hasAnyPermission } from '@/utils/permission'; import { CaseManagementRouteEnum } from '@/enums/routeEnum'; @@ -119,21 +120,25 @@ } async function getAllCommentList() { - switch (activeComment.value) { - case 'caseComment': - await initCommentList(); - featureCaseStore.getCaseCounts(props.caseId); - break; - case 'reviewComment': - await initReviewCommentList(); - featureCaseStore.getCaseCounts(props.caseId); - break; - case 'executiveComment': - await initCommentList(); - featureCaseStore.getCaseCounts(props.caseId); - break; - default: - break; + if (hasAnyPermission(['FUNCTIONAL_CASE:READ+COMMENT'])) { + switch (activeComment.value) { + case 'caseComment': + await initCommentList(); + featureCaseStore.getCaseCounts(props.caseId); + break; + case 'reviewComment': + await initReviewCommentList(); + featureCaseStore.getCaseCounts(props.caseId); + break; + case 'executiveComment': + await initCommentList(); + featureCaseStore.getCaseCounts(props.caseId); + break; + default: + break; + } + } else { + Message.error(t('common.noPermission')); } } diff --git a/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDemand/addDemandModal.vue b/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDemand/addDemandModal.vue index bf4834fb56..11335a2354 100644 --- a/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDemand/addDemandModal.vue +++ b/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDemand/addDemandModal.vue @@ -12,6 +12,7 @@ {{ characterLimit(title) }} +
@@ -33,7 +34,26 @@ :placeholder="t('caseManagement.featureCase.pleaseEnterTitle')" /> - + import { ref } from 'vue'; - import { FormInstance, Message, ValidatedError } from '@arco-design/web-vue'; + import { FormInstance, ValidatedError } from '@arco-design/web-vue'; import { useI18n } from '@/hooks/useI18n'; import { useAppStore } from '@/store'; - import { characterLimit } from '@/utils'; + import { characterLimit, regexUrl } from '@/utils'; import type { CreateOrUpdateDemand, DemandFormList, DemandItem } from '@/models/caseManagement/featureCase'; diff --git a/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDemand/demand.vue b/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDemand/demand.vue index 05858175aa..44fca6c879 100644 --- a/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDemand/demand.vue +++ b/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDemand/demand.vue @@ -2,10 +2,20 @@
- + {{ t('caseManagement.featureCase.associatedDemand') }} - + {{ t('caseManagement.featureCase.addDemand') }}
diff --git a/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDependency/tabDependency.vue b/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDependency/tabDependency.vue index 14a4efc99e..4c784b242f 100644 --- a/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDependency/tabDependency.vue +++ b/frontend/src/views/case-management/caseManagementFeature/components/tabContent/tabDependency/tabDependency.vue @@ -2,10 +2,16 @@
- + {{ t('caseManagement.featureCase.addPresetCase') }} - + {{ t('caseManagement.featureCase.addPostCase') }}
diff --git a/frontend/src/views/case-management/caseManagementFeature/locale/en-US.ts b/frontend/src/views/case-management/caseManagementFeature/locale/en-US.ts index 5059ddf13b..b78e0a8a51 100644 --- a/frontend/src/views/case-management/caseManagementFeature/locale/en-US.ts +++ b/frontend/src/views/case-management/caseManagementFeature/locale/en-US.ts @@ -156,6 +156,7 @@ export default { 'caseManagement.featureCase.pleaseEnterTitle': 'Please enter a requirement title', 'caseManagement.featureCase.requirementUrl': 'Demand url', 'caseManagement.featureCase.pleaseEnterRequirementUrl': 'Please input requirements url', + 'caseManagement.featureCase.pleaseEnterCorrectURLFormat': 'Please enter the correct URL format', 'caseManagement.featureCase.cancelAssociation': 'Cancel Association', 'caseManagement.featureCase.caseDetailTitle': '【{id}】{name}', 'caseManagement.featureCase.share': 'share', diff --git a/frontend/src/views/case-management/caseManagementFeature/locale/zh-CN.ts b/frontend/src/views/case-management/caseManagementFeature/locale/zh-CN.ts index b3bfe0af10..eb5c22db37 100644 --- a/frontend/src/views/case-management/caseManagementFeature/locale/zh-CN.ts +++ b/frontend/src/views/case-management/caseManagementFeature/locale/zh-CN.ts @@ -155,6 +155,7 @@ export default { 'caseManagement.featureCase.pleaseEnterTitle': '请输入需求标题', 'caseManagement.featureCase.requirementUrl': '需求地址', 'caseManagement.featureCase.pleaseEnterRequirementUrl': '请输入需求地址', + 'caseManagement.featureCase.pleaseEnterCorrectURLFormat': '请输入正确的URL格式', 'caseManagement.featureCase.cancelAssociation': '取消关联', 'caseManagement.featureCase.caseDetailTitle': '【{id}】{name}', 'caseManagement.featureCase.share': '分享', diff --git a/frontend/src/views/case-management/caseReview/detail.vue b/frontend/src/views/case-management/caseReview/detail.vue index e1493d7ee2..71f0415ee9 100644 --- a/frontend/src/views/case-management/caseReview/detail.vue +++ b/frontend/src/views/case-management/caseReview/detail.vue @@ -49,7 +49,7 @@ {{ t('common.copy') }} - +