Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
J
jilinzhongdianrenqun-web
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Members
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
吴超
jilinzhongdianrenqun-web
Commits
ff3b6f3b
Commit
ff3b6f3b
authored
Dec 31, 2025
by
zhangtw
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
申领页面调整
parent
5b0860eb
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
49 行增加
和
24 行删除
+49
-24
src/view/key-person/key-person-visit-record/index.vue
+1
-1
src/view/key-person/key_dm_inventory/index.vue
+47
-21
src/view/key-person/key_dm_leave/index.vue
+1
-2
没有找到文件。
src/view/key-person/key-person-visit-record/index.vue
View file @
ff3b6f3b
...
...
@@ -118,7 +118,7 @@
>
<Button
icon=
"ios-cloud-upload-outline"
>
上传图片
</Button>
</Upload>
<
/Upload
>
<
!-- </Upload> --
>
<!-- <div class="upload-tips">支持多张图片上传,单张图片不超过5MB</div>
<div v-if="visitModal.form.visit_img_list.length" class="upload-preview">
<div
...
...
src/view/key-person/key_dm_inventory/index.vue
View file @
ff3b6f3b
...
...
@@ -80,7 +80,7 @@
show-total
show-sizer
@
on-change=
"pageChange('apply', $event)"
@
on-page-size-change=
"sizeChange('apply', $event)"
/>
</TabPane>
<TabPane
label=
"办公用品待审核"
name=
"pending"
>
<TabPane
label=
"办公用品待审核"
name=
"pending"
v-if=
"power.supply_approval"
>
<Table
:data=
"tables.pending"
:loading=
"loading.pending"
:columns=
"pendingColumns"
border
>
<
template
slot=
"action"
slot-scope=
"{ row }"
>
<Button
size=
"small"
type=
"primary"
@
click=
"openApproveModal(row)"
>
处理
</Button>
...
...
@@ -90,7 +90,7 @@
show-total
show-sizer
@
on-change=
"pageChange('pending', $event)"
@
on-page-size-change=
"sizeChange('pending', $event)"
/>
</TabPane>
<TabPane
label=
"办公用品审核历史查询"
name=
"history"
>
<TabPane
label=
"办公用品审核历史查询"
name=
"history"
v-if=
"power.supply_view"
>
<div
class=
"search-div"
>
<Row
type=
"flex"
:gutter=
"16"
>
<Col
span=
"18"
>
...
...
@@ -158,7 +158,7 @@
show-total
show-sizer
@
on-change=
"pageChange('history', $event)"
@
on-page-size-change=
"sizeChange('history', $event)"
/>
</TabPane>
<TabPane
label=
"办公用品入库"
name=
"inbound"
>
<TabPane
label=
"办公用品入库"
name=
"inbound"
v-if=
"power.inventory_manager"
>
<div
class=
"search-div"
>
<Row
type=
"flex"
:gutter=
"16"
>
<Col
span=
"18"
>
...
...
@@ -246,7 +246,7 @@
show-total
show-sizer
@
on-change=
"pageChange('inbound', $event)"
@
on-page-size-change=
"sizeChange('inbound', $event)"
/>
</TabPane>
<TabPane
label=
"办公用品归还"
name=
"return"
>
<TabPane
label=
"办公用品归还"
name=
"return"
v-if=
"power.inventory_manager"
>
<div
class=
"search-div"
>
<Row
type=
"flex"
:gutter=
"16"
>
<Col
span=
"18"
>
...
...
@@ -280,7 +280,7 @@
show-total
show-sizer
@
on-change=
"pageChange('return', $event)"
@
on-page-size-change=
"sizeChange('return', $event)"
/>
</TabPane>
<TabPane
label=
"库存查询"
name=
"inventory"
>
<TabPane
label=
"库存查询"
name=
"inventory"
v-if=
"power.inventory_manager"
>
<div
class=
"search-div"
>
<Row
type=
"flex"
:gutter=
"16"
>
<Col
span=
"18"
>
...
...
@@ -424,12 +424,12 @@
<h4>
明细(从物料库选择)
<div
style=
"float: right;"
>
<Button
size=
"small"
class=
"mr5"
type=
"primary"
@
click=
"showMaterialSelector = true"
>
添加
</Button>
<Button
size=
"small"
class=
"mr5"
type=
"primary"
@
click=
"show
Inbound
MaterialSelector = true"
>
添加
</Button>
<Button
size=
"small"
type=
"error"
@
click=
"deleteSelectedInboundDetails"
>
删除
</Button>
</div>
</h4>
<Table
:data=
"inboundModal.details"
:columns=
"inboundDetailColumns"
size=
"small"
border
@
on-selection-change=
"onInboundDetailSelectionChange"
style=
"width: 100%"
/>
<MaterialSelector
v-model=
"show
MaterialSelector"
:selected=
"[]"
@
on-ok=
"handleInboundMaterialSelectorOk"
@
cancel=
"show
MaterialSelector = false"
/>
<MaterialSelector
v-model=
"show
InboundMaterialSelector"
:selected=
"[]"
@
on-ok=
"handleInboundMaterialSelectorOk"
@
cancel=
"showInbound
MaterialSelector = false"
/>
</Form>
<div
slot=
"footer"
>
<Button
@
click=
"inboundModal.visible=false"
>
取消
</Button>
...
...
@@ -544,7 +544,8 @@ import {
getInventoryList
,
getInboundById
,
getPendingReturnById
,
importInbound
importInbound
,
getUserDmPermissionList
}
from
'@/api/key-dm'
import
MaterialSelector
from
'@/view/key-person/key_dm_conf/materialSelector.vue'
import
{
normalizeVisitTimeValue
}
from
'@/view/key-person/key_dm_conf/dates.js'
...
...
@@ -587,7 +588,6 @@ export default {
editingCellField
:
''
,
// 审批状态映射字典
approvalStatusMap
:
{
'0'
:
'待提交'
,
'1'
:
'审核中'
,
'9'
:
'审核通过'
,
'-1'
:
'驳回'
},
opTypeMap
:
{
'1'
:
'入库'
,
'2'
:
'出库'
},
activeTab
:
'apply'
,
filters
:
{
apply
:
{
application_no
:
''
,
applicant_name
:
''
,
approval_status
:
null
,
startDate
:
null
,
endDate
:
null
},
...
...
@@ -792,7 +792,13 @@ export default {
{
title
:
'物料名称'
,
key
:
'material_name'
},
{
title
:
'申请数量'
,
key
:
'apply_quantity'
},
{
title
:
'单位'
,
key
:
'unit'
},
{
title
:
'可用库存'
,
key
:
'available_quantity'
}
{
title
:
'可用库存'
,
key
:
'available_quantity'
,
render
:
(
h
,
{
row
})
=>
{
return
h
(
'span'
,
row
.
available_quantity
||
0
)
}
}
],
detailDetailColumns
:
[
{
title
:
'物料编码'
,
key
:
'material_code'
},
...
...
@@ -973,6 +979,7 @@ export default {
],
// 选择器控制与已选明细
showMaterialSelector
:
false
,
showInboundMaterialSelector
:
false
,
applySelectedDetails
:
[],
applyModal
:
{
visible
:
false
,
isEdit
:
false
,
saving
:
false
,
form
:
{},
details
:
[],
isEditing
:
false
},
approveModal
:
{
visible
:
false
,
record
:
{},
details
:
[],
opinion
:
''
,
submitting
:
false
},
...
...
@@ -987,14 +994,38 @@ export default {
inboundSelectedDetails
:
[],
inboundModal
:
{
visible
:
false
,
isEdit
:
false
,
saving
:
false
,
form
:
{},
details
:
[]
},
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
()
{
this
.
fetchList
(
'apply'
)
this
.
fetchApproverList
()
this
.
getUserDmPermission
()
},
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
()
{
await
getSupplyApproval
().
then
(
ret
=>
{
...
...
@@ -1201,6 +1232,7 @@ export default {
return
}
selectedRows
.
forEach
(
sel
=>
{
console
.
log
(
sel
)
const
code
=
sel
.
material_code
const
exist
=
this
.
applyModal
.
details
.
find
(
d
=>
d
.
material_code
===
code
)
if
(
exist
)
{
...
...
@@ -1282,10 +1314,12 @@ export default {
return
(
row
.
approval_status
===
1
&&
row
.
applicant_id
===
userId
)
},
submit
(
row
)
{
console
.
log
(
row
)
// 暂存当前申请ID
this
.
approverModal
.
currentBorrowId
=
row
.
id
// 清空上次选择的审批人
this
.
approverModal
.
form
.
approver_id
=
''
this
.
approverModal
.
form
.
approver_id
=
row
.
approver_id
// 获取审批人列表
this
.
fetchApproverList
()
// 打开审批人选择弹窗
...
...
@@ -1295,7 +1329,6 @@ export default {
// 新增:确认选择审批人后提交
confirmSubmitWithApprover
()
{
const
approverId
=
this
.
approverModal
.
form
.
approver_id
this
.
approverModal
.
submitting
=
true
// 调用提交接口,携带审批人ID(需后端接口支持)
submitBorrow
({
...
...
@@ -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
()
{
this
.
inboundModal
.
isEdit
=
false
this
.
inboundModal
.
form
=
{
inbound_no
:
''
,
batch_no
:
''
,
inbound_date
:
this
.
getTodayDate
(),
inbound_type
:
1
,
storage_location
:
''
,
remark
:
''
}
...
...
@@ -1464,7 +1490,7 @@ export default {
})
}
})
this
.
showMaterialSelector
=
false
this
.
show
Inbound
MaterialSelector
=
false
},
deleteSelectedInboundDetails
()
{
if
(
!
this
.
inboundSelectedDetails
||
this
.
inboundSelectedDetails
.
length
===
0
)
{
...
...
@@ -1534,7 +1560,7 @@ export default {
}
else
{
this
.
$Notice
.
error
({
title
:
'保存失败'
,
desc
:
ret
.
data
&
&
ret
.
data
.
errmsg
||
'未知错误'
desc
:
ret
.
data
&
ret
.
data
.
errmsg
||
'未知错误'
})
}
}).
catch
(
error
=>
{
...
...
src/view/key-person/key_dm_leave/index.vue
View file @
ff3b6f3b
...
...
@@ -458,7 +458,7 @@ export default {
message
:
'请输入有效的电话号码'
,
trigger
:
'blur'
}
]
,
]
// (必填性与具体数值由上面的 validator 决定)
}
}
...
...
@@ -1189,7 +1189,6 @@ export default {
this
.
tables
.
stats
=
[]
},
deleteApply
(
row
)
{
deleteLeaveById
({
id
:
row
.
id
,
leave_id
:
row
.
leave_id
}).
then
(
ret
=>
{
if
(
ret
.
data
&&
ret
.
data
.
errcode
===
0
)
{
this
.
$Message
.
success
(
'删除成功'
)
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论