Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
assets
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
黄媛媛
assets
Commits
6f0424a1
Commit
6f0424a1
authored
Jul 30, 2020
by
zhengke
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改
parent
30b370be
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
612 additions
and
327 deletions
+612
-327
InventoryBosun.vue
src/components/Materialman/InventoryBosun.vue
+227
-0
InventoryDetail.vue
src/components/Materialman/InventoryDetail.vue
+379
-327
config.js
src/router/config.js
+6
-0
No files found.
src/components/Materialman/InventoryBosun.vue
0 → 100644
View file @
6f0424a1
<
template
>
<div
class=
"assetsList InventoryDetail"
>
<div
class=
"routerTitle"
>
<span
class=
"pageTitle"
>
报损/报溢
<span
@
click=
"Backto"
style=
"position:relative;top:-5px"
class=
"backTo"
>
返回
</span></span>
<span
@
click=
"morequery = !morequery"
style=
"display:inline-flex;align-items:center;cursor: pointer;"
class=
"f12 cd6"
>
<span
style=
"margin-right:5px"
>
高级查询
</span>
<img
v-show=
"!morequery"
style=
"width:12px;height:12px;"
src=
"../../assets/img/more.png"
alt=
""
/>
<img
v-show=
"morequery"
class=
"roatImg"
style=
"width:12px;height:12px"
src=
"../../assets/img/more.png"
alt=
""
/>
</span>
<span
@
click=
"getList"
style=
"margin-left:20px"
class=
"chaxunSpan"
>
查询
</span>
<span
@
click=
"savePan"
style=
"margin-left:20px"
class=
"chaxunSpan"
>
确认报损
</span>
</div>
<div
class=
"padContent"
>
<ul
v-show=
"morequery"
class=
"queryul"
>
<li>
<el-input
class=
"w200"
size=
"small"
v-model=
"msg.SuppliesId"
placeholder=
"物料Id"
@
keyup
.
enter
.
native=
"msg.pageIndex=1,getList()"
></el-input>
</li>
<li>
<el-input
class=
"w200"
size=
"small"
v-model=
"msg.SuppliesName"
placeholder=
"物料名称"
@
keyup
.
enter
.
native=
"msg.pageIndex=1,getList()"
></el-input>
</li>
<li>
<el-select
size=
"small"
v-model=
"msg.CheckStatus"
@
change=
"msg.pageIndex=1,getList()"
>
<el-option
label=
"不限"
:value=
"0"
>
</el-option>
<el-option
v-for=
"item in getCheckStatusList"
:key=
"item.Id"
:label=
"item.Name"
:value=
"item.Id"
>
</el-option>
</el-select>
</li>
<li>
<el-select
size=
"small"
v-model=
"msg.DealStatus"
@
change=
"msg.pageIndex=1,getList()"
>
<el-option
label=
"已处理"
:value=
"1"
></el-option>
<el-option
label=
"未处理"
:value=
"2"
></el-option>
</el-select>
</li>
</ul>
<vxe-table
stripe
style=
"margin-top:15px"
:loading=
"loading"
:data=
"tableData"
>
<vxe-table-column
field=
"Name"
>
<template
v-slot=
"
{ row }">
<el-checkbox
@
change=
"getRow(row)"
></el-checkbox>
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"Name"
title=
"状态"
>
<
template
v-slot=
"{ row }"
>
<span
class=
"ColorSpan huangSpan"
v-if=
"row.CheckStatus == 1"
>
未
</span>
<span
class=
"ColorSpan greenSpan"
v-if=
"row.CheckStatus == 2"
>
已
</span>
<span
class=
"ColorSpan purpleSpan"
v-if=
"row.CheckStatus == 3"
>
盈
</span>
<span
class=
"ColorSpan redSpan"
v-if=
"row.CheckStatus == 4"
>
亏
</span>
<span>
{{
row
.
CheckStatusName
}}
</span>
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"SuppliesNo"
title=
"物料编号"
></vxe-table-column>
<vxe-table-column
field=
"SuppliesId"
title=
"物料id"
></vxe-table-column>
<vxe-table-column
field=
"SuppliesName"
title=
"物料名称"
></vxe-table-column>
<vxe-table-column
field=
"SpecificationList"
title=
"规格"
>
<
template
v-slot=
"{ row }"
>
<span
v-for=
"(x,y) in row.SpecificationList"
:key=
"y"
>
{{
x
}}
<span
v-if=
"row.SpecificationList.length !== y+1"
>
,
</span></span>
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"InventoryNum"
title=
"库存"
></vxe-table-column>
<vxe-table-column
field=
"RealityNum"
title=
"实际数量"
></vxe-table-column>
<vxe-table-column
field=
"Unit_Money"
title=
"最新单价"
>
<
template
v-slot=
"{ row }"
>
<el-input
type=
'text'
class=
"w80"
v-model=
"row.Unit_Money"
/>
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"Remark"
title=
"备注"
></vxe-table-column>
<vxe-table-column
field=
"CheckEmpName"
title=
"盘点人名称"
></vxe-table-column>
<vxe-table-column
field=
"CheckDate"
title=
"盘点时间"
></vxe-table-column>
<vxe-table-column
field=
"address"
title=
"操作"
>
</vxe-table-column>
</vxe-table>
<el-pagination
@
current-change=
"currentChange"
background
:page-size=
"msg.pageSize"
layout=
"prev, pager, next"
:total=
"total"
:current-page
.
sync=
"msg.pageIndex"
>
</el-pagination>
</div>
</div>
</template>
<
script
>
export
default
{
name
:
"InventoryBosun"
,
components
:
{},
data
()
{
return
{
morequery
:
false
,
dateList
:
[],
currentPage
:
1
,
tableData
:
[],
loading
:
false
,
total
:
0
,
getCheckStatusList
:
[],
//盘点报损报溢msg
msg
:
{
pageIndex
:
1
,
pageSize
:
99999999
,
CheckId
:
0
,
SuppliesId
:
0
,
SuppliesName
:
''
,
CheckStatus
:
0
,
DealStatus
:
2
//盈亏处理状态 1已处理 2未处理
},
};
},
mounted
()
{
this
.
msg
.
CheckId
=
this
.
$route
.
query
.
CheckId
;
this
.
getList
();
this
.
getCheckStatus
();
},
methods
:
{
currentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
getCheckStatus
()
{
this
.
apiJavaPost
(
"/api/property/GetPropertyCheckStatusEnumList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getCheckStatusList
=
res
.
data
.
data
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
Backto
()
{
this
.
$router
.
push
({
path
:
"/InventoryDetail"
,
query
:
{
CheckId
:
this
.
msg
.
CheckId
}
});
},
//查看报损
getList
()
{
this
.
loading
=
true
;
this
.
apiJavaPost
(
"/api/supplies/GetSuppliesCheckDetailBreakagePageList"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
tableData
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
//保存
savePan
(){
},
//勾选
getRow
(
row
){
console
.
log
(
row
,
'row'
);
}
}
};
</
script
>
<
style
>
.InventoryDetail
.dateList
.el-date-editor
.el-range__icon
{
line-height
:
24px
;
}
.InventoryDetail
.dateList
.el-date-editor
.el-range-separator
{
line-height
:
22px
;
}
.InventoryDetail
.MyEditForm
.dateList.el-input__inner
{
width
:
300px
;
}
.assetsList
.MyEditForm
.baseform
.el-form-item
:nth-child
(
4n
)
{
margin-right
:
0
;
}
.assetsList
.zczt1
{
background
:
#ffe4d5
;
color
:
#ffa87c
;
}
.assetsList
.zczt2
{
background
:
#beeff0
;
color
:
#089bab
;
}
.assetsList
.zczt3
{
background
:
#ffd6d5
;
color
:
#ff7874
;
}
.assetsList
.zczt4
{
background
:
#d7d6ff
;
color
:
#7b78ff
;
}
.assetsList
.Commonzczt
{
display
:
inline-block
;
width
:
24px
;
height
:
24px
;
line-height
:
24px
;
text-align
:
center
;
border-radius
:
50%
;
font-size
:
12px
;
font-family
:
"Microsoft YaHei"
;
}
.assetsList
{
width
:
100%
;
height
:
100%
;
}
.w80
{
width
:
80px
!important
;
}
</
style
>
src/components/Materialman/InventoryDetail.vue
View file @
6f0424a1
<
template
>
<div
class=
"assetsList InventoryDetail"
>
<div
class=
"routerTitle"
>
<span
class=
"pageTitle"
>
耗材盘点明细
<span
@
click=
"Backto"
style=
"position:relative;top:-5px"
class=
"backTo"
>
返回
</span></span>
<span
@
click=
"morequery = !morequery"
style=
"display:inline-flex;align-items:center;cursor: pointer;"
class=
"f12 cd6"
>
<span
class=
"pageTitle"
>
耗材盘点明细
<span
@
click=
"Backto"
style=
"position:relative;top:-5px"
class=
"backTo"
>
返回
</span></span>
<span
@
click=
"morequery = !morequery"
style=
"display:inline-flex;align-items:center;cursor: pointer;"
class=
"f12 cd6"
>
<span
style=
"margin-right:5px"
>
高级查询
</span>
<img
v-show=
"!morequery"
style=
"width:12px;height:12px;"
src=
"../../assets/img/more.png"
alt=
""
/>
<img
v-show=
"morequery"
class=
"roatImg"
style=
"width:12px;height:12px"
src=
"../../assets/img/more.png"
alt=
""
/>
<img
v-show=
"!morequery"
style=
"width:12px;height:12px;"
src=
"../../assets/img/more.png"
alt=
""
/>
<img
v-show=
"morequery"
class=
"roatImg"
style=
"width:12px;height:12px"
src=
"../../assets/img/more.png"
alt=
""
/>
</span>
<span
@
click=
"getList"
style=
"margin-left:20px"
class=
"chaxunSpan"
>
查询
</span
>
<span
@
click=
"getList"
style=
"margin-left:20px"
class=
"chaxunSpan"
>
查询
</span>
<span
@
click=
"outerVisible=true"
style=
"margin-left:20px"
class=
"chaxunSpan"
>
导入
</span>
<span
@
click=
"goBaosun"
style=
"margin-left:20px"
class=
"chaxunSpan"
>
查看报损/报溢
</span>
<span
@
click=
"complePandian"
style=
"margin-left:20px"
class=
"chaxunSpan"
>
完成盘点
</span>
</div>
<div
class=
"padContent"
>
<ul
v-show=
"morequery"
class=
"queryul"
>
扫码出库
<li>
<el-input
class=
"w200"
size=
"small"
v-model=
"barCode"
placeholder=
"商品出库条码"
@
keyup
.
enter
.
native=
"getList()"
>
</el-input>
</li>
<li>
<el-input
class=
"w200"
size=
"small"
v-model=
"msg.SuppliesId"
placeholder=
"物料Id"
@
keyup
.
enter
.
native=
"msg.pageIndex=1,getList()"
></el-input>
<el-input
class=
"w200"
size=
"small"
v-model=
"msg.SuppliesId"
placeholder=
"物料Id"
@
keyup
.
enter
.
native=
"msg.pageIndex=1,getList()"
></el-input>
</li>
<li>
<el-input
class=
"w200"
size=
"small"
v-model=
"msg.SuppliesName"
placeholder=
"物料名称"
@
keyup
.
enter
.
native=
"msg.pageIndex=1,getList()"
></el-input>
<el-input
class=
"w200"
size=
"small"
v-model=
"msg.SuppliesName"
placeholder=
"物料名称"
@
keyup
.
enter
.
native=
"msg.pageIndex=1,getList()"
></el-input>
</li>
<li>
<el-select
size=
"small"
v-model=
"msg.CheckStatus"
@
change=
"msg.pageIndex=1,getList()"
>
<el-option
label=
"盘点状态
"
:value=
"0"
>
</el-option>
<el-option
v-for=
"item in getCheckStatusList"
:key=
"item.Id"
:label=
"item.Name"
:value=
"item.Id"
>
</el-option
>
</el-select
>
</li>
<el-select
size=
"small"
v-model=
"msg.CheckStatus"
@
change=
"msg.pageIndex=1,getList()"
>
<el-option
label=
"不限
"
:value=
"0"
>
</el-option>
<el-option
v-for=
"item in getCheckStatusList"
:key=
"item.Id"
:label=
"item.Name"
:value=
"item.Id"
>
</el-option
>
</el-select>
</li>
</ul>
<vxe-table
stripe
style=
"margin-top:15px"
:loading=
"loading"
:data=
"tableData"
>
<vxe-table-column
field=
"Name"
title=
"状态"
>
<template
v-slot=
"
{ row }">
<span
class=
"ColorSpan huangSpan"
v-if=
"row.CheckStatus == 1"
>
未
</span>
<span
class=
"ColorSpan greenSpan"
v-if=
"row.CheckStatus == 2"
>
已
</span>
<span
class=
"ColorSpan purpleSpan"
v-if=
"row.CheckStatus == 3"
>
盈
</span>
<span
class=
"ColorSpan redSpan"
v-if=
"row.CheckStatus == 4"
>
亏
</span>
<span
>
{{
row
.
CheckStatusName
}}
</span>
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"SuppliesNo"
title=
"物料编号"
></vxe-table-column>
<vxe-table-column
field=
"SuppliesId"
title=
"物料id"
></vxe-table-column>
<vxe-table-column
field=
"SuppliesName"
title=
"物料名称"
></vxe-table-column>
<vxe-table-column
field=
"SpecificationList"
title=
"规格"
>
<
template
v-slot=
"{ row }"
>
<span
v-for=
"(x,y) in row.SpecificationList"
:key=
"y"
>
{{
x
}}
<span
v-if=
"row.SpecificationList.length !== y+1"
>
,
</span></span>
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"InventoryNum"
title=
"库存"
></vxe-table-column>
<vxe-table-column
field=
"RealityNum"
title=
"实际数量"
></vxe-table-column>
<vxe-table
stripe
style=
"margin-top:15px"
:loading=
"loading"
:data=
"tableData"
>
<vxe-table-column
field=
"Name"
title=
"状态"
>
<template
v-slot=
"
{ row }">
<span
class=
"ColorSpan huangSpan"
v-if=
"row.CheckStatus == 1"
>
未
</span>
<span
class=
"ColorSpan greenSpan"
v-if=
"row.CheckStatus == 2"
>
已
</span>
<span
class=
"ColorSpan purpleSpan"
v-if=
"row.CheckStatus == 3"
>
盈
</span>
<span
class=
"ColorSpan redSpan"
v-if=
"row.CheckStatus == 4"
>
亏
</span>
<span>
{{
row
.
CheckStatusName
}}
</span>
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"SuppliesNo"
title=
"物料编号"
></vxe-table-column>
<vxe-table-column
field=
"SuppliesId"
title=
"物料id"
></vxe-table-column>
<vxe-table-column
field=
"SuppliesName"
title=
"物料名称"
></vxe-table-column>
<vxe-table-column
field=
"SpecificationList"
title=
"规格"
>
<
template
v-slot=
"{ row }"
>
<span
v-for=
"(x,y) in row.SpecificationList"
:key=
"y"
>
{{
x
}}
<span
v-if=
"row.SpecificationList.length !== y+1"
>
,
</span></span>
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"InventoryNum"
title=
"库存"
></vxe-table-column>
<vxe-table-column
field=
"RealityNum"
title=
"实际数量"
>
<
template
v-slot=
"{ row }"
>
<el-input
type=
'text'
class=
"w80"
v-model=
"row.RealityNum"
/>
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"Remark"
title=
"备注"
></vxe-table-column>
<vxe-table-column
field=
"Remark"
title=
"备注
"
></vxe-table-column>
<vxe-table-column
field=
"CheckEmpName"
title=
"盘点人名称"
></vxe-table-column>
<vxe-table-column
field=
"CheckDate"
title=
"盘点时间
"
></vxe-table-column>
<vxe-table-column
field=
"CheckEmpName"
title=
"盘点人名称"
></vxe-table-column>
<vxe-table-column
field=
"CheckDate"
title=
"盘点时间"
></vxe-table-column>
<vxe-table-column
field=
"address"
title=
"操作"
>
<
template
v-slot=
"{ row }"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"保存"
placement=
"top"
v-if=
"row.CheckState ==1"
>
<img
v-if=
"row.CheckState ==1"
@
click=
"Edit(row)"
style=
"width:24px;height:24px"
src=
"../../assets/img/edit.png"
alt=
""
>
</el-tooltip>
</
template
>
</vxe-table-column>
</vxe-table>
<el-pagination
@
current-change=
"currentChange"
background
:page-size=
"msg.pageSize"
layout=
"prev, pager, next"
:total=
"total"
:current-page
.
sync=
"msg.pageIndex"
>
<vxe-table-column
field=
"address"
title=
"操作"
>
<
template
v-slot=
"{ row }"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"保存"
placement=
"top"
>
<img
@
click=
"saveInfo(row)"
style=
"width:24px;height:24px"
src=
"../../assets/img/step1.png"
alt=
""
>
</el-tooltip>
<el-tooltip
style=
"display:inline-block;position:relative;top:-2px;"
class=
"item"
effect=
"dark"
content=
"上传图片"
placement=
"top"
>
<el-upload
:http-request=
"uploadFileBtn"
:multiple=
"false"
:show-file-list=
"false"
action
>
<img
style=
"width:24px;height:20px"
@
click=
"getRow(row)"
src=
"../../assets/img/pic.png"
alt=
""
/>
</el-upload>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改备注"
placement=
"top"
>
<img
style=
"width:24px;height:24px"
@
click=
"getRowRemark(row)"
src=
"../../assets/img/edit.png"
alt=
""
/>
</el-tooltip>
</
template
>
</vxe-table-column>
</vxe-table>
<el-pagination
@
current-change=
"currentChange"
background
:page-size=
"msg.pageSize"
layout=
"prev, pager, next"
:total=
"total"
:current-page
.
sync=
"msg.pageIndex"
>
</el-pagination>
</div>
<el-dialog
:close-on-click-modal=
"false"
top=
"0"
width=
"600px"
title=
"导入"
:visible
.
sync=
"outerVisible"
center
>
<el-upload
:show-file-list=
"false"
style=
"text-align: center;margin:20px 0"
drag
class=
"upload-demo"
:action=
"importFileUrl2"
:on-success=
"handleAvatarSuccess"
:before-upload=
"beforeAvatarUpload"
>
<i
class=
"el-icon-upload"
></i>
<div
class=
"el-upload__text"
>
将文件拖到此处,或
<em>
点击上传
</em></div>
</el-upload>
</el-dialog>
<!-- 单个修改备注 -->
<el-dialog
title=
"修改备注"
:close-on-click-modal=
"false"
:visible
.
sync=
"dialogState"
top=
"0"
width=
"650px"
>
<el-form
class=
"MyEditForm"
ref=
"addMsg"
label-width=
"0px"
>
<div
class=
"basefix"
>
<div
class=
"baseform"
>
<el-form-item
style=
"width:600px"
label=
""
prop=
"Content"
>
<span
class=
"label"
>
备注
</span>
<el-input
size=
"small"
type=
"textarea"
:autosize=
"{ minRows: 2, maxRows: 4}"
v-model=
"Content"
placeholder=
"请输入"
></el-input>
</el-form-item>
</div>
</div>
<div
class=
"btnformItem"
>
<span
class=
"submitBtn"
type=
"primary"
@
click=
"saveRemark"
>
确定
</span>
<span
class=
"exitBtn"
@
click=
"dialogState = false"
>
取消
</span>
</div>
</el-form>
</el-dialog>
</div>
</template>
<
script
>
import
Treeselect
from
"@riophae/vue-treeselect"
;
import
"@riophae/vue-treeselect/dist/vue-treeselect.css"
;
export
default
{
name
:
"assetsList"
,
components
:
{
Treeselect
},
data
()
{
return
{
valueConsistsOf
:
'ALL'
,
queryLoad
:
false
,
addMsg
:
{
Id
:
0
,
WarehouseId
:
''
,
StartDate
:
""
,
EndDate
:
""
},
morequery
:
false
,
dateList
:
[],
currentPage
:
1
,
tableData
:
[],
loading
:
false
,
total
:
0
,
msg
:
{
pageIndex
:
1
,
pageSize
:
99999999
,
CheckId
:
0
,
SuppliesId
:
''
,
SuppliesName
:
''
,
CheckStatus
:
0
,
// DealStatus:0,//盈亏处理状态 (在盈亏界面使用)
IsSelectCheckLoss
:
0
,
//是否只查询盘点盈亏的 1是 0否
IsSelectHaveInventory
:
0
,
//是否只查询有库存数量的 1是 0否
},
getCheckStatusList
:[],
dialogtitle
:
"新增"
,
dialogState
:
false
,
};
},
mounted
()
{
this
.
msg
.
CheckId
=
this
.
$route
.
query
.
CheckId
export
default
{
name
:
"InventoryDetail"
,
components
:
{},
data
()
{
return
{
dialogState
:
false
,
morequery
:
false
,
dateList
:
[],
currentPage
:
1
,
tableData
:
[],
loading
:
false
,
total
:
0
,
msg
:
{
pageIndex
:
1
,
pageSize
:
99999999
,
CheckId
:
0
,
//盘点单id
SuppliesId
:
''
,
//物料id
SuppliesName
:
''
,
//物料名称
CheckStatus
:
0
,
//盘点状态
// DealStatus:0,//盈亏处理状态 (在盈亏界面使用)
IsSelectCheckLoss
:
0
,
//是否只查询盘点盈亏的 1是 0否
IsSelectHaveInventory
:
0
,
//是否只查询有库存数量的 1是 0否
},
getCheckStatusList
:
[],
this
.
getList
();
this
.
getCheckStatus
()
},
methods
:
{
limitText
(
val
){
return
`+
${
val
}
`
//导入excel弹窗
outerVisible
:
false
,
//是否显示盈亏处理状态
importFileUrl2
:
""
,
//商品出库条码
barCode
:
''
,
//单条保存公用type
Type
:
1
,
//单条图片
commonId
:
0
,
//单条保存备注
Content
:
''
,
commonRow
:{}
};
},
SetEnd
(
item
,
type
){
let
that
=
this
;
let
msg
=
{};
this
.
$confirm
(
"确认该操作?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
'warning'
}).
then
(()
=>
{
msg
.
CheckId
=
item
.
Id
;
msg
.
Type
=
type
;
this
.
apiJavaPost
(
"/api/property/SetPropertyCheckStatus"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
}).
catch
(()
=>
{
});
mounted
()
{
this
.
msg
.
CheckId
=
this
.
$route
.
query
.
CheckId
;
this
.
getList
();
this
.
getCheckStatus
();
//上传接口路径
this
.
importFileUrl2
=
this
.
domainManager
().
DomainUrl
+
"/api/file/LocalFileUploadImportForSuppliesCheck"
;
},
SeeDetails
(
item
,
path
){
this
.
$router
.
push
({
path
:
path
,
query
:
{
CheckId
:
item
.
Id
methods
:
{
currentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
getList
()
{
this
.
loading
=
true
;
this
.
apiJavaPost
(
"/api/supplies/GetSuppliesCheckDetailPageList"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
tableData
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
console
.
log
(
this
.
tableData
,
'tabledata'
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
});
},
},
null
);
},
Delete
(
item
)
{
let
Id
=
item
.
Id
;
this
.
$confirm
(
"确认取消?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
})
.
then
(()
=>
{
this
.
apiJavaPost
(
"/api/supplies/CancelSuppliesCheck"
,
{
CheckId
:
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
})
.
catch
(()
=>
{
this
.
$message
.
info
(
"已取消!"
);
getCheckStatus
()
{
this
.
apiJavaPost
(
"/api/property/GetPropertyCheckStatusEnumList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getCheckStatusList
=
res
.
data
.
data
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
Backto
()
{
this
.
$router
.
push
({
path
:
"/consumablesInventory"
});
},
analyse
(
item
){
let
Id
=
item
.
Id
;
this
.
$confirm
(
"确认复盘?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
})
.
then
(()
=>
{
this
.
apiJavaPost
(
"/api/supplies/RepeatSuppliesCheck"
,
{
CheckId
:
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
})
.
catch
(()
=>
{
this
.
$message
.
info
(
"已取消复盘!"
);
},
//跳转至报损报溢
goBaosun
()
{
this
.
$router
.
push
({
path
:
"/InventoryBosun"
,
query
:
{
CheckId
:
this
.
msg
.
CheckId
}
});
},
submitForm
(
formName
)
{
this
.
$refs
[
formName
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
dateList
&&
this
.
dateList
.
length
>
0
){
this
.
addMsg
.
StartDate
=
this
.
dateList
[
0
];
this
.
addMsg
.
EndDate
=
this
.
dateList
[
1
];
}
delete
this
.
addMsg
.
UpdateBy
;
delete
this
.
addMsg
.
UpdateDate
;
this
.
queryLoad
=
true
;
this
.
apiJavaPost
(
"/api/supplies/SetSuppliesCheck"
,
this
.
addMsg
,
res
=>
{
this
.
queryLoad
=
false
;
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
);
this
.
dialogState
=
false
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
//完成盘点
complePandian
()
{
let
msg
=
{
CheckId
:
this
.
msg
.
CheckId
}
this
.
apiJavaPost
(
"/api/supplies/SetSuppliesCheckComplete"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
Success
(
res
.
data
.
message
);
}
else
{
return
false
;
this
.
Error
(
res
.
data
.
message
)
;
}
});
},
currentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
getList
()
{
this
.
loading
=
true
;
this
.
apiJavaPost
(
"/api/supplies/GetSuppliesCheckDetailPageList"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
tableData
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
},
null
);
},
beforeAvatarUpload
(
file
)
{
return
;
const
isJPG
=
file
.
type
===
"application/x-msdownload"
;
if
(
!
isJPG
)
{
this
.
Error
(
"上传文件只能是 excel 格式!"
);
}
return
isJPG
&&
isLt2M
;
},
//上传
handleAvatarSuccess
(
res
,
file
)
{
if
(
res
.
resultCode
==
1
)
{
console
.
log
(
res
,
'上传后'
);
this
.
outerVisible
=
false
;
}
else
{
this
.
Error
(
res
.
message
);
getCheckStatus
(){
this
.
apiJavaPost
(
"/api/property/GetPropertyCheckStatusEnumList"
,
{},
}
},
//耗材单个盘点保存
saveInfo
(
row
)
{
console
.
log
(
row
,
'row'
);
let
msg
=
{
CheckDetailId
:
row
.
Id
,
Type
:
this
.
Type
,
Reality
:
row
.
RealityNum
,
ImageList
:
row
.
ImageList
,
Remark
:
row
.
Remark
}
this
.
apiJavaPost
(
"/api/supplies/SetSuppliesCheckDetailReality"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getCheckStatusList
=
res
.
data
.
data
;
this
.
Success
(
res
.
data
.
message
)
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
Backto
(){
this
.
$router
.
push
({
path
:
"/consumablesInventory"
},
//点击上传图片
getRow
(
row
)
{
console
.
log
(
row
,
'点了上传'
);
this
.
Type
=
2
;
this
.
commonId
=
row
.
Id
;
this
.
ImageList
=
row
.
ImageList
;
},
//点击修改备注
getRowRemark
(
row
){
this
.
Content
=
row
.
Remark
;
this
.
dialogState
=
true
;
this
.
commonRow
=
row
;
},
//点击确定
saveRemark
(){
this
.
dialogState
=
false
;
// this.tableData.forEach(x=>{
// if(x.Id==this.commonId){
// x.Remark=this.Content
// }
// })
let
msg
=
{
CheckDetailId
:
this
.
commonRow
.
Id
,
Type
:
3
,
Reality
:
this
.
commonRow
.
RealityNum
,
ImageList
:
this
.
commonRow
.
ImageList
,
Remark
:
this
.
Content
}
this
.
apiJavaPost
(
"/api/supplies/SetSuppliesCheckDetailReality"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
Success
(
res
.
data
.
message
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
uploadFileBtn
(
file
)
{
//上传
if
(
file
.
file
.
size
>
1024
*
1024
*
10
)
{
this
.
$message
.
warning
(
"文件大小不能超过10M!"
);
return
;
}
// 1 文档 2 数据 3 图片
let
typeArr
=
[{
stringArr
:
"GIF|JPG|JPEG|PNG|BMP"
,
type
:
3
}];
let
ft
=
file
.
file
.
name
.
substring
(
file
.
file
.
name
.
lastIndexOf
(
"."
)
+
1
,
file
.
file
.
name
.
length
)
.
toUpperCase
();
let
fileTypeNumber
=
2
;
let
typeOk
=
false
;
typeArr
.
forEach
(
x
=>
{
if
(
x
.
stringArr
.
indexOf
(
ft
)
!=
"-1"
)
{
fileTypeNumber
=
x
.
type
;
typeOk
=
true
;
}
});
if
(
!
typeOk
)
return
this
.
$message
.
error
(
"请上传图片!"
);
let
newArr
=
[];
newArr
.
push
(
file
.
file
);
let
path
=
"/Upload/Temporary"
;
this
.
$message
.
info
(
"上传中..."
);
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
let
fileSize
=
file
.
file
.
size
<
1024
?
file
.
file
.
size
:
(
file
.
file
.
size
/
1024
).
toFixed
(
0
);
this
.
tableData
.
forEach
(
y
=>
{
if
(
y
.
Id
==
this
.
commonId
)
{
y
.
ImageList
.
push
(
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
)
}
})
this
.
Success
(
"上传成功"
);
});
},
}
}
};
}
;
</
script
>
<
style
>
.InventoryDetail
.MyEditForm
.dateList
.el-input__inner
{
/* width:300px; */
}
.InventoryDetail
.dateList
.el-date-editor
.el-range__icon
{
.InventoryDetail
.dateList
.el-date-editor
.el-range__icon
{
line-height
:
24px
;
}
.InventoryDetail
.dateList
.el-date-editor
.el-range-separator
{
}
.InventoryDetail
.dateList
.el-date-editor
.el-range-separator
{
line-height
:
22px
;
}
.InventoryDetail
.MyEditForm
.dateList.el-input__inner
{
width
:
300px
;
}
.assetsList
.MyEditForm
.baseform
.el-form-item
:nth-child
(
4n
)
{
margin-right
:
0
;
}
.assetsList
.zczt1
{
background
:
#ffe4d5
;
color
:
#ffa87c
;
}
.assetsList
.zczt2
{
background
:
#beeff0
;
color
:
#089bab
;
}
.assetsList
.zczt3
{
background
:
#ffd6d5
;
color
:
#ff7874
;
}
.assetsList
.zczt4
{
background
:
#d7d6ff
;
color
:
#7b78ff
;
}
.assetsList
.Commonzczt
{
display
:
inline-block
;
width
:
24px
;
height
:
24px
;
line-height
:
24px
;
text-align
:
center
;
border-radius
:
50%
;
font-size
:
12px
;
font-family
:
"Microsoft YaHei"
;
}
.assetsList
{
width
:
100%
;
height
:
100%
;
}
}
.InventoryDetail
.MyEditForm
.dateList.el-input__inner
{
width
:
300px
;
}
.assetsList
.MyEditForm
.baseform
.el-form-item
:nth-child
(
4n
)
{
margin-right
:
0
;
}
.assetsList
.zczt1
{
background
:
#ffe4d5
;
color
:
#ffa87c
;
}
.assetsList
.zczt2
{
background
:
#beeff0
;
color
:
#089bab
;
}
.assetsList
.zczt3
{
background
:
#ffd6d5
;
color
:
#ff7874
;
}
.assetsList
.zczt4
{
background
:
#d7d6ff
;
color
:
#7b78ff
;
}
.assetsList
.Commonzczt
{
display
:
inline-block
;
width
:
24px
;
height
:
24px
;
line-height
:
24px
;
text-align
:
center
;
border-radius
:
50%
;
font-size
:
12px
;
font-family
:
"Microsoft YaHei"
;
}
.assetsList
{
width
:
100%
;
height
:
100%
;
}
.w80
{
width
:
80px
!important
;
}
</
style
>
src/router/config.js
View file @
6f0424a1
...
...
@@ -235,6 +235,12 @@ export default {
name
:
'InventoryDetail'
,
component
:
resolve
=>
require
([
'@/components/Materialman/InventoryDetail'
],
resolve
),
},
// 耗材报损报溢
{
path
:
'/InventoryBosun'
,
name
:
'InventoryBosun'
,
component
:
resolve
=>
require
([
'@/components/Materialman/InventoryBosun'
],
resolve
),
},
// 现存量查询
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment