Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
patzn-cloud-web-back-soil
Overview
Overview
Details
Activity
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
wangweidong
patzn-cloud-web-back-soil
Commits
7099ca8d
Commit
7099ca8d
authored
Sep 19, 2020
by
lichengming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改了附件上传
parent
3d9a9288
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
703 additions
and
2 deletions
+703
-2
soil-entrust.js
api/soil/soil-entrust.js
+6
-1
PhotoList.vue
components/file/photo-manage/PhotoList.vue
+430
-0
PhotoManage.vue
components/file/photo-manage/PhotoManage.vue
+35
-0
PhotoManageCont.vue
components/file/photo-manage/PhotoManageCont.vue
+229
-0
SamplePreparation.vue
...il-sample-manage/sample-preparation/SamplePreparation.vue
+1
-1
global.js
plugins/global.js
+2
-0
No files found.
api/soil/soil-entrust.js
View file @
7099ca8d
...
@@ -63,5 +63,10 @@ export default {
...
@@ -63,5 +63,10 @@ export default {
http
.
post
(
'soil/v1/sample_backup/page_backup'
,
data
).
then
(
res
=>
res
),
http
.
post
(
'soil/v1/sample_backup/page_backup'
,
data
).
then
(
res
=>
res
),
// 试验项目列表
// 试验项目列表
experimentPage
:
data
=>
experimentPage
:
data
=>
http
.
post
(
'soil/v1/experiment/page'
,
data
).
then
(
res
=>
res
)
http
.
post
(
'soil/v1/experiment/page'
,
data
).
then
(
res
=>
res
),
// 开土制备试验照片预览
photoView
:
data
=>
http
.
get
(
'soil/v1/sample_photo/view?objectKey='
+
data
.
objectKey
)
.
then
(
res
=>
res
)
}
}
components/file/photo-manage/PhotoList.vue
0 → 100644
View file @
7099ca8d
<
template
>
<div>
<Row>
<!--操作-->
<Col
span=
"24"
style=
"margin-bottom: 10px"
>
<div
class=
"btns-menu"
>
<!--查看方式-->
<Select
v-model=
"viewVal"
@
on-change=
"_view"
style=
"width:150px;float: left"
placeholder=
"请选择查看方式"
>
<Option
v-for=
"item in checkList"
:key=
"item.value"
:value=
"item.value"
>
{{
item
.
name
}}
</Option>
</Select>
<!--上传-->
<label>
<Upload
:action=
"action"
:on-success=
"_handelsuccess"
:before-upload=
"_beupload"
:on-progress=
"_handelprogress"
:data=
"dataObj"
:with-credentials=
"true"
:show-upload-list=
"false"
style=
"float: left"
>
<Button>
上传
</Button>
</Upload>
</label>
<!--一系列操作-->
<!--非表格-->
<!--
<Button
v-if=
"viewStyle === 2 || viewStyle === 3"
v-for=
"item in menusListA"
:key=
"item.name"
@
click=
"_radioChange(item.value)"
--
>
<!-- >
{{
item
.
name
}}
-->
<!--
</Button>
-->
<!-- <!–表格–>-->
<!--
<Button
v-if=
"viewStyle === 1"
v-for=
"item in menusList"
:key=
"item.name"
@
click=
"_tableChange(item.value)"
--
>
<!-- style="margin-right: 5px">
{{
item
.
name
}}
-->
<!--
</Button>
-->
</div>
</Col>
<Col
span=
"24"
style=
"margin-bottom: 10px"
>
<!-- 默认是详细模式 -->
<div
v-show=
"viewStyle === 1"
>
<PTVXETable
ref=
"pageTable"
:pageColumns=
"pageColumns"
:tableHeight=
"tableHeight"
@
on-result-change=
"_tableResultChange"
:getPage=
"getPage"
select-data
>
<vxe-table-column
:field=
"item.key"
:title=
"item.title"
:min-width=
"item.width?item.width:200"
:fixed=
"item.fixed?item.fixed:undefined"
v-for=
"item in pageColumns"
:key=
"item.key"
sortable
>
<template
slot-scope=
"scope"
>
<span
v-if=
"item.dateTime"
>
{{
scope
.
row
[
item
.
key
]?
$dateformat
(
scope
.
row
[
item
.
key
],
'yyyy-mm-dd HH:MM'
):
''
}}
</span>
<span
v-else
>
{{
scope
.
row
[
item
.
key
]
}}
</span>
</
template
>
</vxe-table-column>
<vxe-table-column
title=
"操作"
align=
"center"
width=
"100"
fixed=
"right"
>
<
template
slot-scope=
"scope"
>
<VXEIconList
:msg=
"iconMsg"
@
on-result-change=
"_iconClick"
:rowData=
"scope.row"
></VXEIconList>
</
template
>
</vxe-table-column>
</PTVXETable>
</div>
<!--/-->
<!--缩略图 模式-->
<div
v-show=
"viewStyle === 2"
>
<ul
:style=
"{ 'height': 'auto' }"
class=
"thumbnailStyle"
>
<CheckboxGroup
@
on-change=
"_chkVal"
v-model=
"selectIds"
>
<li
v-for=
"item in getPage.records"
:key=
"item.id"
>
<div
class=
"thumbnailStyleImg"
>
<Tooltip
placement=
"top"
>
<img
:src=
" bigUrl+item.type+'.png' "
/>
<div
slot=
"content"
style=
"white-space: normal"
>
<p>
名称:{{item.fileName}}
</p>
</div>
</Tooltip>
</div>
<div
class=
"thumbnailStyleCheck clearCheck"
>
<Checkbox
:label=
"item.id"
><span
class=
"inline-span"
style=
"display: inline"
>
{{item.fileName}}
</span>
</Checkbox>
</div>
</li>
</CheckboxGroup>
</ul>
<div
style=
"margin-top: 10px"
>
共 {{getPage.total}} 条
</div>
</div>
<!--/-->
<!--列表 模式-->
<div
v-show=
"viewStyle === 3"
>
<ul
:style=
"{ 'height': 'auto' }"
class=
"listStyle"
>
<CheckboxGroup
@
on-change=
"_chkVal"
v-model=
"selectIds"
>
<li
v-for=
"item in getPage.records"
:key=
"item.id"
>
<div
class=
"listStyleCheck clearCheck"
>
<Tooltip
placement=
"top"
>
<span
class=
"spanImg"
>
<img
:src=
" smallUrl+item.type+'.png' "
/>
</span>
<span>
<Checkbox
:label=
"item.id"
><span>
{{item.fileName}}
</span></Checkbox>
</span>
<div
slot=
"content"
style=
"white-space: normal"
>
<p>
名称:{{item.fileName}}
</p>
</div>
</Tooltip>
</div>
</li>
</CheckboxGroup>
</ul>
<div
style=
"margin-top: 10px"
>
共 {{getPage.total}} 条
</div>
</div>
<!--/-->
</Col>
</Row>
<!--上传loading-->
<div
v-show=
"isLoad"
>
<Spin
fix
>
<Icon
type=
"load-c"
size=
18
class=
"file-spin-icon-load"
></Icon>
<div>
正在上传,请稍后...
</div>
</Spin>
</div>
<!--图片预览-->
<!-- <div>-->
<!-- <vue-gallery-slideshow :images="imgViewList" :index="imgViewIndex"-->
<!-- @close="imgViewIndex = null"></vue-gallery-slideshow>-->
<!-- </div>-->
</div>
</template>
<
script
>
// import VueGallerySlideshow from 'vue-gallery-slideshow'
import
global
from
'../../../api/config'
import
{
meterEntrust
,
soilEntrust
}
from
'../../../api'
/**
* 公共组件modal 弹框(支持上传,下载,预览,删除附件等操作)
*/
export
default
{
// components: { VueGallerySlideshow },
props
:
{
fileName
:
null
},
data
()
{
return
{
imgViewList
:
[],
imgViewIndex
:
null
,
iconMsg
:
[
{
type
:
'md-remove-circle'
,
id
:
''
,
name
:
'删除'
},
{
type
:
'ios-download'
,
id
:
''
,
name
:
'下载'
},
{
type
:
'ios-eye'
,
id
:
''
,
name
:
'预览'
}
],
iconMsgDis
:
[
{
type
:
'trash-a'
,
id
:
''
,
name
:
'删除'
},
{
type
:
'ios-download'
,
id
:
''
,
name
:
'下载'
},
{
type
:
'images'
,
id
:
''
,
name
:
'预览'
,
disabled
:
true
}
],
selectIds
:
[],
getPage
:
{},
pageColumns
:
[
{
title
:
'文件名'
,
key
:
'fileName'
},
{
title
:
'类型'
,
key
:
'type'
,
width
:
120
},
{
title
:
'上传时间'
,
key
:
'ctime'
,
width
:
140
,
dateTime
:
true
}
// {title: '上传人', key: 'cname', width: 120},
],
formObj
:
{
contractId
:
undefined
,
entrustId
:
undefined
},
viewVal
:
1
,
viewStyle
:
1
,
menusList
:
[
{
name
:
'下载'
,
value
:
'down'
},
{
name
:
'删除'
,
value
:
'delete'
}
],
menusListA
:
[{
name
:
'删除'
,
value
:
'delete'
}],
checkList
:
[
{
name
:
'详细模式'
,
value
:
1
},
{
name
:
'缩略图模式'
,
value
:
2
},
{
name
:
'列表模式'
,
value
:
3
}
],
Ids
:
[],
smallUrl
:
global
.
staticURL
+
'/img/smallfile/'
,
bigUrl
:
global
.
staticURL
+
'/img/bigfile/'
,
action
:
''
,
dataObj
:
{
file
:
''
// contractId: ''
},
isLoad
:
false
,
// 是否显示loading...
id
:
''
,
// 合同、委托、样品id
objectKey
:
[],
urlData
:
{},
idsObj
:
{}
}
},
computed
:
{
tableHeight
:
function
()
{
return
this
.
$tableHeight
(
'tableModal'
)
}
},
methods
:
{
_setUploadData
(
data
,
idsObj
,
idKey
)
{
this
.
selectIds
=
[]
this
.
imgViewIndex
=
null
this
.
isLoad
=
false
this
.
id
=
data
.
id
const
pageKey
=
idKey
console
.
log
(
pageKey
)
this
.
$set
(
this
.
formObj
,
pageKey
,
data
.
id
)
console
.
log
(
this
.
formObj
)
// this.formObj.contractId = data.id
// this.formObj.entrustId = data.id
// 各个ids
this
.
idsObj
=
idsObj
this
.
urlData
=
data
this
.
action
=
global
.
baseURL
+
data
.
uploadFileUrl
+
data
.
id
this
.
$nextTick
(()
=>
{
this
.
_page
()
})
},
_page
:
async
function
()
{
Object
.
assign
(
this
.
formObj
,
this
.
$refs
.
pageTable
.
_searchParams
())
const
result
=
await
meterEntrust
.
attachmentPage
(
this
.
urlData
.
pageUrl
,
this
.
formObj
)
if
(
result
)
{
this
.
$refs
.
pageTable
.
_hideLoading
()
this
.
getPage
=
result
}
},
// _page: async function() {
// Object.assign(this.formObj, this.$refs.pageTable._searchParams())
// console.log('this.formObj', this.formObj)
// const result = await meterEntrust.attachmentPage(this.formObj)
// console.log('请求结果', result)
// if (result) {
// console.log(result)
// this.$refs.pageTable._hideLoading()
// this.getPage = result
// }
// },
_formSearch
()
{
this
.
$refs
.
pageTable
.
_pageChange
(
1
)
},
_searchParams
()
{
const
data
=
{}
Object
.
assign
(
data
,
{
fileName
:
this
.
fileName
},
this
.
idsObj
)
return
data
},
_tableResultChange
(
msg
,
data
)
{
switch
(
msg
)
{
case
'page'
:
this
.
Ids
=
[]
this
.
objectKey
=
[]
this
.
getPage
=
this
.
$store
.
state
[
this
.
urlData
.
msg
].
page
break
case
'selectData'
:
const
idList
=
[]
const
objectKey
=
[]
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
idList
.
push
(
data
[
i
].
id
)
objectKey
.
push
(
data
[
i
].
objectKey
)
}
this
.
Ids
=
idList
this
.
objectKey
=
objectKey
break
case
'iconClick'
:
this
.
_iconClick
(
data
.
name
,
data
.
rowData
)
break
case
'changeSize'
:
this
.
_page
()
break
}
},
_iconClick
(
res
,
data
)
{
switch
(
res
)
{
case
'下载'
:
window
.
open
(
global
.
baseURL
+
this
.
urlData
.
downloadFileUrl
+
data
.
id
,
'_blank'
)
break
case
'删除'
:
this
.
_deleteById
([
data
.
id
])
break
case
'预览'
:
this
.
_viewImg
(
data
)
break
}
},
// 预览图片(该合同下所有的)
// _viewImg(data) {
_viewImg
:
async
function
(
data
)
{
console
.
log
(
data
)
const
viewKey
=
{}
viewKey
.
objectKey
=
data
.
objectKey
console
.
log
(
viewKey
)
const
result
=
await
soilEntrust
.
photoView
(
viewKey
)
console
.
log
(
result
)
// if (this.urlData.viewUri === '/meter/v1/entrust_attachment/preview/') {
// const id = data.entrustId
// const result = await meterEntrust.entrustPreview(id)
// console.log(result)
// } else {
// const id = data.contractId
// const result = await meterEntrust.attachmentPreview(id)
// console.log(result)
// }
// this.$store.dispatch(this.urlData.uri, this.id).then(() => {
// const viewUri = this.urlData.viewUri
// const result = this.$store.state[this.urlData.msg].list
// const imgViewList = []
// for (let i = 0; i
<
result
.
length
;
i
++
)
{
// imgViewList.push(
// global.baseURL +
// viewUri +
// '?id=' +
// result[i].id +
// '&objectKey=' +
// result[i].objectKey
// )
// }
// this.imgViewList = imgViewList
// // 打开的是当前第几张图片
// const salesUri =
// global.baseURL +
// viewUri +
// '?id=' +
// data.id +
// '&objectKey=' +
// data.objectKey
// const index = this.imgViewList.findIndex(item => item === salesUri)
// if (index === -1) {
// this.imgViewIndex = 0
// } else {
// this.imgViewIndex = index
// }
// })
},
// 删除
_deleteById
(
id
)
{
this
.
$emit
(
'on-result-change'
,
'delete'
,
id
)
},
// 查看方式改变
_view
(
val
)
{
this
.
viewStyle
=
val
this
.
selectIds
=
[]
if
(
val
===
1
)
{
this
.
_formSearch
()
}
},
_chkVal
(
val
)
{
this
.
selectIds
=
val
},
// 一系列操作返回的值
_radioChange
(
val
)
{
if
(
val
===
'down'
)
{
if
(
this
.
objectKey
.
length
===
0
)
{
this
.
$Message
.
warning
(
'请至少选择一条数据!'
)
}
else
{
this
.
_downloadAll
(
this
.
objectKey
)
}
}
if
(
val
===
'delete'
)
{
if
(
this
.
selectIds
.
length
===
0
)
{
this
.
$Message
.
warning
(
'请至少选择一条数据!'
)
}
else
{
this
.
_deleteById
(
this
.
selectIds
)
}
}
},
_tableChange
(
val
)
{
if
(
val
===
'down'
)
{
if
(
this
.
objectKey
.
length
===
0
)
{
this
.
$Message
.
warning
(
'请至少选择一条数据!'
)
}
else
{
this
.
_downloadAll
(
this
.
objectKey
)
}
}
if
(
val
===
'delete'
)
{
if
(
this
.
Ids
.
length
===
0
)
{
this
.
$Message
.
warning
(
'请至少选择一条数据!'
)
}
else
{
this
.
_deleteById
(
this
.
Ids
)
}
}
},
// 批量打包下载
_downloadAll
(
ids
)
{
window
.
open
(
global
.
baseURL
+
this
.
urlData
.
downloadBatch
+
'?objectKeys='
+
ids
)
},
_beupload
(
file
)
{
this
.
dataObj
.
file
=
file
.
name
},
_handelprogress
(
event
,
file
,
fileList
)
{
this
.
isLoad
=
true
},
_handelsuccess
(
response
,
file
,
fileList
)
{
// 上传成功
if
(
response
.
success
)
{
this
.
isLoad
=
false
this
.
$Message
.
success
(
'上传成功!'
)
this
.
_page
()
}
else
{
this
.
isLoad
=
true
this
.
$Message
.
error
(
response
.
msg
)
}
}
}
}
</
script
>
<
style
>
.radio-display.ivu-radio-group-button
.ivu-radio-wrapper
:first-child
{
border-radius
:
4px
!important
;
margin-right
:
5px
!important
;
}
.radio-display
.
.ivu-radio-wrapper
:last-child
{
border-radius
:
4px
!important
;
border-left
:
1px
solid
#dddee1
!important
;
}
</
style
>
components/file/photo-manage/PhotoManage.vue
0 → 100644
View file @
7099ca8d
<
template
>
<div>
<Modal
v-model=
"showModal"
:width=
"900"
v-drag
class=
"modal-footer-none zIndex-1100"
>
<p
slot=
"header"
>
{{
modalTitle
}}
</p>
<div>
<FileManageCont
ref=
"fileCont"
:flag=
"flag"
></FileManageCont>
</div>
</Modal>
</div>
</
template
>
<
script
>
import
FileManageCont
from
'./PhotoManageCont'
export
default
{
components
:
{
FileManageCont
},
props
:
{
// 只能删除自己的标识
flag
:
null
},
data
()
{
return
{
showModal
:
false
,
modalTitle
:
'试样照片'
}
},
methods
:
{
_open
(
id
,
key
)
{
this
.
showModal
=
true
this
.
$refs
.
fileCont
.
_open
(
id
,
key
)
}
}
}
</
script
>
components/file/photo-manage/PhotoManageCont.vue
0 → 100644
View file @
7099ca8d
<
template
>
<div>
<!--内容-->
<Row>
<!--查询-->
<Col
span=
"24"
style=
"margin-bottom: -10px"
>
<Form
:label-width=
"70"
inline
onsubmit=
"return false"
>
<label
class=
"label-sign"
></label>
<Form-item
label=
"文件名称:"
>
<Input
v-model=
"fileName"
@
on-enter=
"_search"
placeholder=
"请输入文件名称"
style=
"width:200px"
clearable
/>
</Form-item>
<Form-item
class=
"search-btn"
>
<Button
@
click=
"_search"
type=
"primary"
>
搜索
</Button>
</Form-item>
</Form>
</Col>
<!--列表-->
<Col
span=
"24"
>
<FilesList
ref=
"fileModal"
:fileName=
"fileName"
@
on-result-change=
"_fileData"
></FilesList>
</Col>
</Row>
<!--删除提示框-->
<ModalConfirm
ref=
"confirmModal"
:content=
"modalContent"
:btnModalList=
"btnModalList"
@
on-result-change=
"_modalResult"
></ModalConfirm>
</div>
</
template
>
<
script
>
import
ModalConfirm
from
'../../base/ModalConfirm'
import
{
meterEntrust
}
from
'../../../api'
import
FilesList
from
'./PhotoList'
export
default
{
components
:
{
FilesList
,
ModalConfirm
},
props
:
{
// 只能删除自己的标识
flag
:
null
},
data
()
{
return
{
fileName
:
''
,
selectIds
:
[],
getPage
:
{},
// ids
contractId
:
''
,
sampleId
:
''
,
subcontractorId
:
''
,
originalRecordId
:
''
,
curveId
:
''
,
// 用于区分是哪种附件(合同、委托、样品)
idKey
:
''
,
// 弹框的内容
modalContent
:
''
,
btnModalList
:
[
{
type
:
''
,
name
:
'取消'
},
{
type
:
'primary'
,
name
:
'确定'
}
],
//
deleteId
:
[],
urlData
:
{}
}
},
methods
:
{
/**
* msg:表示是哪种附件(委托,样品,分包商)
* pageUrl:page 请求地址
* deleteUrl:删除请求地址
* uploadFileUrl:上传地址
* downloadFileUrl:下载地址
* uri:预览请求地址
* viewUri:预览图片地址
* downloadBatch:批量打包下载
*/
_open
(
id
,
key
)
{
this
.
fileName
=
''
this
.
showModal
=
true
this
.
contractId
=
''
this
.
sampleId
=
''
this
.
subcontractorId
=
''
this
.
originalRecordId
=
''
this
.
curveId
=
''
this
.
entrustId
=
''
this
.
idKey
=
key
switch
(
key
)
{
// 委托
case
'contractId'
:
this
.
contractId
=
id
this
.
urlData
=
{
msg
:
'FoodContractAttachment'
,
pageUrl
:
'/meter/v1/entrust_attachment/page'
,
deleteUrl
:
'/meter/v1/entrust_attachment/?ids='
,
uploadFileUrl
:
'/meter/v1/entrust_attachment/upload/'
,
downloadFileUrl
:
'/meter/v1/entrust_attachment/download/'
,
downloadBatch
:
'/food/v1/contract_attachment/download_batch'
,
uri
:
'FoodContractAttachment/getByContractId'
,
viewUri
:
'/meter/v1/entrust_attachment/preview/'
}
break
case
'entrustId'
:
this
.
entrustId
=
id
this
.
urlData
=
{
msg
:
'FoodContractAttachment'
,
pageUrl
:
'/soil/v1/sample_photo/page'
,
deleteUrl
:
'/meter/v1/entrust_attachment/?ids='
,
uploadFileUrl
:
'/soil/v1/sample_photo/upload/'
,
downloadFileUrl
:
'/soil/v1/sample_photo/download/'
,
downloadBatch
:
'/food/v1/contract_attachment/download_batch'
,
uri
:
'FoodContractAttachment/getByContractId'
,
viewUri
:
'soil/v1/sample_photo/view'
}
break
case
'sampleId'
:
// 样品
this
.
sampleId
=
id
this
.
urlData
=
{
msg
:
'FoodSampleAttachment'
,
pageUrl
:
'FoodSampleAttachment/page'
,
deleteUrl
:
'FoodSampleAttachment/deleteByIds'
,
uploadFileUrl
:
'/food/v1/sample_attachment/upload/'
,
downloadFileUrl
:
'/food/v1/sample_attachment/download/'
,
downloadBatch
:
'/food/v1/sample_attachment/download_batch'
,
uri
:
'FoodSampleAttachment/getBySampleId'
,
viewUri
:
'/food/v1/sample_attachment/view'
}
break
case
'subcontractorId'
:
// 分包商
this
.
subcontractorId
=
id
this
.
urlData
=
{
msg
:
'FoodSubContractAttachment'
,
pageUrl
:
'/meter/v1/contract_attachment/page'
,
deleteUrl
:
'/meter/v1/contract_attachment/?ids='
,
uploadFileUrl
:
'/meter/v1/contract_attachment/upload/'
,
downloadFileUrl
:
'/meter/v1/contract_attachment/download/'
,
downloadBatch
:
'/food/v1/subcontractor_attachment/download_batch'
,
uri
:
'FoodSubContractAttachment/getBySubcontractorId'
,
viewUri
:
'/food/v1/subcontractor_attachment/view'
}
break
case
'originalRecordId'
:
// 原始记录
this
.
originalRecordId
=
id
this
.
urlData
=
{
msg
:
'FoodOriginalRecordAttachment'
,
pageUrl
:
'FoodOriginalRecordAttachment/page'
,
deleteUrl
:
'FoodOriginalRecordAttachment/deleteByIds'
,
uploadFileUrl
:
'/food/v1/original_attachment/'
,
downloadFileUrl
:
'/food/v1/original_attachment/download/'
,
downloadBatch
:
'/food/v1/original_attachment/download_batch'
,
uri
:
'FoodOriginalRecordAttachment/getByOriginalRecordId'
,
viewUri
:
'/food/v1/original_attachment/preview'
}
break
case
'curveId'
:
// 采样记录
this
.
curveId
=
id
this
.
urlData
=
{
msg
:
'ElnCurveAttachment'
,
pageUrl
:
'ElnCurveAttachment/page'
,
deleteUrl
:
'ElnCurveAttachment/deleteByIds'
,
uploadFileUrl
:
'/print/v1/curve_attachment/'
,
downloadFileUrl
:
'/print/v1/curve_attachment/download/'
,
downloadBatch
:
'/print/v1/curve_attachment/download_batch'
,
uri
:
'ElnCurveAttachment/getById'
,
viewUri
:
'/print/v1/curve_attachment/view'
}
break
}
const
idsObj
=
{
contractId
:
this
.
contractId
,
sampleId
:
this
.
sampleId
,
subcontractorId
:
this
.
subcontractorId
,
originalRecordId
:
this
.
originalRecordId
,
curveId
:
this
.
curveId
,
entrustId
:
this
.
entrustId
}
this
.
$refs
.
fileModal
.
_setUploadData
(
Object
.
assign
({
id
:
id
},
this
.
urlData
),
idsObj
,
this
.
idKey
)
},
_deleteById
(
ids
)
{
this
.
deleteId
=
ids
this
.
modalContent
=
'确定要删除这 '
+
ids
.
length
+
' 个附件?'
this
.
$refs
.
confirmModal
.
_openModal
()
},
_delPage
:
async
function
(
data
)
{
console
.
log
(
data
)
const
result
=
await
meterEntrust
.
attachmentDelete
(
this
.
urlData
.
deleteUrl
,
data
.
id
)
if
(
result
)
{
this
.
$Message
.
success
(
'删除成功!'
)
this
.
$refs
.
fileModal
.
_page
()
}
this
.
$refs
.
confirmModal
.
_closeModal
()
this
.
deleteId
=
[]
},
// 删除提示框返回
_modalResult
(
msg
)
{
if
(
msg
===
'确定'
)
{
// 删除一条记录
if
(
this
.
flag
===
undefined
)
{
// 只能删除自己上传的
this
.
_delPage
({
id
:
this
.
deleteId
,
flag
:
1
})
}
else
{
// 可以删除全部
this
.
_delPage
({
id
:
this
.
deleteId
})
}
}
},
_fileData
(
msg
,
data
)
{
switch
(
msg
)
{
case
'delete'
:
this
.
_deleteById
(
data
)
break
}
},
// 搜索
_search
()
{
this
.
$refs
.
fileModal
.
_page
()
}
}
}
</
script
>
pages/soil-sample-manage/sample-preparation/SamplePreparation.vue
View file @
7099ca8d
...
@@ -47,7 +47,7 @@
...
@@ -47,7 +47,7 @@
</Row>
</Row>
</div>
</div>
</div>
</div>
<
FileManage
ref=
"FileManage"
></File
Manage>
<
PhotoManage
ref=
"FileManage"
></Photo
Manage>
<Operation
ref=
"operationModal"
></Operation>
<Operation
ref=
"operationModal"
></Operation>
<SamplePreparationEdit
ref=
"editModal"
@
on-result-change=
"_formSearch"
></SamplePreparationEdit>
<SamplePreparationEdit
ref=
"editModal"
@
on-result-change=
"_formSearch"
></SamplePreparationEdit>
<SoilSampleManage
ref=
"sampleManageModal"
@
on-result-change=
"_page"
></SoilSampleManage>
<SoilSampleManage
ref=
"sampleManageModal"
@
on-result-change=
"_page"
></SoilSampleManage>
...
...
plugins/global.js
View file @
7099ca8d
...
@@ -14,6 +14,7 @@ import VXEIconList from '../components/base/VXEIconList'
...
@@ -14,6 +14,7 @@ import VXEIconList from '../components/base/VXEIconList'
import
FileManage
from
'../components/file/file-manage/FileManage'
import
FileManage
from
'../components/file/file-manage/FileManage'
import
VXESettingCol
from
'../components/base/VXESettingCol'
import
VXESettingCol
from
'../components/base/VXESettingCol'
import
ElTableNoPage
from
'../components/table/ElTableNoPage'
import
ElTableNoPage
from
'../components/table/ElTableNoPage'
import
PhotoManage
from
'../components/file/photo-manage/PhotoManage'
Vue
.
use
(
VXETable
)
Vue
.
use
(
VXETable
)
Vue
.
component
(
'btn-list'
,
btnList
)
Vue
.
component
(
'btn-list'
,
btnList
)
...
@@ -25,4 +26,5 @@ Vue.component('PTVXETableData', PTVXETableData)
...
@@ -25,4 +26,5 @@ Vue.component('PTVXETableData', PTVXETableData)
Vue
.
component
(
'VXEIconList'
,
VXEIconList
)
Vue
.
component
(
'VXEIconList'
,
VXEIconList
)
Vue
.
component
(
'VXESettingCol'
,
VXESettingCol
)
Vue
.
component
(
'VXESettingCol'
,
VXESettingCol
)
Vue
.
component
(
'FileManage'
,
FileManage
)
Vue
.
component
(
'FileManage'
,
FileManage
)
Vue
.
component
(
'PhotoManage'
,
PhotoManage
)
Vue
.
component
(
'ElTableNoPage'
,
ElTableNoPage
)
Vue
.
component
(
'ElTableNoPage'
,
ElTableNoPage
)
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