diff --git a/src/api/business/task.ts b/src/api/business/task.ts new file mode 100644 index 0000000..a337c7f --- /dev/null +++ b/src/api/business/task.ts @@ -0,0 +1,35 @@ +/** + * 任务分发 +*/ +import request from '../index' +import type { ITaskQuery } from '@/views/business/schedule/task/task-interface' +const prefix = '/meter' + +// 列表查询 +export function getTaskList(data: ITaskQuery) { + return request({ + url: `${prefix}/schedule/task/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} + +// 导出列表 +export function exportTaskList(data: Omit) { + return request({ + url: `${prefix}/schedule/task/listExport`, + method: 'post', + responseType: 'blob', + data, + }) +} + +// 检测流程配置 +export function interchangeListTake(data: { id: string; scheduleId: string }) { + return request({ + url: `${prefix}/schedule/task/setSchedule`, + method: 'post', + data, + }) +} + diff --git a/src/api/business/task.ts b/src/api/business/task.ts new file mode 100644 index 0000000..a337c7f --- /dev/null +++ b/src/api/business/task.ts @@ -0,0 +1,35 @@ +/** + * 任务分发 +*/ +import request from '../index' +import type { ITaskQuery } from '@/views/business/schedule/task/task-interface' +const prefix = '/meter' + +// 列表查询 +export function getTaskList(data: ITaskQuery) { + return request({ + url: `${prefix}/schedule/task/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} + +// 导出列表 +export function exportTaskList(data: Omit) { + return request({ + url: `${prefix}/schedule/task/listExport`, + method: 'post', + responseType: 'blob', + data, + }) +} + +// 检测流程配置 +export function interchangeListTake(data: { id: string; scheduleId: string }) { + return request({ + url: `${prefix}/schedule/task/setSchedule`, + method: 'post', + data, + }) +} + diff --git a/src/components/dialog/selectEmployeesDialog.vue b/src/components/dialog/selectEmployeesDialog.vue index 6db84db..4ce1c98 100644 --- a/src/components/dialog/selectEmployeesDialog.vue +++ b/src/components/dialog/selectEmployeesDialog.vue @@ -15,6 +15,21 @@ type: Array, default: () => [], }, + // 默认查询组织 + deptId: { + type: String, + default: '', + }, + // 是否显示部门选择下拉菜单 + showDeptSelect: { + type: Boolean, + default: true, + }, + // 是否多选 + multi: { + type: Boolean, + default: true, + }, }) const emits = defineEmits(['update:visible', 'change']) const table = ref() @@ -23,7 +38,6 @@ children: 'children', label: 'name', } -const select = ref() // 表格表头 const columns = [ // { text: '账号', value: 'account', align: 'center' }, @@ -52,10 +66,13 @@ sort: 'id', deptType: '', }) +// 默认给deptId赋值 +listQuery.deptId = props.deptId const { proxy } = getCurrentInstance() const checkedList = ref([]) // 多选的数据 const multipleTable = ref([]) +const singleChecked = ref('') // 单选选中id const closeDialog = () => { emits('update:visible', false) } @@ -74,17 +91,24 @@ } }) const saveDialog = () => { - const checkedList = multipleTable.value.map(item => ({ - ...item, - type: 1, // type: 1.成员 2.角色 - // targetId: item.roleId, - // name: item.roleName, - targetId: item.id, - name: item.name, - })) - emits('change', checkedList) + // 多选 + if (props.multi) { + const checkedList = multipleTable.value.map(item => ({ + ...item, + type: 1, // type: 1.成员 2.角色 + // targetId: item.roleId, + // name: item.roleName, + targetId: item.id, + name: item.name, + })) + emits('change', checkedList) + } + else { + const checkValue = list.value.find(item => item.id == singleChecked.value) + emits('change', checkValue) + } } - +const select = ref('') // 获取列表数据 const fetchData = (flag) => { select.value = '' @@ -100,10 +124,9 @@ } // 多选 const multiSelect = (val) => { - console.log('多选成员') - console.log(val) multipleTable.value = val } + // 获取组织列表树数据 const fetchTreeData = () => { getDeptTreeList(listQuery).then((res) => { @@ -162,12 +185,18 @@ - + + + +