Commit 31a1730e authored by 15008242619's avatar 15008242619 Committed by jingnan

领用出库新增紧急领用

parent 5c58dbb1
...@@ -45,179 +45,182 @@ ...@@ -45,179 +45,182 @@
import { post } from '@/utils/http' import { post } from '@/utils/http'
export default { export default {
name: 'OutStorageUseApply', name: 'OutStorageUseApply',
components: {}, components: {},
props: { props: {
selectData: { selectData: {
type: Object, type: Object,
default: () => {} default: () => {}
}
},
data() {
return {
dialogVisible: false,
setPersonVisible: false,
selectionRows: [],
form: {},
formData: [{
split: 1,
data: [
{
title: '设置审批领导',
key: 'userIds',
component: {
clearable: true,
name: 'el-select',
placeholder: '请选择',
multiple: true,
options: []
}
}]
}],
rules: {
userIds: [
{
required: true,
message: '请填写审批领导',
trigger: ['blur', 'change']
}
]
} }
} },
}, data() {
computed: {}, return {
watch: {}, dialogVisible: false,
created() { setPersonVisible: false,
const httpParams = { selectionRows: [],
'pageFrom': 1, form: {},
'pageSize': 9999, formData: [{
'searchItems': { split: 1,
'children': [], data: [
'items': [ {
{ title: '设置审批领导',
'fieldName': 'source.name', key: 'userIds',
'operator': 'IN', component: {
'value': ['项目部审批人员'] clearable: true,
} name: 'el-select',
], placeholder: '请选择',
'operator': 'AND' multiple: true,
}, options: []
'openProps': [ }
{ }]
'name': 'source', }],
'pageFrom': 1, rules: {
'pageSize': 9999 userIds: [
}, {
{ required: true,
'name': 'target', message: '请填写审批领导',
'pageFrom': 1, trigger: ['blur', 'change']
'pageSize': 9999 }
} ]
],
'sortItem': [
{
'fieldName': 'modifyTime',
'sortOrder': 'desc'
}
]
}
post('/DxGroupMemberLink/search', httpParams).then(res => {
const arr = []
const ids = []
res.items.content.forEach(item => {
if (ids.indexOf(item.target.id) === -1) {
ids.push(item.target.id)
arr.push({
value: item.target.id,
label: item.target.name + '/' + item.target.number
})
}
})
this.formData[0].data.forEach(item => {
if (item.key === 'userIds') {
item.component.options = arr
} }
})
}).catch((err) => {
console.log(err)
})
},
mounted() {
this.$bus.$on('cancelAndRefresh', (data) => {
this.$refs.applyTable && this.$refs.applyTable.$refs.asCom.getData()
})
},
// 组件方法
methods: {
tableToolHandler(e) {
console.log(e.key.btnValue)
if (e.key.btnValue === 'useApply') {
this.useApply()
} }
}, },
useApply() { computed: {},
this.dialogVisible = true watch: {},
created() {
}, },
confirm() { mounted() {
let isUrgentUse = 0 this.$bus.$on('cancelAndRefresh', (data) => {
this.selectionRows.forEach(item => { this.$refs.applyTable && this.$refs.applyTable.$refs.asCom.getData()
if (item.typeName !== 'UrgentUse') {
isUrgentUse++
}
}) })
if (isUrgentUse === 0) {
// 紧急领用选人
this.dialogVisible = false
this.setPersonVisible = true
} else if (isUrgentUse === this.selectionRows.length) {
post('/DxWorkflowTask/apply/batchPass?applyIds=' + this.selectionRows.map(item => ({ 'taskId': item.processTaskId, 'pboId': item.id }))).then(res => {
this.$utils.showMessageSuccess('提交成功')
this.$refs.applyTable.$refs.asCom.getData()
}).catch(() => {
this.$utils.showMessageWarning('出现异常,提交失败')
}).finally(() => {
this.dialogVisible = false
})
} else {
this.dialogVisible = false
this.$utils.showMessageWarning('紧急领用不能和其他领用类型一起提交')
}
},
cancle() {
this.dialogVisible = false
}, },
setPersonConfirm() { // 组件方法
const ids = [] methods: {
if (this.selectionRows && this.selectionRows.length) { getPersonList(){
this.selectionRows.forEach(item => ids.push(item.id)) const httpParams = {
} 'pageFrom': 1,
if (this.form.userIds && this.form.userIds.length !== 0) { 'pageSize': 9999,
post('/OutStorageRequest/creator/batchApply?userIds=' + this.form.userIds, ids).then(res => { 'searchItems': {
this.$utils.showMessageSuccess('提交成功') 'children': [],
setTimeout(() => { 'items': [
this.$refs.applyTable.$refs.asCom.getData() {
}, 1500) 'fieldName': 'source.name',
}).catch(err => { 'operator': 'IN',
this.$utils.showMessageWarning('出现异常,提交失败') 'value': ['项目部审批人员']
}
],
'operator': 'AND'
},
'openProps': [
{
'name': 'source',
'pageFrom': 1,
'pageSize': 9999
},
{
'name': 'target',
'pageFrom': 1,
'pageSize': 9999
}
],
'sortItem': [
{
'fieldName': 'modifyTime',
'sortOrder': 'desc'
}
]
}
post('/DxGroupMemberLink/search', httpParams).then(res => {
const arr = []
const ids = []
res.items.content.forEach(item => {
if (ids.indexOf(item.target.id) === -1) {
ids.push(item.target.id)
arr.push({
value: item.target.id,
label: item.target.name + '/' + item.target.number
})
}
})
this.formData[0].data.forEach(item => {
if (item.key === 'userIds') {
item.component.options = arr
}
})
}).catch((err) => {
console.log(err) console.log(err)
}).finally(() => {
this.dialogVisible = false
this.setPersonVisible = false
this.$set(this.form, 'userIds', '')
}) })
} else { },
this.$utils.showMessageWarning('请选择审批领导') tableToolHandler(e) {
console.log(e.key.btnValue)
if (e.key.btnValue === 'useApply') {
this.useApply()
}
},
useApply() {
this.dialogVisible = true
},
confirm() {
let isUrgentUse = 0
this.selectionRows.forEach(item => {
if (item.typeName !== 'UrgentUse') {
isUrgentUse++
}
})
if (isUrgentUse === 0) {
// 紧急领用选人
this.getPersonList()
this.dialogVisible = false
this.setPersonVisible = true
} else if (isUrgentUse === this.selectionRows.length) {
post('/DxWorkflowTask/apply/batchPass?applyIds=' + this.selectionRows.map(item => ({ 'taskId': item.processTaskId, 'pboId': item.id }))).then(res => {
this.$utils.showMessageSuccess('提交成功')
this.$refs.applyTable.$refs.asCom.getData()
}).catch(() => {
this.$utils.showMessageWarning('出现异常,提交失败')
}).finally(() => {
this.dialogVisible = false
})
} else {
this.dialogVisible = false
this.$utils.showMessageWarning('紧急领用不能和其他领用类型一起提交')
}
},
cancle() {
this.dialogVisible = false
},
setPersonConfirm() {
const ids = []
if (this.selectionRows && this.selectionRows.length) {
this.selectionRows.forEach(item => ids.push(item.id))
}
if (this.form.userIds && this.form.userIds.length !== 0) {
post('/OutStorageRequest/creator/batchApply?userIds=' + this.form.userIds, ids).then(res => {
this.$utils.showMessageSuccess('提交成功')
setTimeout(() => {
this.$refs.applyTable.$refs.asCom.getData()
}, 1500)
}).catch(err => {
this.$utils.showMessageWarning('出现异常,提交失败')
console.log(err)
}).finally(() => {
this.dialogVisible = false
this.setPersonVisible = false
this.$set(this.form, 'userIds', '')
})
} else {
this.$utils.showMessageWarning('请选择审批领导')
}
},
setPersonCancle() {
this.setPersonVisible = false
this.$set(this.form, 'userIds', '')
},
selectionChange(val) {
this.selectionRows = val
} }
},
setPersonCancle() {
this.setPersonVisible = false
this.$set(this.form, 'userIds', '')
},
selectionChange(val) {
this.selectionRows = val
} }
} }
}
</script> </script>
<style lang='scss'> <style lang='scss'>
...@@ -226,6 +229,5 @@ methods: { ...@@ -226,6 +229,5 @@ methods: {
height: 100%; height: 100%;
box-sizing: border-box; box-sizing: border-box;
padding:0 4px; padding:0 4px;
} }
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment