|
@@ -7,33 +7,31 @@ import {
|
|
|
Overtime_Edit
|
|
|
} from '@/api/workAttendance/index'
|
|
|
import { User_List } from '@/api/user/index'
|
|
|
-import { GlobalStore } from '@/stores/index'
|
|
|
+import Upload from '@/components/Upload/index.vue'
|
|
|
import Drawer from '@/components/Drawer/index.vue'
|
|
|
import Dialog from '@/components/dialog/Dialog.vue'
|
|
|
import { floatReg } from '@/views/salary/salary/relus'
|
|
|
import { reactive, ref, nextTick, computed } from 'vue'
|
|
|
import TableBase from '@/components/TableBase/index.vue'
|
|
|
import { getFormatDuration, dayJs } from '@/utils/common'
|
|
|
-import { Edit, Delete, View, Plus } from '@element-plus/icons-vue'
|
|
|
import { ElMessageBox, ElMessage } from 'element-plus'
|
|
|
-import { ColumnProps } from '@/components/TableBase/interface/index'
|
|
|
+import { useTablePublic } from '@/hooks/useTablePublic'
|
|
|
import type { FormInstance, FormRules } from 'element-plus'
|
|
|
-import Upload from '@/components/Upload/index.vue'
|
|
|
+import { Edit, Delete, View, Plus } from '@element-plus/icons-vue'
|
|
|
+import { ColumnProps } from '@/components/TableBase/interface/index'
|
|
|
|
|
|
-let uuid = ''
|
|
|
let isNew = ref(true)
|
|
|
const search = ref('')
|
|
|
const TableStatRef = ref()
|
|
|
const disabled = ref(false)
|
|
|
const tableApproverRef = ref()
|
|
|
-const globalStore = GlobalStore()
|
|
|
const formLabelWidth = ref('100px')
|
|
|
const ruleFormRef = ref<FormInstance>()
|
|
|
const dialog = ref<InstanceType<typeof Dialog> | null>(null)
|
|
|
const drawerRef = ref<InstanceType<typeof Drawer> | null>(null)
|
|
|
const TableRef = ref<InstanceType<typeof TableBase> | null>(null)
|
|
|
const uploadRef = ref<InstanceType<typeof Upload> | null>(null)
|
|
|
-const initParam = { User_tokey: globalStore.GET_User_tokey }
|
|
|
+const { resetForm, globalStore, updateOnTableList } = useTablePublic()
|
|
|
|
|
|
const columns: ColumnProps[] = [
|
|
|
{ prop: 'T_start_time', label: '开始时间', ellipsis: true },
|
|
@@ -51,6 +49,7 @@ const columns_Stat: ColumnProps[] = [
|
|
|
]
|
|
|
|
|
|
const form = ref({
|
|
|
+ uuid: '',
|
|
|
T_id: '',
|
|
|
T_text: '',
|
|
|
T_duration: 0,
|
|
@@ -84,7 +83,7 @@ const openDrawerOvertime = (str: string, row?: any) => {
|
|
|
if (!isNew.value) {
|
|
|
nextTick(() => {
|
|
|
form.value = { ...row }
|
|
|
- uuid = row.T_approver
|
|
|
+ form.value.uuid = row.T_approver
|
|
|
form.value.T_approver = row.T_approver_name
|
|
|
form.value.T_id = row.Id
|
|
|
form.value.T_duration = row.T_duration / 60
|
|
@@ -112,9 +111,7 @@ const OvertimeDelete = (row: any) => {
|
|
|
const res: any = await Overtime_Del({ User_tokey: globalStore.GET_User_tokey, T_id: row.Id })
|
|
|
if (res.Code === 200) {
|
|
|
ElMessage.success('删除成功!')
|
|
|
- nextTick(() => {
|
|
|
- TableRef.value?.getTableList()
|
|
|
- })
|
|
|
+ nextTick(() => updateOnTableList(TableRef.value))
|
|
|
}
|
|
|
})
|
|
|
.catch(() => {
|
|
@@ -128,16 +125,17 @@ const AddOvertime = (formEl: FormInstance | undefined) => {
|
|
|
let res: any = {}
|
|
|
let time = duration.value * 60
|
|
|
if (isNew.value) {
|
|
|
- res = await Overtime_Add({ ...form.value, T_approver: uuid, T_duration: time })
|
|
|
+ res = await Overtime_Add({ ...form.value, T_approver: form.value.uuid, T_duration: time })
|
|
|
} else {
|
|
|
- res = await Overtime_Edit({ ...form.value, T_approver: uuid, T_duration: time })
|
|
|
+ res = await Overtime_Edit({ ...form.value, T_approver: form.value.uuid, T_duration: time })
|
|
|
}
|
|
|
if (res.Code === 200) {
|
|
|
ElMessage.success(`${isNew.value ? '申请' : '修改'}成功!`)
|
|
|
nextTick(() => {
|
|
|
drawerRef.value?.closeDrawer()
|
|
|
- TableRef.value?.getTableList()
|
|
|
+ updateOnTableList(TableRef.value)
|
|
|
resetForm(ruleFormRef.value)
|
|
|
+ uploadRef.value?.clearfileList()
|
|
|
isNew.value = true
|
|
|
})
|
|
|
}
|
|
@@ -153,14 +151,10 @@ const callbackDrawer = (done: () => void) => {
|
|
|
isNew.value = true
|
|
|
nextTick(() => {
|
|
|
resetForm(ruleFormRef.value)
|
|
|
+ uploadRef.value?.clearfileList()
|
|
|
done()
|
|
|
})
|
|
|
}
|
|
|
-const resetForm = (formEl: FormInstance | undefined) => {
|
|
|
- if (!formEl) return
|
|
|
- uploadRef.value?.clearfileList()
|
|
|
- formEl.resetFields()
|
|
|
-}
|
|
|
|
|
|
// dialog
|
|
|
const Dialogcolumns: ColumnProps[] = [{ prop: 'T_name', label: '名字', name: 'T_name' }]
|
|
@@ -177,7 +171,7 @@ const selectApprover = () => {
|
|
|
dialog.value?.DialogOpen()
|
|
|
}
|
|
|
const getApproverInfo = (row: any) => {
|
|
|
- uuid = row.T_uuid
|
|
|
+ form.value.uuid = row.T_uuid
|
|
|
form.value.T_approver = row.T_name
|
|
|
dialog.value?.DialogClose()
|
|
|
}
|
|
@@ -200,7 +194,7 @@ const duration = computed(() => {
|
|
|
ref="TableRef"
|
|
|
:columns="columns"
|
|
|
:requestApi="Overtime_User_list"
|
|
|
- :initParam="initParam"
|
|
|
+ :initParam="{ User_tokey: globalStore.GET_User_tokey }"
|
|
|
layout="total,sizes,prev, pager, next"
|
|
|
>
|
|
|
<template #table-header>
|
|
@@ -243,7 +237,7 @@ const duration = computed(() => {
|
|
|
ref="TableStatRef"
|
|
|
:columns="columns_Stat"
|
|
|
:requestApi="Overtime_Stat"
|
|
|
- :initParam="initParam"
|
|
|
+ :initParam="{ User_tokey: globalStore.GET_User_tokey }"
|
|
|
layout="total,sizes,prev, pager, next"
|
|
|
>
|
|
|
<template #table-header="{ pageable }">
|