diff --git a/src/api/dataManage/common.js b/src/api/dataManage/common.js index c3eed9c..5b80bfd 100644 --- a/src/api/dataManage/common.js +++ b/src/api/dataManage/common.js @@ -12,7 +12,16 @@ export function getProjectSelectListAPI(data = {}) { // 获取班组下拉选 export function getTeamSelectListAPI(data = {}) { return request({ - url: '/background/back/workTeam/getTeamLists', + url: '/background/sj/workTeam/getTeamList', + method: 'get', + params: data, + }) +} + +// 获取设备的下拉选 +export function getDeviceSelectListAPI(data = {}) { + return request({ + url: '/background/sj/workTeam/getDevList', method: 'get', params: data, }) diff --git a/src/api/dataManage/resourceUse.js b/src/api/dataManage/resourceUse.js index ffe1234..4ab20b7 100644 --- a/src/api/dataManage/resourceUse.js +++ b/src/api/dataManage/resourceUse.js @@ -2,225 +2,252 @@ import request from '@/utils/request' // 获取资源利用率班组人员管理列表 export function getResourceUseTeamListAPI(data) { - return request({ - url: '/background/sj/workTeam/list', - method: 'get', - params: data, - }) + return request({ + url: '/background/sj/workTeam/list', + method: 'get', + params: data, + }) } // 新增资源利用率班组人员 export function addResourceUseTeamAPI(data) { - return request({ - url: '/background/sj/workTeam/addData', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/addData', + method: 'post', + data, + }) } // 编辑资源利用率班组人员 export function editResourceUseTeamAPI(data) { - return request({ - url: '/background/sj/workTeam/updateData', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/updateData', + method: 'post', + data, + }) } // 删除资源利用率班组人员 export function deleteResourceUseTeamAPI(data) { - return request({ - url: '/background/sj/workTeam/delete', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/delete', + method: 'post', + data, + }) } // 获取资源利用率大型设备管理列表 export function getResourceUseDeviceListAPI(data) { - return request({ - url: '/background/sj/workTeam/getMaxDevList', - method: 'get', - params: data, - }) + return request({ + url: '/background/sj/workTeam/getMaxDevList', + method: 'get', + params: data, + }) } // 新增资源利用率大型设备管理 export function addResourceUseDeviceAPI(data) { - return request({ - url: '/background/sj/workTeam/addMaxDevData', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/addMaxDevData', + method: 'post', + data, + }) } // 编辑资源利用率大型设备管理 export function editResourceUseDeviceAPI(data) { - return request({ - url: '/background/sj/workTeam/updateMaxDevData', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/updateMaxDevData', + method: 'post', + data, + }) } // 删除资源利用率大型设备管理 export function deleteResourceUseDeviceAPI(data) { - return request({ - url: '/background/sj/workTeam/delMaxDevData', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/delMaxDevData', + method: 'post', + data, + }) } // 获取班组人数列表数据 export function getResourceUseTeamCountListAPI(data) { - return request({ - url: '/background/sj/workTeam/userList', - method: 'get', - params: data, - }) + return request({ + url: '/background/sj/workTeam/userList', + method: 'get', + params: data, + }) } // 新增班组人数 export function addResourceUseTeamCountAPI(data) { - return request({ - url: '/background/sj/workTeam/addUserData', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/addUserData', + method: 'post', + data, + }) } // 编辑班组人数 export function editResourceUseTeamCountAPI(data) { - return request({ - url: '/background/sj/workTeam/updateUserData', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/updateUserData', + method: 'post', + data, + }) } // 删除班组人数 export function deleteResourceUseTeamCountAPI(data) { - return request({ - url: '/background/sj/workTeam/delUser', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/delUser', + method: 'post', + data, + }) } // 获取到岗人数列表数据 export function getResourceUseOnDutyListAPI(data) { - return request({ - url: '/background/sj/workTeam/getOnDutyList', - method: 'get', - params: data, - }) + return request({ + url: '/background/sj/workTeam/getOnDutyList', + method: 'get', + params: data, + }) } // 获取没有到岗的人员列表 export function getResourceUseNoDutyListAPI(data) { - return request({ - url: '/background/sj/workTeam/getNoDutyList', - method: 'get', - params: data, - }) + return request({ + url: '/background/sj/workTeam/getNoDutyList', + method: 'get', + params: data, + }) } // 提交到岗人数 export function submitResourceUseOnDutyAPI(data) { - return request({ - url: '/background/sj/workTeam/addOnDutyUser', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/addOnDutyUser', + method: 'post', + data, + }) } // 删除到岗人数 export function deleteResourceUseOnDutyAPI(data) { - return request({ - url: '/background/sj/workTeam/delOnDuty', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/delOnDuty', + method: 'post', + data, + }) +} + +// 获取设备使用记录列表 +export function getDeviceUseRecordListAPI(data) { + return request({ + url: '/background/sj/workTeam/getDevUsedList', + method: 'get', + params: data, + }) } // 新增设备使用记录 export function addDeviceUseRecordAPI(data) { - return request({ - url: '/background/sj/workTeam/addDeviceUseRecord', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/addDevUsedData', + method: 'post', + data, + }) +} + +// 编辑设备使用记录 +export function editDeviceUseRecordAPI(data) { + return request({ + url: '/background/sj/workTeam/updateDevUsedData', + method: 'post', + data, + }) +} + +// 删除设备使用记录 +export function deleteDeviceUseRecordAPI(data) { + return request({ + url: '/background/sj/workTeam/delDevUsedData', + method: 'post', + data, + }) } // 获取设备故障记录列表 export function getDeviceFaultRecordListAPI(data) { - return request({ - url: '/background/sj/workTeam/getDeviceFaultRecordList', - method: 'get', - params: data, - }) + return request({ + url: '/background/sj/workTeam/getFaultList', + method: 'get', + params: data, + }) } // 新增设备故障记录 export function addDeviceFaultRecordAPI(data) { - return request({ - url: '/background/sj/workTeam/addDeviceFaultRecord', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/addFaultData', + method: 'post', + data, + }) } // 编辑设备故障记录 export function editDeviceFaultRecordAPI(data) { - return request({ - url: '/background/sj/workTeam/updateDeviceFaultRecord', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/updateFaultData', + method: 'post', + data, + }) } // 删除设备故障记录 export function deleteDeviceFaultRecordAPI(data) { - return request({ - url: '/background/sj/workTeam/deleteDeviceFaultRecord', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/delFaultData', + method: 'post', + data, + }) } // 获取分析提醒列表 export function getAnalysisReminderListAPI(data) { - return request({ - url: '/background/sj/workTeam/getAnalysisReminderList', - method: 'get', - params: data, - }) + return request({ + url: '/background/sj/workTeam/getAsyncWarnList', + method: 'get', + params: data, + }) } // 新增分析提醒 export function addAnalysisReminderAPI(data) { - return request({ - url: '/background/sj/workTeam/addAnalysisReminder', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/addAsyncWarnList', + method: 'post', + data, + }) } // 编辑分析提醒 export function editAnalysisReminderAPI(data) { - return request({ - url: '/background/sj/workTeam/updateAnalysisReminder', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/updateAsyncWarnList', + method: 'post', + data, + }) } // 删除分析提醒 export function deleteAnalysisReminderAPI(data) { - return request({ - url: '/background/sj/workTeam/deleteAnalysisReminder', - method: 'post', - data, - }) + return request({ + url: '/background/sj/workTeam/delAsyncWarnList', + method: 'post', + data, + }) } diff --git a/src/api/dataManage/workerEfficiency.js b/src/api/dataManage/workerEfficiency.js index 0a4484b..d2ffb94 100644 --- a/src/api/dataManage/workerEfficiency.js +++ b/src/api/dataManage/workerEfficiency.js @@ -66,7 +66,7 @@ export function editAnalysisReminderAPI(data) { // 删除分析提醒 export function deleteAnalysisReminderAPI(data) { return request({ - url: '/background/sj/newWorker/deleteWarnData', + url: '/background/sj/newWorker/delWarnData', method: 'post', data, }) diff --git a/src/views/dataManage/resourceUse/components/addAndEditFormOne.vue b/src/views/dataManage/resourceUse/components/addAndEditFormOne.vue index 8ec3178..c2a13ba 100644 --- a/src/views/dataManage/resourceUse/components/addAndEditFormOne.vue +++ b/src/views/dataManage/resourceUse/components/addAndEditFormOne.vue @@ -6,6 +6,24 @@ ref="addAndEditFormRef" :rules="addAndEditFormRules" > + + + + + + + + + @@ -21,14 +39,20 @@ - - + + + + @@ -53,7 +77,11 @@ import { addResourceUseTeamAPI, editResourceUseTeamAPI, -} from '@/api/dataAnalysis/resourceUse' +} from '@/api/dataManage/resourceUse' +import { + getProjectSelectListAPI, + getTeamSelectListAPI, +} from '@/api/dataManage/common' export default { name: 'AddAndEditForm', props: { @@ -73,7 +101,16 @@ export default { teamName: '', teamLeader: '', }, + projectList: [], + teamList: [], addAndEditFormRules: { + bidCode: [ + { + required: true, + message: '请选择工程名称', + trigger: 'blur', + }, + ], workType: [ { required: true, @@ -81,10 +118,10 @@ export default { trigger: 'blur', }, ], - teamName: [ + teamId: [ { required: true, - message: '请输入班组名称', + message: '请选择所属班组', trigger: 'blur', }, ], @@ -99,6 +136,10 @@ export default { } }, + created() { + this.getTeamAndProjectList() + }, + methods: { submitForm() { return new Promise((resolve, reject) => { @@ -123,15 +164,39 @@ export default { }) }) }, + + // 获取班组和工程名称下拉列表 + async getTeamAndProjectList() { + const result1 = await getTeamSelectListAPI({ + pageNum: 1, + pageSize: 1000, + }) + this.teamList = result1.data + const result2 = await getProjectSelectListAPI() + this.projectList = result2.data + }, + + // 班组的change事件 + handleTeamChange(value) { + const selectedTeam = this.teamList.find( + (item) => item.teamId == value, + ) + if (selectedTeam) { + this.addAndEditForm.teamName = selectedTeam.teamName || '' + } else { + this.addAndEditForm.teamName = '' + } + }, }, watch: { editRow: { handler(newVal) { if (Object.keys(newVal).length > 0) { - const { workType, teamName, teamLeader } = newVal + const { workType, teamId, teamLeader, bidCode } = newVal this.addAndEditForm.workType = workType - this.addAndEditForm.teamName = teamName + this.addAndEditForm.teamId = teamId + this.addAndEditForm.bidCode = bidCode this.addAndEditForm.teamLeader = teamLeader } }, diff --git a/src/views/dataManage/resourceUse/components/addAndEditFormTwo.vue b/src/views/dataManage/resourceUse/components/addAndEditFormTwo.vue index f6e1675..6d7b16d 100644 --- a/src/views/dataManage/resourceUse/components/addAndEditFormTwo.vue +++ b/src/views/dataManage/resourceUse/components/addAndEditFormTwo.vue @@ -6,6 +6,24 @@ ref="addAndEditFormRef" :rules="addAndEditFormRules" > + + + + + + + + + @@ -71,6 +89,8 @@ import { editResourceUseDeviceAPI, } from '@/api/dataAnalysis/resourceUse' +import { getProjectSelectListAPI } from '@/api/dataManage/common' + import moment from 'moment' export default { name: 'AddAndEditForm', @@ -86,13 +106,22 @@ export default { }, data() { return { + projectList: [], addAndEditForm: { + bidCode: '', devName: '', inTime: '', outTime: '', usedDay: '', }, addAndEditFormRules: { + bidCode: [ + { + required: true, + message: '请选择工程名称', + trigger: 'blur', + }, + ], devName: [ { required: true, @@ -166,17 +195,28 @@ export default { ) } }, + // 获取工程下拉列表 + async getProjectSelectList() { + const res = await getProjectSelectListAPI() + this.projectList = res.data + }, + }, + + created() { + this.getProjectSelectList() }, watch: { editRow: { handler(newVal) { if (Object.keys(newVal).length > 0) { - const { devName, inTime, outTime, usedDay } = newVal + const { devName, inTime, outTime, usedDay, bidCode } = + newVal this.addAndEditForm.devName = devName this.addAndEditForm.inTime = inTime this.addAndEditForm.outTime = outTime this.addAndEditForm.usedDay = usedDay + this.addAndEditForm.bidCode = bidCode } }, immediate: true, diff --git a/src/views/dataManage/resourceUse/components/faultRecord.vue b/src/views/dataManage/resourceUse/components/faultRecord.vue index 99f7d9a..8bda12e 100644 --- a/src/views/dataManage/resourceUse/components/faultRecord.vue +++ b/src/views/dataManage/resourceUse/components/faultRecord.vue @@ -47,15 +47,17 @@ align="center" /> - + + + @@ -208,7 +151,7 @@ import { editDeviceFaultRecordAPI, deleteDeviceFaultRecordAPI, } from '@/api/dataManage/resourceUse' -import { getStaffList } from '@/api/car-man/staff' +import { getDeviceSelectListAPI } from '@/api/dataManage/common' export default { name: 'FaultRecord', @@ -236,40 +179,26 @@ export default { addEditSubmitting: false, editId: null, addEditForm: { - date: '', - deviceName: '', - personIds: [], - personNames: [], + faultTime: '', + deviceId: '', }, addEditRules: { - date: [ + faultTime: [ { required: true, - message: '请选择日期', + message: '请选择故障日期', trigger: 'change', }, ], - deviceName: [ + deviceId: [ { required: true, - message: '请输入设备名称', - trigger: 'blur', + message: '请选择使用设备', + trigger: 'change', }, ], }, - - // 人员选择 - personSelectDialogVisible: false, - personLoading: false, - personList: [], - personTotal: 0, - selectedPersons: [], - personSubmitting: false, - personQueryParams: { - pageNum: 1, - pageSize: 10, - keyword: '', - }, + deviceOptions: [], } }, watch: { @@ -279,6 +208,7 @@ export default { this.innerVisible = val if (val) { this.loadFaultRecordList() + this.loadDeviceOptions() } }, }, @@ -315,11 +245,18 @@ export default { // 新增 onHandleAdd() { - this.selectedPersons = [] - this.personQueryParams.keyword = '' - this.personQueryParams.pageNum = 1 - this.personSelectDialogVisible = true - this.loadPersonList() + this.addEditTitle = '新增' + this.editId = null + this.addEditForm = { + faultTime: '', + deviceId: '', + } + this.$nextTick(() => { + if (this.$refs.addEditFormRef) { + this.$refs.addEditFormRef.clearValidate() + } + }) + this.addEditDialogVisible = true }, // 编辑 @@ -327,9 +264,14 @@ export default { this.addEditTitle = '编辑' this.editId = row.id this.addEditForm = { - date: row.date || '', - deviceName: row.deviceName || '', + faultTime: row.faultTime || '', + deviceId: row.devId || '', } + this.$nextTick(() => { + if (this.$refs.addEditFormRef) { + this.$refs.addEditFormRef.clearValidate() + } + }) this.addEditDialogVisible = true }, @@ -358,6 +300,25 @@ export default { .catch(() => {}) }, + // 加载设备选项列表 + async loadDeviceOptions() { + try { + const res = await getDeviceSelectListAPI() + this.deviceOptions = res.data || [] + } catch (error) { + console.error('获取设备列表失败', error) + } + }, + + // 获取设备名称 + getDeviceName(deviceId) { + if (!deviceId) return '' + const device = this.deviceOptions.find( + (item) => item.id === deviceId, + ) + return device ? device.devName : '' + }, + // 提交新增/编辑 async onHandleSubmitAddEdit() { this.$refs.addEditFormRef.validate(async (valid) => { @@ -365,13 +326,9 @@ export default { this.addEditSubmitting = true try { const params = { - date: this.addEditForm.date, - deviceName: this.addEditForm.deviceName, - } - // 如果是新增,添加人员信息 - if (!this.editId && this.addEditForm.personIds) { - params.personIds = this.addEditForm.personIds - params.personNames = this.addEditForm.personNames + faultTime: this.addEditForm.faultTime, + devName: this.getDeviceName(this.addEditForm.deviceId), + devId: this.addEditForm.deviceId, } if (this.editId) { params.id = this.editId @@ -396,60 +353,6 @@ export default { } }) }, - - // 加载人员列表 - async loadPersonList() { - this.personLoading = true - try { - const res = await getStaffList(this.personQueryParams) - this.personList = res.rows || [] - this.personTotal = res.total || 0 - } catch (error) { - this.$message.error('获取人员列表失败') - } finally { - this.personLoading = false - } - }, - - // 人员查询 - onHandlePersonQuery() { - this.personQueryParams.pageNum = 1 - this.loadPersonList() - }, - - // 人员分页变化 - onPersonPageChange() { - this.loadPersonList() - }, - - // 人员选择变化 - onPersonSelectionChange(selection) { - this.selectedPersons = selection - }, - - // 确认选择人员 - async onHandleConfirmPerson() { - if (this.selectedPersons.length === 0) { - this.$message.warning('请至少选择一名人员') - return - } - // 关闭人员选择弹框,打开新增表单 - this.personSelectDialogVisible = false - this.addEditTitle = '新增' - this.editId = null - this.addEditForm = { - date: '', - deviceName: '', - } - // 保存选中的人员信息,用于后续提交 - this.addEditForm.personIds = this.selectedPersons.map( - (p) => p.userId, - ) - this.addEditForm.personNames = this.selectedPersons.map( - (p) => p.userName, - ) - this.addEditDialogVisible = true - }, }, } diff --git a/src/views/dataManage/resourceUse/components/useRecord.vue b/src/views/dataManage/resourceUse/components/useRecord.vue new file mode 100644 index 0000000..efcdf08 --- /dev/null +++ b/src/views/dataManage/resourceUse/components/useRecord.vue @@ -0,0 +1,361 @@ + + + + + + diff --git a/src/views/dataManage/resourceUse/index.vue b/src/views/dataManage/resourceUse/index.vue index fe33dd3..4e361d8 100644 --- a/src/views/dataManage/resourceUse/index.vue +++ b/src/views/dataManage/resourceUse/index.vue @@ -232,17 +232,17 @@ /> @@ -328,58 +328,7 @@ - - - - - - - - - - - - - - + @@ -387,7 +336,7 @@ - - - - - + + - + - + { - if (!valid) return - this.deviceRecordSubmitting = true - try { - const res = await addDeviceUseRecordAPI( - this.deviceRecordForm, - ) - if (res.code === 200) { - this.$message.success('新增成功') - this.deviceRecordDialogVisible = false - } else { - this.$message.error(res.msg || '新增失败') - } - } catch (error) { - this.$message.error('新增失败') - } finally { - this.deviceRecordSubmitting = false - } - }) - }, - - // 获取设备选项列表 - async getDeviceOptions() { - try { - const res = await getResourceUseDeviceListAPI({ - pageNum: 1, - pageSize: 1000, - }) - this.deviceOptions = res.rows || [] - } catch (error) { - console.error('获取设备列表失败', error) - } + this.useRecordDialogVisible = true }, // 打开设备故障记录弹框 @@ -844,9 +738,9 @@ export default { this.reminderDialogTitle = '新增' this.reminderEditId = null this.reminderForm = { - reminderType: '', - reminderTime: '', - reminderContent: '', + txType: '', + txTime: '', + content: '', } this.reminderDialogVisible = true }, @@ -856,24 +750,20 @@ export default { this.reminderDialogTitle = '编辑' this.reminderEditId = row.id this.reminderForm = { - reminderType: row.reminderType || '', - reminderTime: row.reminderTime || '', - reminderContent: row.reminderContent || '', + txType: row.txType || '', + txTime: row.txTime || '', + content: row.content || '', } this.reminderDialogVisible = true }, // 删除分析提醒 onHandleDeleteReminder(row) { - this.$confirm( - '此操作将永久删除该分析提醒, 是否继续?', - '提示', - { - confirmButtonText: '确定', - cancelButtonText: '取消', - type: 'warning', - }, - ) + this.$confirm('此操作将永久删除该分析提醒, 是否继续?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning', + }) .then(async () => { try { const res = await deleteAnalysisReminderAPI({ diff --git a/src/views/dataManage/workerEfficiency/index.vue b/src/views/dataManage/workerEfficiency/index.vue index 2456c12..42d5219 100644 --- a/src/views/dataManage/workerEfficiency/index.vue +++ b/src/views/dataManage/workerEfficiency/index.vue @@ -128,7 +128,7 @@