Commit ff3b6f3b by zhangtw

申领页面调整

parent 5b0860eb
...@@ -118,7 +118,7 @@ ...@@ -118,7 +118,7 @@
> >
<Button icon="ios-cloud-upload-outline">上传图片</Button> <Button icon="ios-cloud-upload-outline">上传图片</Button>
</Upload> </Upload>
</Upload> <!-- </Upload> -->
<!-- <div class="upload-tips">支持多张图片上传,单张图片不超过5MB</div> <!-- <div class="upload-tips">支持多张图片上传,单张图片不超过5MB</div>
<div v-if="visitModal.form.visit_img_list.length" class="upload-preview"> <div v-if="visitModal.form.visit_img_list.length" class="upload-preview">
<div <div
......
...@@ -80,7 +80,7 @@ ...@@ -80,7 +80,7 @@
show-total show-sizer @on-change="pageChange('apply', $event)" @on-page-size-change="sizeChange('apply', $event)" /> show-total show-sizer @on-change="pageChange('apply', $event)" @on-page-size-change="sizeChange('apply', $event)" />
</TabPane> </TabPane>
<TabPane label="办公用品待审核" name="pending"> <TabPane label="办公用品待审核" name="pending" v-if="power.supply_approval">
<Table :data="tables.pending" :loading="loading.pending" :columns="pendingColumns" border> <Table :data="tables.pending" :loading="loading.pending" :columns="pendingColumns" border>
<template slot="action" slot-scope="{ row }"> <template slot="action" slot-scope="{ row }">
<Button size="small" type="primary" @click="openApproveModal(row)">处理</Button> <Button size="small" type="primary" @click="openApproveModal(row)">处理</Button>
...@@ -90,7 +90,7 @@ ...@@ -90,7 +90,7 @@
show-total show-sizer @on-change="pageChange('pending', $event)" @on-page-size-change="sizeChange('pending', $event)" /> show-total show-sizer @on-change="pageChange('pending', $event)" @on-page-size-change="sizeChange('pending', $event)" />
</TabPane> </TabPane>
<TabPane label="办公用品审核历史查询" name="history"> <TabPane label="办公用品审核历史查询" name="history" v-if="power.supply_view">
<div class="search-div"> <div class="search-div">
<Row type="flex" :gutter="16"> <Row type="flex" :gutter="16">
<Col span="18"> <Col span="18">
...@@ -158,7 +158,7 @@ ...@@ -158,7 +158,7 @@
show-total show-sizer @on-change="pageChange('history', $event)" @on-page-size-change="sizeChange('history', $event)" /> show-total show-sizer @on-change="pageChange('history', $event)" @on-page-size-change="sizeChange('history', $event)" />
</TabPane> </TabPane>
<TabPane label="办公用品入库" name="inbound"> <TabPane label="办公用品入库" name="inbound" v-if="power.inventory_manager">
<div class="search-div"> <div class="search-div">
<Row type="flex" :gutter="16"> <Row type="flex" :gutter="16">
<Col span="18"> <Col span="18">
...@@ -246,7 +246,7 @@ ...@@ -246,7 +246,7 @@
show-total show-sizer @on-change="pageChange('inbound', $event)" @on-page-size-change="sizeChange('inbound', $event)" /> show-total show-sizer @on-change="pageChange('inbound', $event)" @on-page-size-change="sizeChange('inbound', $event)" />
</TabPane> </TabPane>
<TabPane label="办公用品归还" name="return"> <TabPane label="办公用品归还" name="return" v-if="power.inventory_manager">
<div class="search-div"> <div class="search-div">
<Row type="flex" :gutter="16"> <Row type="flex" :gutter="16">
<Col span="18"> <Col span="18">
...@@ -280,7 +280,7 @@ ...@@ -280,7 +280,7 @@
show-total show-sizer @on-change="pageChange('return', $event)" @on-page-size-change="sizeChange('return', $event)" /> show-total show-sizer @on-change="pageChange('return', $event)" @on-page-size-change="sizeChange('return', $event)" />
</TabPane> </TabPane>
<TabPane label="库存查询" name="inventory"> <TabPane label="库存查询" name="inventory" v-if="power.inventory_manager">
<div class="search-div"> <div class="search-div">
<Row type="flex" :gutter="16"> <Row type="flex" :gutter="16">
<Col span="18"> <Col span="18">
...@@ -424,12 +424,12 @@ ...@@ -424,12 +424,12 @@
<h4>明细(从物料库选择) <h4>明细(从物料库选择)
<div style="float: right;"> <div style="float: right;">
<Button size="small" class="mr5" type="primary" @click="showMaterialSelector = true">添加</Button> <Button size="small" class="mr5" type="primary" @click="showInboundMaterialSelector = true">添加</Button>
<Button size="small" type="error" @click="deleteSelectedInboundDetails">删除</Button> <Button size="small" type="error" @click="deleteSelectedInboundDetails">删除</Button>
</div> </div>
</h4> </h4>
<Table :data="inboundModal.details" :columns="inboundDetailColumns" size="small" border @on-selection-change="onInboundDetailSelectionChange" style="width: 100%" /> <Table :data="inboundModal.details" :columns="inboundDetailColumns" size="small" border @on-selection-change="onInboundDetailSelectionChange" style="width: 100%" />
<MaterialSelector v-model="showMaterialSelector" :selected="[]" @on-ok="handleInboundMaterialSelectorOk" @cancel="showMaterialSelector = false" /> <MaterialSelector v-model="showInboundMaterialSelector" :selected="[]" @on-ok="handleInboundMaterialSelectorOk" @cancel="showInboundMaterialSelector = false" />
</Form> </Form>
<div slot="footer"> <div slot="footer">
<Button @click="inboundModal.visible=false">取消</Button> <Button @click="inboundModal.visible=false">取消</Button>
...@@ -544,7 +544,8 @@ import { ...@@ -544,7 +544,8 @@ import {
getInventoryList, getInventoryList,
getInboundById, getInboundById,
getPendingReturnById, getPendingReturnById,
importInbound importInbound,
getUserDmPermissionList
} from '@/api/key-dm' } from '@/api/key-dm'
import MaterialSelector from '@/view/key-person/key_dm_conf/materialSelector.vue' import MaterialSelector from '@/view/key-person/key_dm_conf/materialSelector.vue'
import { normalizeVisitTimeValue } from '@/view/key-person/key_dm_conf/dates.js' import { normalizeVisitTimeValue } from '@/view/key-person/key_dm_conf/dates.js'
...@@ -587,7 +588,6 @@ export default { ...@@ -587,7 +588,6 @@ export default {
editingCellField: '', editingCellField: '',
// 审批状态映射字典 // 审批状态映射字典
approvalStatusMap: { '0': '待提交', '1': '审核中', '9': '审核通过', '-1': '驳回' }, approvalStatusMap: { '0': '待提交', '1': '审核中', '9': '审核通过', '-1': '驳回' },
opTypeMap: { '1': '入库', '2': '出库' },
activeTab: 'apply', activeTab: 'apply',
filters: { filters: {
apply: { application_no: '', applicant_name: '', approval_status: null, startDate: null, endDate: null }, apply: { application_no: '', applicant_name: '', approval_status: null, startDate: null, endDate: null },
...@@ -792,7 +792,13 @@ export default { ...@@ -792,7 +792,13 @@ export default {
{ title: '物料名称', key: 'material_name' }, { title: '物料名称', key: 'material_name' },
{ title: '申请数量', key: 'apply_quantity' }, { title: '申请数量', key: 'apply_quantity' },
{ title: '单位', key: 'unit' }, { title: '单位', key: 'unit' },
{ title: '可用库存', key: 'available_quantity' } {
title: '可用库存',
key: 'available_quantity',
render: (h, { row }) => {
return h('span', row.available_quantity || 0)
}
}
], ],
detailDetailColumns: [ detailDetailColumns: [
{ title: '物料编码', key: 'material_code' }, { title: '物料编码', key: 'material_code' },
...@@ -973,6 +979,7 @@ export default { ...@@ -973,6 +979,7 @@ export default {
], ],
// 选择器控制与已选明细 // 选择器控制与已选明细
showMaterialSelector: false, showMaterialSelector: false,
showInboundMaterialSelector: false,
applySelectedDetails: [], applySelectedDetails: [],
applyModal: { visible: false, isEdit: false, saving: false, form: {}, details: [], isEditing: false }, applyModal: { visible: false, isEdit: false, saving: false, form: {}, details: [], isEditing: false },
approveModal: { visible: false, record: {}, details: [], opinion: '', submitting: false }, approveModal: { visible: false, record: {}, details: [], opinion: '', submitting: false },
...@@ -987,14 +994,38 @@ export default { ...@@ -987,14 +994,38 @@ export default {
inboundSelectedDetails: [], inboundSelectedDetails: [],
inboundModal: { visible: false, isEdit: false, saving: false, form: {}, details: [] }, inboundModal: { visible: false, isEdit: false, saving: false, form: {}, details: [] },
returnModal: { visible: false, record: {}, details: [], saving: false }, returnModal: { visible: false, record: {}, details: [], saving: false },
inboundDetailModal: { visible: false, loading: false, data: {}, details: [], logs: [] } inboundDetailModal: { visible: false, loading: false, data: {}, details: [], logs: [] },
power: {
leave_approval: false, // 请假审核
leave_view: false, // 请假查询(统计)
supply_approval: false, // 用品申领审核
supply_view: false, // 用品查询(统计)
inventory_manager: false // 库存管理
}
} }
}, },
created () { created () {
this.fetchList('apply') this.fetchList('apply')
this.fetchApproverList() this.fetchApproverList()
this.getUserDmPermission()
}, },
methods: { methods: {
getUserDmPermission () {
getUserDmPermissionList({}).then(ret => {
console.log('ret', ret)
if (ret.data && ret.data.errcode === 0) {
const data = ret.data.data || []
for (let i = 0; i < data.length; i++) {
var ele = data[i]
if (this.power.hasOwnProperty(ele.code)) {
this.power[ele.code] = true
}
}
} else {
this.$Notice.error({ title: '查询失败', desc: ret.data.errmsg || '请稍后重试' })
}
})
},
// 新增:获取审批人列表 // 新增:获取审批人列表
async fetchApproverList () { async fetchApproverList () {
await getSupplyApproval().then(ret => { await getSupplyApproval().then(ret => {
...@@ -1201,6 +1232,7 @@ export default { ...@@ -1201,6 +1232,7 @@ export default {
return return
} }
selectedRows.forEach(sel => { selectedRows.forEach(sel => {
console.log(sel)
const code = sel.material_code const code = sel.material_code
const exist = this.applyModal.details.find(d => d.material_code === code) const exist = this.applyModal.details.find(d => d.material_code === code)
if (exist) { if (exist) {
...@@ -1282,10 +1314,12 @@ export default { ...@@ -1282,10 +1314,12 @@ export default {
return (row.approval_status === 1 && row.applicant_id === userId) return (row.approval_status === 1 && row.applicant_id === userId)
}, },
submit (row) { submit (row) {
console.log(row)
// 暂存当前申请ID // 暂存当前申请ID
this.approverModal.currentBorrowId = row.id this.approverModal.currentBorrowId = row.id
// 清空上次选择的审批人 // 清空上次选择的审批人
this.approverModal.form.approver_id = '' this.approverModal.form.approver_id = ''
this.approverModal.form.approver_id = row.approver_id
// 获取审批人列表 // 获取审批人列表
this.fetchApproverList() this.fetchApproverList()
// 打开审批人选择弹窗 // 打开审批人选择弹窗
...@@ -1295,7 +1329,6 @@ export default { ...@@ -1295,7 +1329,6 @@ export default {
// 新增:确认选择审批人后提交 // 新增:确认选择审批人后提交
confirmSubmitWithApprover () { confirmSubmitWithApprover () {
const approverId = this.approverModal.form.approver_id const approverId = this.approverModal.form.approver_id
this.approverModal.submitting = true this.approverModal.submitting = true
// 调用提交接口,携带审批人ID(需后端接口支持) // 调用提交接口,携带审批人ID(需后端接口支持)
submitBorrow({ submitBorrow({
...@@ -1426,13 +1459,6 @@ export default { ...@@ -1426,13 +1459,6 @@ export default {
}) })
} }
}, },
getTodayDate () {
const today = new Date()
const year = today.getFullYear()
const month = String(today.getMonth() + 1).padStart(2, '0')
const day = String(today.getDate()).padStart(2, '0')
return `${year}-${month}-${day}`
},
openInboundModal () { openInboundModal () {
this.inboundModal.isEdit = false this.inboundModal.isEdit = false
this.inboundModal.form = { inbound_no: '', batch_no: '', inbound_date: this.getTodayDate(), inbound_type: 1, storage_location: '', remark: '' } this.inboundModal.form = { inbound_no: '', batch_no: '', inbound_date: this.getTodayDate(), inbound_type: 1, storage_location: '', remark: '' }
...@@ -1464,7 +1490,7 @@ export default { ...@@ -1464,7 +1490,7 @@ export default {
}) })
} }
}) })
this.showMaterialSelector = false this.showInboundMaterialSelector = false
}, },
deleteSelectedInboundDetails () { deleteSelectedInboundDetails () {
if (!this.inboundSelectedDetails || this.inboundSelectedDetails.length === 0) { if (!this.inboundSelectedDetails || this.inboundSelectedDetails.length === 0) {
...@@ -1534,7 +1560,7 @@ export default { ...@@ -1534,7 +1560,7 @@ export default {
} else { } else {
this.$Notice.error({ this.$Notice.error({
title: '保存失败', title: '保存失败',
desc: ret.data && ret.data.errmsg || '未知错误' desc: ret.data & ret.data.errmsg || '未知错误'
}) })
} }
}).catch(error => { }).catch(error => {
......
...@@ -458,7 +458,7 @@ export default { ...@@ -458,7 +458,7 @@ export default {
message: '请输入有效的电话号码', message: '请输入有效的电话号码',
trigger: 'blur' trigger: 'blur'
} }
], ]
// (必填性与具体数值由上面的 validator 决定) // (必填性与具体数值由上面的 validator 决定)
} }
} }
...@@ -1189,7 +1189,6 @@ export default { ...@@ -1189,7 +1189,6 @@ export default {
this.tables.stats = [] this.tables.stats = []
}, },
deleteApply (row) { deleteApply (row) {
deleteLeaveById({ id: row.id, leave_id: row.leave_id }).then(ret => { deleteLeaveById({ id: row.id, leave_id: row.leave_id }).then(ret => {
if (ret.data && ret.data.errcode === 0) { if (ret.data && ret.data.errcode === 0) {
this.$Message.success('删除成功') this.$Message.success('删除成功')
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论