[WEB-3102]fix: transfer issues count (#6384)
* fix: updated cancelled issues count into pending issues * chore: code refactor * chore: added pending issues count * chore: added pending issues count * chore: added pending_issues to api response --------- Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
This commit is contained in:
parent
996d11de12
commit
369d927321
5 changed files with 34 additions and 18 deletions
|
|
@ -82,9 +82,11 @@ export const CycleListItemAction: FC<Props> = observer((props) => {
|
|||
|
||||
// derived values
|
||||
const cycleStatus = cycleDetails.status ? (cycleDetails.status.toLocaleLowerCase() as TCycleGroups) : "draft";
|
||||
|
||||
const showIssueCount = useMemo(() => cycleStatus === "draft" || cycleStatus === "upcoming", [cycleStatus]);
|
||||
const transferableIssuesCount = cycleDetails ? cycleDetails.total_issues - cycleDetails.completed_issues : 0;
|
||||
const showTransferIssues = routerProjectId && transferableIssuesCount > 0 && cycleStatus === "completed"; // Only available inside project view.
|
||||
|
||||
const showTransferIssues = cycleDetails.pending_issues > 0 && cycleStatus === "completed";
|
||||
|
||||
const isEditingAllowed = allowPermissions(
|
||||
[EUserPermissions.ADMIN, EUserPermissions.MEMBER],
|
||||
EUserPermissionsLevel.PROJECT,
|
||||
|
|
@ -256,7 +258,7 @@ export const CycleListItemAction: FC<Props> = observer((props) => {
|
|||
}}
|
||||
>
|
||||
<TransferIcon className="fill-custom-primary-200 w-4" />
|
||||
<span>Transfer {transferableIssuesCount} issues</span>
|
||||
<span>Transfer {cycleDetails.pending_issues} issues</span>
|
||||
</div>
|
||||
)}
|
||||
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@ export const CycleQuickActions: React.FC<Props> = observer((props) => {
|
|||
const isArchived = !!cycleDetails?.archived_at;
|
||||
const isCompleted = cycleDetails?.status?.toLowerCase() === "completed";
|
||||
const isCurrentCycle = cycleDetails?.status?.toLowerCase() === "current";
|
||||
const transferableIssuesCount = cycleDetails ? cycleDetails.total_issues - cycleDetails.completed_issues : 0;
|
||||
// auth
|
||||
const isEditingAllowed = allowPermissions(
|
||||
[EUserPermissions.ADMIN, EUserPermissions.MEMBER],
|
||||
|
|
@ -170,14 +169,16 @@ export const CycleQuickActions: React.FC<Props> = observer((props) => {
|
|||
workspaceSlug={workspaceSlug}
|
||||
projectId={projectId}
|
||||
/>
|
||||
<EndCycleModal
|
||||
isOpen={isEndCycleModalOpen}
|
||||
handleClose={() => setEndCycleModalOpen(false)}
|
||||
cycleId={cycleId}
|
||||
projectId={projectId}
|
||||
workspaceSlug={workspaceSlug}
|
||||
transferrableIssuesCount={transferableIssuesCount}
|
||||
/>
|
||||
{isCurrentCycle && (
|
||||
<EndCycleModal
|
||||
isOpen={isEndCycleModalOpen}
|
||||
handleClose={() => setEndCycleModalOpen(false)}
|
||||
cycleId={cycleId}
|
||||
projectId={projectId}
|
||||
workspaceSlug={workspaceSlug}
|
||||
transferrableIssuesCount={cycleDetails.pending_issues}
|
||||
/>
|
||||
)}
|
||||
</div>
|
||||
)}
|
||||
<ContextMenu parentRef={parentRef} items={MENU_ITEMS} />
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ export const TransferIssuesModal: React.FC<Props> = observer((props) => {
|
|||
const [query, setQuery] = useState("");
|
||||
|
||||
// store hooks
|
||||
const { currentProjectIncompleteCycleIds, getCycleById, fetchCycleDetails } = useCycle();
|
||||
const { currentProjectIncompleteCycleIds, getCycleById, fetchActiveCycleProgress } = useCycle();
|
||||
const {
|
||||
issues: { transferIssuesFromCycle },
|
||||
} = useIssues(EIssuesStoreType.CYCLE);
|
||||
|
|
@ -57,8 +57,8 @@ export const TransferIssuesModal: React.FC<Props> = observer((props) => {
|
|||
/**To update issue counts in target cycle and current cycle */
|
||||
const getCycleDetails = async (newCycleId: string) => {
|
||||
const cyclesFetch = [
|
||||
fetchCycleDetails(workspaceSlug.toString(), projectId.toString(), cycleId),
|
||||
fetchCycleDetails(workspaceSlug.toString(), projectId.toString(), newCycleId),
|
||||
fetchActiveCycleProgress(workspaceSlug.toString(), projectId.toString(), cycleId),
|
||||
fetchActiveCycleProgress(workspaceSlug.toString(), projectId.toString(), newCycleId),
|
||||
];
|
||||
await Promise.all(cyclesFetch).catch((error) => {
|
||||
setToast({
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue