| | |
| | | id?: string; |
| | | /** 任务人员Id */ |
| | | taskInfoUserId?: string; |
| | | /** 是否内部任务 */ |
| | | isInternal?: boolean; |
| | | enterpriseEmployeeUser?: GetCheckReceiveTaskUserSubmitsQueryResultObjectDataEnterpriseEmployeeUser; |
| | | /** 验收时间 */ |
| | | date?: string; |
| | |
| | | isDisabled?: boolean; |
| | | /** 用户数量 */ |
| | | userCount?: number; |
| | | /** 是否公开 */ |
| | | isPublic?: boolean; |
| | | } |
| | | |
| | | interface GetRoleUserInfosQueryResultItem { |
| | |
| | | interface GetSettlementTasksQueryResultItem { |
| | | /** 任务Id */ |
| | | id?: string; |
| | | /** 是否内部任务 */ |
| | | isInternal?: boolean; |
| | | /** 所属任务 */ |
| | | name?: string; |
| | | /** 任务单号 */ |
| | |
| | | checkReceiveEndDate?: string; |
| | | /** 任务名称 */ |
| | | name?: string; |
| | | /** 是否内部任务 */ |
| | | isInternal?: boolean; |
| | | /** 任务单号 */ |
| | | code?: string; |
| | | billingMethod?: EnumBillingMethod; |
| | |
| | | id: row.id, |
| | | checkReceiveMethods: state.checkReceiveMethods, |
| | | isInternal: state.isInternal, |
| | | tabType: state.checkReceiveMethods.includes(EnumTaskCheckReceiveMethod.CheckIn) |
| | | ? 'signRecord' |
| | | : '', |
| | | isDetail, |
| | | }); |
| | | } |
| | |
| | | checkReceiveMethods: [] as any as EnumTaskCheckReceiveMethod[], |
| | | isInternal: false, |
| | | isDetail: false, |
| | | tabType: '', |
| | | }, |
| | | }); |
| | | |
| | |
| | | <template> |
| | | <ProDialog :title="title" v-model="visible" destroy-on-close draggable> |
| | | <ProTabs v-model="tabType" hasBorder v-if="form.checkReceiveMethods?.length > 1"> |
| | | <ProTabs v-model="form.tabType" hasBorder v-if="form.checkReceiveMethods?.length > 1"> |
| | | <ProTabPane lazy label="签到记录" name="signRecord"></ProTabPane> |
| | | <ProTabPane lazy label="提交记录" name="submitRecord"></ProTabPane> |
| | | </ProTabs> |
| | |
| | | id: string; |
| | | checkReceiveMethods: EnumTaskCheckReceiveMethod[]; |
| | | isInternal: boolean; |
| | | tabType: string; |
| | | isDetail: boolean; |
| | | }; |
| | | |
| | | const visible = defineModel({ type: Boolean }); |
| | | const form = defineModel<Form>('form'); |
| | | const tabType = ref('signRecord'); |
| | | |
| | | const title = computed(() => (form.value.isDetail ? '详情' : '验收')); |
| | | const emit = defineEmits<{ |
| | |
| | | } else if (form.value.checkReceiveMethods.every((x) => x == EnumTaskCheckReceiveMethod.Submit)) { |
| | | return submitColumns; |
| | | } else { |
| | | if (tabType.value == 'signRecord') { |
| | | if (form.value.tabType === 'signRecord') { |
| | | return checkInColumns; |
| | | } else { |
| | | return submitColumns; |
| | |
| | | row.checkReceiveStatus === EnumTaskUserSubmitCheckReceiveStatus.WaitCheckReceive |
| | | ) || |
| | | form.value.isDetail || |
| | | form.value.tabType === 'signRecord' || |
| | | !form.value.isInternal, |
| | | }, |
| | | }, |
| | |
| | | row.checkReceiveStatus === EnumTaskUserSubmitCheckReceiveStatus.WaitCheckReceive |
| | | ) || |
| | | form.value.isDetail || |
| | | form.value.tabType === 'signRecord' || |
| | | !form.value.isInternal, |
| | | }, |
| | | }, |
| | |
| | | }); |
| | | |
| | | const operationBtnMap: Record<string, OperationBtnType> = { |
| | | editBtn: { emits: { onClick: (role) => openDialog(role) } }, |
| | | delBtn: { emits: { onClick: (role) => handleDeleteRole(role) }, props: { type: 'danger' } }, |
| | | authorize: { emits: { onClick: (role) => openAuthorizeDialog(role) } }, |
| | | editBtn: { |
| | | emits: { onClick: (role) => openDialog(role) }, |
| | | extraProps: { |
| | | hide: (role: API.GetRolesQueryResultItem) => role.isPublic, |
| | | }, |
| | | }, |
| | | delBtn: { |
| | | emits: { onClick: (role) => handleDeleteRole(role) }, |
| | | props: { type: 'danger' }, |
| | | extraProps: { |
| | | hide: (role: API.GetRolesQueryResultItem) => role.isPublic, |
| | | }, |
| | | }, |
| | | authorize: { |
| | | emits: { onClick: (role) => openAuthorizeDialog(role) }, |
| | | extraProps: { |
| | | hide: (role: API.GetRolesQueryResultItem) => role.isPublic, |
| | | }, |
| | | }, |
| | | // member: { emits: { onClick: (role) => openMemberDialog(role) } }, |
| | | disabledBtn: { |
| | | emits: { onClick: (role) => roleEnableOrForbid(role) }, |
| | | props: { type: 'danger' }, |
| | | extraProps: { |
| | | hide: (row) => row.isDisabled, |
| | | hide: (row: API.GetRolesQueryResultItem) => !(!row.isPublic && !row.isDisabled), |
| | | }, |
| | | }, |
| | | enableBtn: { |
| | | emits: { onClick: (role) => roleEnableOrForbid(role) }, |
| | | extraProps: { |
| | | hide: (row) => !row.isDisabled, |
| | | hide: (row: API.GetRolesQueryResultItem) => !(row.isDisabled && !row.isPublic), |
| | | }, |
| | | }, |
| | | }; |