This commit is contained in:
parent
8b6ed69382
commit
59998e2818
|
|
@ -71,3 +71,12 @@ export function deleteAnalysisReminderAPI(data) {
|
|||
data,
|
||||
})
|
||||
}
|
||||
|
||||
// 获取班组人员列表
|
||||
export function getTeamUserListAPI(data) {
|
||||
return request({
|
||||
url: '/background/sj/workTeam/userList',
|
||||
method: 'get',
|
||||
params: data,
|
||||
})
|
||||
}
|
||||
|
|
|
|||
|
|
@ -224,11 +224,19 @@
|
|||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="提醒类型" prop="txType">
|
||||
<el-input
|
||||
<!-- <el-input
|
||||
v-model="riskWarningForm.txType"
|
||||
placeholder="请输入提醒类型"
|
||||
clearable
|
||||
/>
|
||||
/> -->
|
||||
<el-select
|
||||
v-model="riskWarningForm.txType"
|
||||
placeholder="请选择提醒类型"
|
||||
style="width: 100%"
|
||||
>
|
||||
<el-option label="用水" value="用水" />
|
||||
<el-option label="用电" value="用电" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="预警时间" prop="txTime">
|
||||
<el-date-picker
|
||||
|
|
|
|||
|
|
@ -542,11 +542,20 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="预警类型" prop="txType">
|
||||
<el-input
|
||||
<!-- <el-input
|
||||
v-model.trim="alertForm.txType"
|
||||
placeholder="请输入预警类型"
|
||||
clearable
|
||||
/>
|
||||
/> -->
|
||||
<el-select
|
||||
v-model="alertForm.txType"
|
||||
placeholder="请选择预警类型"
|
||||
style="width: 100%"
|
||||
>
|
||||
<el-option label="进度" value="进度" />
|
||||
<el-option label="成本" value="成本" />
|
||||
<el-option label="风险" value="风险" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="分析提醒内容" prop="content">
|
||||
<el-input
|
||||
|
|
|
|||
|
|
@ -367,11 +367,20 @@
|
|||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="提醒类型" prop="txType">
|
||||
<el-input
|
||||
<!-- <el-input
|
||||
clearable
|
||||
placeholder="请输入提醒类型"
|
||||
v-model.trim="reminderForm.txType"
|
||||
/>
|
||||
/> -->
|
||||
|
||||
<el-select
|
||||
style="width: 100%"
|
||||
placeholder="请选择提醒类型"
|
||||
v-model="reminderForm.txType"
|
||||
>
|
||||
<el-option label="人员" value="人员" />
|
||||
<el-option label="设备" value="设备" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="提醒时间" prop="txTime">
|
||||
<el-date-picker
|
||||
|
|
|
|||
|
|
@ -268,13 +268,7 @@
|
|||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="姓名" prop="userName">
|
||||
<el-input
|
||||
v-model.trim="taskForm.userName"
|
||||
placeholder="请输入姓名"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="所属班组" prop="teamId">
|
||||
<el-select
|
||||
v-model="taskForm.teamId"
|
||||
|
|
@ -290,6 +284,23 @@
|
|||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="姓名" prop="userId">
|
||||
<el-select
|
||||
v-model="taskForm.userId"
|
||||
placeholder="请选择姓名"
|
||||
style="width: 100%"
|
||||
clearable
|
||||
@change="handleUserChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="工作内容" prop="workContent">
|
||||
<el-input
|
||||
v-model.trim="taskForm.workContent"
|
||||
|
|
@ -449,6 +460,7 @@ import {
|
|||
addAnalysisReminderAPI,
|
||||
editAnalysisReminderAPI,
|
||||
deleteAnalysisReminderAPI,
|
||||
getTeamUserListAPI,
|
||||
} from '@/api/dataManage/workerEfficiency'
|
||||
import {
|
||||
getProjectSelectListAPI,
|
||||
|
|
@ -476,9 +488,11 @@ export default {
|
|||
taskEditId: null,
|
||||
projectList: [],
|
||||
teamList: [],
|
||||
userList: [], // 人员列表
|
||||
taskForm: {
|
||||
bidCode: '',
|
||||
userName: '',
|
||||
userId: '', // 人员ID
|
||||
userName: '', // 人员姓名
|
||||
teamName: '',
|
||||
teamId: '',
|
||||
workContent: '',
|
||||
|
|
@ -497,11 +511,11 @@ export default {
|
|||
trigger: 'change',
|
||||
},
|
||||
],
|
||||
userName: [
|
||||
userId: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入姓名',
|
||||
trigger: 'blur',
|
||||
message: '请选择姓名',
|
||||
trigger: 'change',
|
||||
},
|
||||
],
|
||||
teamId: [
|
||||
|
|
@ -648,6 +662,7 @@ export default {
|
|||
this.taskEditId = null
|
||||
this.taskForm = {
|
||||
bidCode: '',
|
||||
userId: '',
|
||||
userName: '',
|
||||
teamId: '',
|
||||
teamName: '',
|
||||
|
|
@ -659,6 +674,7 @@ export default {
|
|||
isYq: 0,
|
||||
yaDay: 0,
|
||||
}
|
||||
this.userList = [] // 清空人员列表
|
||||
this.$nextTick(() => {
|
||||
if (this.$refs.taskFormRef) {
|
||||
this.$refs.taskFormRef.clearValidate()
|
||||
|
|
@ -691,6 +707,7 @@ export default {
|
|||
}
|
||||
this.taskForm = {
|
||||
bidCode: row.bidCode || '',
|
||||
userId: row.userId || '',
|
||||
userName: row.userName || '',
|
||||
teamId: row.teamId || '',
|
||||
teamName: row.teamName || '',
|
||||
|
|
@ -706,6 +723,12 @@ export default {
|
|||
if (this.teamList.length === 0) {
|
||||
this.getTeamSelectList()
|
||||
}
|
||||
// 如果有班组ID,加载人员列表
|
||||
if (row.teamId) {
|
||||
this.getTeamUserList(row.teamId)
|
||||
} else {
|
||||
this.userList = []
|
||||
}
|
||||
this.$nextTick(() => {
|
||||
if (this.$refs.taskFormRef) {
|
||||
this.$refs.taskFormRef.clearValidate()
|
||||
|
|
@ -803,6 +826,16 @@ export default {
|
|||
) {
|
||||
params.taskStatus = String(params.taskStatus)
|
||||
}
|
||||
// 确保userId和userName都传递
|
||||
// 如果选择了人员但没有userName,从userList中获取
|
||||
if (params.userId && !params.userName) {
|
||||
const selectedUser = this.userList.find(
|
||||
(item) => item.id == params.userId,
|
||||
)
|
||||
if (selectedUser) {
|
||||
params.userName = selectedUser.name || ''
|
||||
}
|
||||
}
|
||||
if (this.taskEditId) {
|
||||
params.id = this.taskEditId
|
||||
}
|
||||
|
|
@ -964,13 +997,57 @@ export default {
|
|||
|
||||
// 班组的change事件
|
||||
handleTeamChange(value) {
|
||||
// 切换班组或清空班组时,先清空人员选择
|
||||
this.taskForm.userId = ''
|
||||
this.taskForm.userName = ''
|
||||
|
||||
const selectedTeam = this.teamList.find(
|
||||
(item) => item.teamId == value,
|
||||
)
|
||||
if (selectedTeam) {
|
||||
this.taskForm.teamName = selectedTeam.teamName || ''
|
||||
// 选择班组后,加载该班组的人员列表
|
||||
if (value) {
|
||||
this.getTeamUserList(value)
|
||||
} else {
|
||||
this.userList = []
|
||||
}
|
||||
} else {
|
||||
this.taskForm.teamName = ''
|
||||
this.userList = []
|
||||
}
|
||||
},
|
||||
|
||||
// 人员的change事件
|
||||
handleUserChange(value) {
|
||||
const selectedUser = this.userList.find((item) => item.id == value)
|
||||
if (selectedUser) {
|
||||
this.taskForm.userName = selectedUser.name || ''
|
||||
} else {
|
||||
this.taskForm.userName = ''
|
||||
}
|
||||
},
|
||||
|
||||
// 获取班组人员列表
|
||||
async getTeamUserList(teamId) {
|
||||
if (!teamId) {
|
||||
this.userList = []
|
||||
return
|
||||
}
|
||||
try {
|
||||
const res = await getTeamUserListAPI({
|
||||
pageNum: 1,
|
||||
pageSize: 9999,
|
||||
teamId: teamId,
|
||||
})
|
||||
if (res.code === 200) {
|
||||
this.userList = res.rows || res.data || []
|
||||
} else {
|
||||
this.userList = []
|
||||
}
|
||||
} catch (error) {
|
||||
this.userList = []
|
||||
console.error('获取人员列表失败', error)
|
||||
}
|
||||
},
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue