| | |
| | | content: '当前已填写/选择内容,离开后将丢失,确定离开吗?', |
| | | positiveText: '确定离开', |
| | | negativeText: '继续编辑', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | router.back() |
| | | }, |
| | |
| | | content: '删除后数据不可恢复,请谨慎操作', |
| | | positiveText: '确认', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const res = await deleteCruiseOrder(record.id) |
| | | if (res.code === 200) { |
| | |
| | | content: '', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const res = await deleteCruisePlanById(row.id) |
| | | if (res.code === 200) { |
| | |
| | | content: '', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | editFence({ ...params, id: routeId.value, addPointIdList, delPointIdList, disablePointIdList }).then((res) => { |
| | | if (res.code === 200) { |
| | |
| | | content: '', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | tabStore.closeTab(route.fullPath) |
| | | router.back() |
| | |
| | | content: `复制位【副本_${row.electronicName}】`, |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | copyFence(row.id).then((res) => { |
| | |
| | | content: '', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | hiddenModal() |
| | | endLoading() |
| | |
| | | </script> |
| | | |
| | | <template> |
| | | <n-modal |
| | | v-model:show="modalVisible" |
| | | :segmented="{ |
| | | content: true, |
| | | action: true, |
| | | }" |
| | | :content-style="{ |
| | | <n-modal v-model:show="modalVisible" :segmented="{ |
| | | content: true, |
| | | action: true, |
| | | }" :content-style="{ |
| | | padding: '16px 24px 0px 24px', |
| | | }" |
| | | :mask-closable="false" preset="card" title="开通城市" class="w-400px table-modal" |
| | | > |
| | | <n-form |
| | | ref="formRef" :rules="rules" :model="formModel" :disabled="modalType === 'view'" |
| | | require-mark-placement="left" |
| | | > |
| | | }" :mask-closable="false" preset="card" title="开通城市" class="w-400px table-modal"> |
| | | <n-form ref="formRef" :rules="rules" :model="formModel" :disabled="modalType === 'view'" |
| | | require-mark-placement="left"> |
| | | <n-form-item label="开通城市" path="pca"> |
| | | <n-cascader |
| | | v-model:value="formModel.pca" :options="pcaOptions" value-field="code" label-field="name" |
| | | check-strategy="all" @update:value="handlePcaChange" |
| | | @update:show="isRoleSelectOpen = $event" |
| | | > |
| | | <n-cascader v-model:value="formModel.pca" :options="pcaOptions" value-field="code" label-field="name" |
| | | check-strategy="all" @update:value="handlePcaChange" @update:show="isRoleSelectOpen = $event"> |
| | | <template #arrow> |
| | | <img |
| | | src="https://huishou-1323682843.cos.ap-nanjing.myqcloud.com/images/e120f81c-9f15-4e1a-9938-22252898edf9.png" |
| | | class="arrow-icon" |
| | | :class="{ 'arrow-icon--open': isRoleSelectOpen }" |
| | | style="width: 16px;height: 16px;" |
| | | alt="arrow" |
| | | > |
| | | class="arrow-icon" :class="{ 'arrow-icon--open': isRoleSelectOpen }" style="width: 16px;height: 16px;" |
| | | alt="arrow"> |
| | | </template> |
| | | </n-cascader> |
| | | </n-form-item> |
| | |
| | | content: `确认删除【${name || ''}】城市的开通记录吗?`, |
| | | positiveText: '确认', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | deleteOpenCity(row.id!).then((res) => { |
| | | if (res.code === 200) { |
| | |
| | | content: '该点位置投入运营,删除后将隐藏所有关联历史位置记录,建议仅保持‘已停用’。是否确认删除?', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | try { |
| | | const res = await deletePoint(row.id) |
| | |
| | | content: '删除后该点位及其历史位置记录将永久下线,确认删除吗?', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | try { |
| | | const res = await deletePoint(row.id) |
| | |
| | | content: `确认${actionText}该点位吗?`, |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | try { |
| | | const res = await enableDisablePoint({ |
| | |
| | | content: '', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | updateCheckLocationStatus({ id: row.id, status: isEnabled ? 0 : 1 }).then((res) => { |
| | | if (res.code === 200) { |
| | |
| | | content: '确认删除该打卡地址?删除后不可恢复。', |
| | | positiveText: '确认', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | deleteCheckLocation(row.id!).then((res) => { |
| | | if (res.code === 200) { |
| | |
| | | </n-flex> |
| | | </template> |
| | | <div class="flex-1 flex flex-col h-full"> |
| | | <n-data-table |
| | | class="flex-1" |
| | | :columns="columns" |
| | | :data="listData" |
| | | :loading="loading" |
| | | :bordered="false" |
| | | flex-height |
| | | :scroll-x="tableScrollX" |
| | | :header-height="18" |
| | | :row-height="18" |
| | | /> |
| | | <Pagination |
| | | :count="count" |
| | | :page="pageParams.pageNum" |
| | | :page-size="pageParams.pageSize" |
| | | class="robotaxi-pagination mt-12px" |
| | | @change="changePage" |
| | | /> |
| | | <n-data-table class="flex-1" :columns="columns" :data="listData" :loading="loading" :bordered="false" |
| | | flex-height :scroll-x="tableScrollX" :header-height="18" :row-height="18" /> |
| | | <Pagination :count="count" :page="pageParams.pageNum" :page-size="pageParams.pageSize" |
| | | class="robotaxi-pagination mt-12px" @change="changePage" /> |
| | | </div> |
| | | |
| | | <AddressFormModal ref="modalRef" v-model:show="showFormModal" :mode="formMode" @confirm="handleConfirmForm" /> |
| | |
| | | content: '确定要删除该排班吗?', |
| | | positiveText: '确认', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | handleDeleteSchedule(teamIndex, dateIndex) |
| | | }, |
| | |
| | | content: '确定要删除该排班吗?', |
| | | positiveText: '确认', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | handleDeleteSchedule(teamIndex, dateIndex) |
| | | }, |
| | |
| | | content: '确认删除该班次?删除后不可恢复。', |
| | | positiveText: '确认', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | deleteShift(row.id!).then((res) => { |
| | | if (res.code === 200) { |
| | |
| | | content: `确认删除该人员?此操作不可恢复。`, |
| | | positiveText: '确认', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | deleteOperationsUser(row.id).then(res => { |
| | | if (res.code === 200) { |
| | |
| | | content: `是否确认${actionType}该人员?`, |
| | | positiveText: '确认', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const res = await updateOperationsUserStatus({ |
| | | id: row.id, |
| | |
| | | content: `确认删除该任务?此操作不可恢复。`, |
| | | positiveText: '确认', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | deleteTaskOrder(row.id).then((res) => { |
| | | if (res.code === 200) { |
| | |
| | | content: t('accountManagement.messages.deleteConfirmContent'), |
| | | positiveText: t('common.confirm'), |
| | | negativeText: t('common.cancel'), |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const ids = selectedRowKeys.value.join(',') |
| | | const res = await deleteAccounts(ids) |
| | |
| | | content: newStatus === '0' ? t('accountManagement.messages.enableConfirmContent') : t('accountManagement.messages.disableConfirmContent'), |
| | | positiveText: t('common.confirm'), |
| | | negativeText: t('common.cancel'), |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const res = await switchStatus(row.id) |
| | | if (res.code === 200) { |
| | |
| | | content: t('accountManagement.messages.deleteConfirmContent'), |
| | | positiveText: t('common.confirm'), |
| | | negativeText: t('common.cancel'), |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const res = await deleteAccounts(row.id) |
| | | if (res.code === 200) { |
| | |
| | | content: t('roleManagement.modal.closeConfirm.content'), |
| | | positiveText: t('roleManagement.modal.closeConfirm.confirm'), |
| | | negativeText: t('roleManagement.modal.closeConfirm.continue'), |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | closeModal() |
| | | }, |
| | |
| | | content: '确认删除吗该路线规划配置?删除后不可恢复。', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | deleteRoutePlan(row.id).then(res => { |
| | |
| | | content: '', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | cancelAndCloseOrder({ orderId: row.id!, type: 1 }).then((res) => { |
| | | if (res.code === 200) { |
| | |
| | | content: '', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | cancelAndCloseOrder({ orderId: row.id!, type: 2 }).then((res) => { |
| | | if (res.code === 200) { |
| | |
| | | content: '', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | autoFocus: false, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | deleteOrder(row.id!).then((res) => { |
| | | if (res.code === 200) { |
| | |
| | | positiveButtonProps: { |
| | | type: 'primary', |
| | | }, |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | router.push({ name: 'setPrice', query: { id: id.value, type: 'add', category: formModel.value.pricingType } }) |
| | | }, |
| | |
| | | positiveButtonProps: { |
| | | type: 'primary', |
| | | }, |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | router.push({ name: 'setPrice', query: { id: data.id, type: 'add', category: formModel.value.pricingType } }) |
| | | }, |
| | |
| | | content: '确认删除该定价配置?删除后不可恢复。', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | draggable: true, |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | delteteUser(row.id!) |
| | | }, |
| | |
| | | content: '当前优惠券未保存,确认取消创建吗?', |
| | | positiveText: '确定取消', |
| | | negativeText: '继续编辑', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | router.back() |
| | | }, |
| | |
| | | content: '删除后不可恢复,确定要删除该优惠券吗?', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const res = await deleteCouponById(row.id) |
| | | if (res.code === 200) { |
| | |
| | | content: `确定向当前筛选条件下所有用户发放优惠券么?共${payload.userCount}个用户。`, |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | try { |
| | | const { code } = await sendCoupon({ |
| | |
| | | content: `确定要给选中的 ${rows.length} 位用户发放该优惠券吗?`, |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | try { |
| | | const { code } = await sendCoupon({ |
| | |
| | | content: '当前广告配置未保存,确定取消吗?', |
| | | positiveText: '确定关闭', |
| | | negativeText: '继续编辑', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | closeModal() |
| | | }, |
| | |
| | | content: `确认删除广告 "${row.bannerTitle}" 吗?`, |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const { error, code } = await deleteBanner(row.id) as any |
| | | if (!error && code === 200) { |
| | |
| | | content: `确认删除选中的 ${selectedRowKeys.value.length} 条广告吗?`, |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | // 并发删除 |
| | | try { |
| | |
| | | content: '输入框内有内容,确认取消吗?', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: () => { |
| | | doClose() |
| | | }, |
| | |
| | | content: '删除后数据不可恢复,请谨慎操作', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | try { |
| | | const ids = selectedRowKeys.value.join(',') |
| | |
| | | content: '删除后数据不可恢复,请谨慎操作', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | try { |
| | | const { code } = await deleteInvitationCodes(id.toString()) |
| | |
| | | content: '冻结后该用户手机号不可登录本系统', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const { code } = await freezeWhitelistByIds(selectedRowKeys.value.join(',')) |
| | | if (code === 200) { |
| | |
| | | content: '冻结后该用户手机号不可登录本系统', |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const { code } = await freezeWhitelistByIds(row.id.toString()) |
| | | if (code === 200) { |
| | |
| | | content: `确定要解冻用户 ${row.nickName || row.account} 吗?`, |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const { code } = await unfreezeWhitelist(row.id) |
| | | if (code === 200) { |
| | |
| | | content: `确定要删除用户 ${row.nickName || row.account} 吗?删除后数据不可恢复。`, |
| | | positiveText: '确定', |
| | | negativeText: '取消', |
| | | maskClosable: false, |
| | | autoFocus: false, |
| | | onPositiveClick: async () => { |
| | | const { code } = await deleteWhitelistByIds(row.id.toString()) |
| | | if (code === 200) { |