style:设备管理-任务计划-新增工单按钮逻辑优化

main
黄伟杰 21 hours ago
parent b27e5324bc
commit 2d678580cb

@ -2156,6 +2156,8 @@ export default {
selectCronBeforeEnable: 'Please fill in cron expression before enabling task',
cronAlertTitle: 'Tip',
cronAlertConfirm: 'Got it',
createTicketConfirm: 'Are you sure you want to create a work order?',
createTicketDisabledTip: 'Disabled tasks cannot create work orders',
createTicketSuccess: 'Create work order successfully',
createTicketFail: 'Create work order failed',
updateEnabledSuccess: 'Update enabled status successfully',

@ -2136,7 +2136,7 @@ export default {
moldList: '模具列表',
dateRange: '起止日期',
operableUsers: '可操作人',
createWorkOrder: '新增工单管理',
createWorkOrder: '新增工单',
placeholderName: '请输入名称',
placeholderTaskType: '请选择类型',
placeholderProjectForm: '请选择项目表单',
@ -2151,6 +2151,8 @@ export default {
selectCronBeforeEnable: '请先填写 cron 表达式,再启用任务',
cronAlertTitle: '提示',
cronAlertConfirm: '我知道了',
createTicketConfirm: '确定要新增工单吗?',
createTicketDisabledTip: '未启用状态不能新增工单',
createTicketSuccess: '创建工单成功',
createTicketFail: '创建工单失败',
updateEnabledSuccess: '更新启用状态成功',

@ -203,7 +203,8 @@
<el-button
link
type="success"
@click="handleCreateTicket(scope.row.id)"
:disabled="!isTaskEnabled(scope.row)"
@click="handleCreateTicket(scope.row)"
:loading="ticketLoadingId === scope.row.id"
>
{{ t('EquipmentManagement.TaskManagement.createWorkOrder') }}
@ -373,6 +374,8 @@ const openForm = (type: string, row?: TaskManagementVO) => {
formRef.value.open(type, row)
}
const isTaskEnabled = (row: TaskManagementVO) => row.enabled === true || (row.enabled as any) === 'true'
const handleDelete = async (id?: number) => {
if (!id) return
try {
@ -384,11 +387,25 @@ const handleDelete = async (id?: number) => {
}
const ticketLoadingId = ref<number | undefined>(undefined)
const handleCreateTicket = async (id?: number) => {
if (!id) return
ticketLoadingId.value = id
const handleCreateTicket = async (row?: TaskManagementVO) => {
if (!row?.id) return
if (!isTaskEnabled(row)) {
message.warning(t('EquipmentManagement.TaskManagement.createTicketDisabledTip'))
return
}
try {
await message.confirm(
t('EquipmentManagement.TaskManagement.createTicketConfirm'),
t('common.reminder')
)
} catch {
return
}
ticketLoadingId.value = row.id
try {
await TaskManagementApi.createTaskManagementTicket(id)
await TaskManagementApi.createTaskManagementTicket(row.id)
message.success(t('EquipmentManagement.TaskManagement.createTicketSuccess'))
} catch {
message.error(t('EquipmentManagement.TaskManagement.createTicketFail'))
@ -398,7 +415,7 @@ const handleCreateTicket = async (id?: number) => {
}
const handleBeforeEnabledChange = async (row: TaskManagementVO) => {
const isEnabled = row.enabled === true || row.enabled === 'true'
const isEnabled = isTaskEnabled(row)
if (isEnabled) return true
const cronExpression = (row as any)?.cronExpression
if (typeof cronExpression === 'string' && cronExpression.trim()) return true

Loading…
Cancel
Save