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
16bf0da5
Commit
16bf0da5
authored
Jan 20, 2021
by
zhangmengqi
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev'
parents
812645f7
3b8d80fd
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
48 changed files
with
2321 additions
and
150 deletions
+2321
-150
soil-aptitude.js
api/soil/soil-aptitude.js
+8
-0
soil-entrust.js
api/soil/soil-entrust.js
+2
-0
soil-sample.js
api/soil/soil-sample.js
+4
-0
soil-test.js
api/soil/soil-test.js
+20
-0
FilesList.vue
components/file/entrust-file-manage/FilesList.vue
+3
-2
FileManageCont.vue
components/file/file-manage/FileManageCont.vue
+1
-1
FilesList.vue
components/file/file-manage/FilesList.vue
+1
-2
PhotoList.vue
components/file/photo-manage/PhotoList.vue
+3
-2
defaultGds.vue
layouts/defaultGds.vue
+91
-0
EntrustRegister.vue
pages/meter-entrust/entrust-register/EntrustRegister.vue
+26
-0
EntrustRegisterEdit.vue
pages/meter-entrust/entrust-register/EntrustRegisterEdit.vue
+26
-35
EntrustRegisterHis.vue
pages/meter-entrust/entrust-register/EntrustRegisterHis.vue
+6
-1
ReviewEntrust.vue
pages/meter-entrust/entrust-review/ReviewEntrust.vue
+46
-0
EntrustRegister.vue
pages/soil-alone-sample-instock/EntrustRegister.vue
+3
-3
EntrustRegisterHis.vue
pages/soil-alone-sample-instock/EntrustRegisterHis.vue
+7
-2
ViewDetail.vue
pages/soil-alone-sample-instock/ViewDetail.vue
+18
-1
EntrustRegister.vue
...ple-manage/soil-alone-sample-outstock/EntrustRegister.vue
+2
-2
EntrustRegisterHis.vue
...-manage/soil-alone-sample-outstock/EntrustRegisterHis.vue
+7
-2
ViewDetail.vue
...e-sample-manage/soil-alone-sample-outstock/ViewDetail.vue
+28
-0
AddressManage.vue
...-sample-manage/storehouse-sample-manage/AddressManage.vue
+2
-2
AddressManageHis.vue
...mple-manage/storehouse-sample-manage/AddressManageHis.vue
+2
-2
EntrustRegister.vue
pages/soil-alone-sample/EntrustRegister.vue
+2
-2
EntrustRegisterHis.vue
pages/soil-alone-sample/EntrustRegisterHis.vue
+8
-2
ViewDetail.vue
pages/soil-alone-sample/ViewDetail.vue
+19
-1
ConfigTemplate.vue
...ample-manage/open-soil-template-manage/ConfigTemplate.vue
+169
-0
ConfigTemplateEdit.vue
...e-manage/open-soil-template-manage/ConfigTemplateEdit.vue
+271
-0
OpenSoilTemplate.vue
...ple-manage/open-soil-template-manage/OpenSoilTemplate.vue
+262
-0
OpenSoilTemplateEdit.vue
...manage/open-soil-template-manage/OpenSoilTemplateEdit.vue
+169
-0
SoilRecordEdit.vue
...ample-manage/open-soil-template-manage/SoilRecordEdit.vue
+310
-0
SeniorSampleEdit.vue
...ple-alone-keep/entrust-sample-manage/SeniorSampleEdit.vue
+212
-0
WaitReceive.vue
...e/sample-alone-keep/entrust-sample-manage/WaitReceive.vue
+0
-0
SamplePreparationHis.vue
...-manage/sample-preparation-check/SamplePreparationHis.vue
+6
-1
CreateReport.vue
pages/soil-sample-manage/sample-preparation/CreateReport.vue
+162
-0
ReportTemplate.vue
.../soil-sample-manage/sample-preparation/ReportTemplate.vue
+107
-0
SamplePreparation.vue
...il-sample-manage/sample-preparation/SamplePreparation.vue
+74
-21
SamplePreparationHis.vue
...sample-manage/sample-preparation/SamplePreparationHis.vue
+6
-1
ReceiveByEntrust.vue
pages/soil-sample-manage/sample-receive/ReceiveByEntrust.vue
+21
-2
ReceiveBySample.vue
pages/soil-sample-manage/sample-receive/ReceiveBySample.vue
+25
-0
TakeByEntrust.vue
pages/soil-sample-manage/sample-take/TakeByEntrust.vue
+81
-2
ItemLeftList.vue
...il-test-manage/test-data-audit/item-tabs/ItemLeftList.vue
+8
-6
ItemRightList.vue
...l-test-manage/test-data-audit/item-tabs/ItemRightList.vue
+15
-13
ItemLeftList.vue
...il-test-manage/test-data-check/item-tabs/ItemLeftList.vue
+9
-6
ItemRightList.vue
...l-test-manage/test-data-check/item-tabs/ItemRightList.vue
+17
-20
ViewGdsData.vue
pages/soil-test-manage/test-input/ViewGdsData.vue
+19
-6
ItemRightList.vue
...s/soil-test-manage/test-input/item-tabs/ItemRightList.vue
+9
-5
AllotByEntrust.vue
.../soil-test-manage/test-task-manage-his/AllotByEntrust.vue
+25
-1
routes.js
router/routes.js
+3
-3
soil-routes.js
router/soil-routes.js
+6
-1
No files found.
api/soil/soil-aptitude.js
View file @
16bf0da5
...
...
@@ -24,6 +24,10 @@ export default {
http
.
delete
(
'soil/v1/aptitude_exp/?ids='
+
data
).
then
(
res
=>
res
),
// 保存
save
:
data
=>
http
.
post
(
'soil/v1/aptitude_exp/'
,
data
).
then
(
res
=>
res
),
editSeniorSample
:
data
=>
http
.
post
(
'soil/v1/sample/edit_senior_sample?ids='
+
data
.
ids
,
data
.
obj
)
.
then
(
res
=>
res
),
edit
:
data
=>
http
.
put
(
'soil/v1/aptitude_exp/'
+
data
.
id
,
data
.
obj
).
then
(
res
=>
res
),
// 指标页面
...
...
@@ -43,6 +47,10 @@ export default {
http
.
post
(
'soil/v1/standard/list'
,
data
).
then
(
res
=>
res
),
originalTemplatePage
:
data
=>
http
.
post
(
'soil/v1/original_template/page'
,
data
).
then
(
res
=>
res
),
pageOpenSoil
:
data
=>
http
.
post
(
'soil/v1/original_template/page_open_soil'
,
data
)
.
then
(
res
=>
res
),
originalTemplateDeleteById
:
data
=>
http
.
delete
(
'soil/v1/original_template/?ids='
+
data
).
then
(
res
=>
res
),
originalTemplateEdit
:
data
=>
...
...
api/soil/soil-entrust.js
View file @
16bf0da5
...
...
@@ -149,6 +149,8 @@ export default {
http
.
post
(
'soil/v1/alone_sample/'
,
data
).
then
(
res
=>
res
),
aloneSampleGetById
:
data
=>
http
.
get
(
'soil/v1/alone_sample/'
+
data
).
then
(
res
=>
res
),
getAloneVOById
:
data
=>
http
.
get
(
'soil/v1/alone_sample/vo/'
+
data
).
then
(
res
=>
res
),
aloneSampleEdit
:
data
=>
http
.
put
(
'soil/v1/alone_sample/'
+
data
.
id
,
data
).
then
(
res
=>
res
),
aloneSampleDelete
:
data
=>
...
...
api/soil/soil-sample.js
View file @
16bf0da5
...
...
@@ -208,6 +208,10 @@ export default {
http
.
post
(
'soil/v1/experiment/save_excel_original_record'
,
data
)
.
then
(
res
=>
res
),
saveExcelOpenSoilRecord
:
data
=>
http
.
post
(
'soil/v1/experiment/save_excel_open_soil_record'
,
data
)
.
then
(
res
=>
res
),
// saveExcelExpReport: data =>
// http
// .post(
...
...
api/soil/soil-test.js
View file @
16bf0da5
...
...
@@ -79,6 +79,26 @@ export default {
JSON
.
stringify
(
data
.
obj
)
)
.
then
(
res
=>
res
),
pageExperimentCheckBath
:
data
=>
https
.
post
(
'soil/v1/experiment/page_exp_check_bath?page='
+
data
.
page
+
'&rows='
+
data
.
rows
,
JSON
.
stringify
(
data
.
obj
)
)
.
then
(
res
=>
res
),
pageExperimentAuditBath
:
data
=>
https
.
post
(
'soil/v1/experiment/page_exp_audit_bath?page='
+
data
.
page
+
'&rows='
+
data
.
rows
,
JSON
.
stringify
(
data
.
obj
)
)
.
then
(
res
=>
res
),
pageExpPrepareBath
:
data
=>
https
.
post
(
...
...
components/file/entrust-file-manage/FilesList.vue
View file @
16bf0da5
...
...
@@ -75,7 +75,7 @@
<li
v-for=
"item in getPage.records"
:key=
"item.id"
>
<div
class=
"thumbnailStyleImg"
>
<Tooltip
placement=
"top"
>
<img
:
src=
"
bigUrl+item.type+'.png' "
/>
<img
:
class=
"item.type === 'jpg'||item.type === 'png'?'samllJpg':' ' "
:src=
" item.type==='jpg'||item.type === 'png'?imgUrl+item.id:
bigUrl+item.type+'.png' "
/>
<div
slot=
"content"
style=
"white-space: normal"
>
<p>
名称:{{item.fileName}}
</p>
</div>
...
...
@@ -193,7 +193,7 @@ export default {
Ids
:
[],
smallUrl
:
global
.
staticURL
+
'/img/smallfile/'
,
bigUrl
:
global
.
staticURL
+
'/img/bigfile/'
,
imgUrl
:
''
,
action
:
''
,
dataObj
:
{
file
:
''
...
...
@@ -234,6 +234,7 @@ export default {
this
.
idsObj
=
idsObj
this
.
urlData
=
data
this
.
action
=
global
.
baseURL
+
data
.
uploadFileUrl
+
data
.
id
this
.
imgUrl
=
global
.
baseURL
+
data
.
downloadFileUrl
this
.
downloadFileUrlFile
=
data
.
downloadFileUrl
this
.
$nextTick
(()
=>
{
this
.
_page
()
...
...
components/file/file-manage/FileManageCont.vue
View file @
16bf0da5
...
...
@@ -17,7 +17,7 @@
</Col>
<!--列表-->
<Col
span=
"24"
>
<FilesList
ref=
"fileModal"
:fileName=
"fileName"
:viewUrl=
"urlData.downloadFileUrl"
@
on-result-change=
"_fileData"
></FilesList>
<FilesList
ref=
"fileModal"
:fileName=
"fileName"
@
on-result-change=
"_fileData"
></FilesList>
</Col>
</Row>
<!--删除提示框-->
...
...
components/file/file-manage/FilesList.vue
View file @
16bf0da5
...
...
@@ -145,8 +145,7 @@ import BatchUploadSample from './BatchUploadSample'
export
default
{
components
:
{
BatchUpload
,
BatchUploadSample
},
props
:
{
fileName
:
null
,
viewUrl
:
null
fileName
:
null
},
data
()
{
return
{
...
...
components/file/photo-manage/PhotoList.vue
View file @
16bf0da5
...
...
@@ -74,7 +74,7 @@
<li
v-for=
"item in getPage.records"
:key=
"item.id"
>
<div
class=
"thumbnailStyleImg"
>
<Tooltip
placement=
"top"
>
<img
:
src=
"
bigUrl+item.type+'.png' "
/>
<img
:
class=
"item.type === 'jpg'||item.type === 'png'?'samllJpg':' ' "
:src=
" item.type==='jpg'||item.type === 'png'?imgUrl+item.id:
bigUrl+item.type+'.png' "
/>
<div
slot=
"content"
style=
"white-space: normal"
>
<p>
名称:{{item.fileName}}
</p>
</div>
...
...
@@ -185,7 +185,7 @@ export default {
Ids
:
[],
smallUrl
:
global
.
staticURL
+
'/img/smallfile/'
,
bigUrl
:
global
.
staticURL
+
'/img/bigfile/'
,
imgUrl
:
''
,
action
:
''
,
dataObj
:
{
file
:
''
...
...
@@ -223,6 +223,7 @@ export default {
this
.
idsObj
=
idsObj
this
.
urlData
=
data
this
.
action
=
global
.
baseURL
+
data
.
uploadFileUrl
+
data
.
id
this
.
imgUrl
=
global
.
baseURL
+
data
.
downloadFileUrl
this
.
downloadFileUrlFile
=
data
.
downloadFileUrl
this
.
$nextTick
(()
=>
{
this
.
_page
()
...
...
layouts/defaultGds.vue
0 → 100644
View file @
16bf0da5
<
template
>
<div
>
<div
:class=
"
{'shrink-iview-layout-nuxt':isShrink}">
<nuxt
v-if=
"isRouterAlive"
/>
</div>
</div>
</
template
>
<
script
>
// import Store from 'store2'
import
Global
from
'../api/config'
export
default
{
components
:
{},
data
()
{
return
{
isShrink
:
false
,
crumbsList
:
[],
show
:
false
,
isRouterAlive
:
false
}
},
watch
:
{
$route
(
newRoute
)
{
this
.
_setBreadCrumb
(
newRoute
)
}
},
mounted
()
{
// this.show = true
this
.
_setBreadCrumb
(
this
.
$route
)
this
.
$nextTick
(()
=>
{
this
.
_initLoad
()
})
},
methods
:
{
// 刷新
_reload
()
{
this
.
isRouterAlive
=
false
this
.
$nextTick
(()
=>
{
this
.
isRouterAlive
=
true
})
},
// 初始化加载
_initLoad
()
{
if
(
!
Global
.
getLn
())
{
// 暂时没有登录-跳到首页
window
.
location
.
href
=
Global
.
ssoURL
}
else
{
this
.
_reload
()
}
},
// 设置面包屑
_setBreadCrumb
(
route
)
{
this
.
crumbsList
=
this
.
$showBread
(
route
)
this
.
_onpopstate
(
route
)
},
_headerMenuResult
(
data
)
{
this
.
isShrink
=
data
},
// 判断当前页面是否可以退回
_onpopstate
(
route
)
{
// 现在就剩如何获取上一个界面的路由???
window
.
onpopstate
=
()
=>
{
history
.
go
(
1
)
}
}
}
}
</
script
>
<
style
>
.iview-layout-nuxt
{
position
:
absolute
;
top
:
100px
;
left
:
200px
;
background
:
#fff
;
width
:
-moz-calc
(
100%
-
200px
);
width
:
-webkit-calc
(
100%
-
200px
);
width
:
calc
(
100%
-
200px
);
height
:
-moz-calc
(
100%
-
100px
);
height
:
-webkit-calc
(
100%
-
100px
);
height
:
calc
(
100%
-
100px
);
overflow
:
auto
;
padding
:
10px
;
}
.shrink-iview-layout-nuxt
{
left
:
60px
;
width
:
-moz-calc
(
100%
-
60px
);
width
:
-webkit-calc
(
100%
-
60px
);
width
:
calc
(
100%
-
60px
);
}
</
style
>
pages/meter-entrust/entrust-register/EntrustRegister.vue
View file @
16bf0da5
...
...
@@ -64,6 +64,7 @@ import SoilSampleManage from '../SoilSampleManage'
import
importModal
from
'../../../components/import/DownloadTemplateImport'
import
SoilSampleItemManage
from
'../SoilSampleItemManageEdit'
import
EntrustFileManage
from
'../../../components/file/entrust-file-manage/FileManage'
import
global
from
'../../../api/config'
import
EntrustRegisterEdit
from
'./EntrustRegisterEdit'
export
default
{
components
:
{
...
...
@@ -100,6 +101,11 @@ export default {
type
:
'success'
,
id
:
''
,
name
:
'提交至评审'
},
{
type
:
'success'
,
id
:
''
,
name
:
'导出检测委托书模板'
}
// ,
// {
...
...
@@ -194,12 +200,32 @@ export default {
case
'提交'
:
this
.
_submitToSkipReview
()
break
case
'导出检测委托书模板'
:
this
.
_exportTemplate
()
break
case
'search'
:
this
.
searchOpen
=
!
this
.
searchOpen
break
}
})
},
_exportTemplate
()
{
const
data
=
{
importUrl
:
'/soil/v1/entrust/import_entrust/'
,
downloadUrl
:
'/soil/v1/excel/template_soil/TestEntrustBook.docx'
,
title
:
'试验委托单导入'
}
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定要导出该模板?'
,
onOk
:
()
=>
{
this
.
_download
(
data
)
}
})
},
_download
(
data
)
{
window
.
open
(
global
.
baseURL
+
data
.
downloadUrl
,
'_blank'
)
},
_import
()
{
this
.
currentComponent
=
'importModal'
const
data
=
{
...
...
pages/meter-entrust/entrust-register/EntrustRegisterEdit.vue
View file @
16bf0da5
...
...
@@ -6,23 +6,22 @@
<Form
id=
"MeterSendTestEdit"
ref=
"formObj"
:model=
"formObj"
:label-width=
"90"
inline
>
<Form-item
label=
"委托商"
prop=
"client"
class=
"width-48"
>
<AutoComplete
ref=
"autoInput"
v-model=
"formObj.client"
:down-data=
"customerData"
@
on-result-change=
"_cusNameChange"
name=
"client"
placeholder=
"请输入或选择委托单位
"
name=
"client"
placeholder=
"请输入或选择委托单位"
@
on-result-change=
"_cusNameChange
"
></AutoComplete>
</Form-item>
<Form-item
label=
"委托日期:"
prop=
"entrustDate"
class=
"width-48"
>
<Date-picker
v-model=
"formObj.entrustDate"
@
on-change=
"_ctimeChange"
type=
"date"
split-panels
style=
"width:100%;
"
placeholder=
"请选择委托日期"
name=
"entrustDat
e"
></Date-picker>
<Date-picker
v-model=
"formObj.entrustDate"
type=
"date"
split-panels
style=
"width:100%;"
placeholder=
"请选择委托日期
"
name=
"entrustDate"
@
on-change=
"_ctimeChang
e"
></Date-picker>
</Form-item>
<Form-item
label=
"项目名称"
prop=
"projectName"
class=
"width-48"
>
<AutoComplete
ref=
"autoInput"
v-model=
"formObj.projectName"
:down-data=
"projectData"
@
on-result-change=
"_projectChange"
name=
"projectName"
placeholder=
"请输入或选择项目名称
"
name=
"projectName"
placeholder=
"请输入或选择项目名称"
@
on-result-change=
"_projectChange
"
></AutoComplete>
</Form-item>
<Form-item
label=
"项目负责人"
prop=
"projectLeader"
class=
"width-48"
>
<AutoComplete
ref=
"autoInput"
v-model=
"formObj.projectLeader"
:down-data=
"projectLeaderData"
@
on-result-change=
"_projectLeaderChange"
show-key=
"realname"
name=
"projectLeader"
placeholder=
"请输入或选择项目负责人
"
show-key=
"realname"
name=
"projectLeader"
placeholder=
"请输入或选择项目负责人"
@
on-result-change=
"_projectLeaderChange
"
></AutoComplete>
<!--
<Input
v-model=
"formObj.projectLeader"
name=
"projectLeader"
placeholder=
"请输入项目负责人"
/>
-->
</Form-item>
<Form-item
label=
"钻孔位置"
prop=
"boreholeLocation"
class=
"width-48"
>
<Input
v-model=
"formObj.boreholeLocation"
name=
"boreholeLocation"
placeholder=
"请输入钻孔位置"
/>
...
...
@@ -37,23 +36,23 @@
<Input
v-model=
"formObj.latitude"
name=
"latitude"
placeholder=
"请输入纬度"
/>
</Form-item>
<Form-item
label=
"水深(米)"
prop=
"waterDepth"
class=
"width-48"
>
<Input
v-model=
"formObj.waterDepth"
@
keydown
.
native=
"channelInputLimit"
type=
"number"
name=
"waterDepth"
placeholder=
"请输入深度
"
/>
<Input
v-model=
"formObj.waterDepth"
type=
"number"
name=
"waterDepth"
placeholder=
"请输入深度"
@
keydown
.
native=
"channelInputLimit
"
/>
</Form-item>
<Form-item
label=
"平均容重"
prop=
"projectNo"
class=
"width-48"
>
<Input
v-model=
"formObj.projectNo"
name=
"projectNo"
placeholder=
"请输入平均容重"
/>
</Form-item>
<Form-item
@
click
.
native=
"_selectPerson"
label=
"制表人"
prop=
"tabulater"
class=
"width-48
"
>
<Form-item
label=
"制表人"
prop=
"tabulater"
class=
"width-48"
@
click
.
native=
"_selectPerson
"
>
<Input
v-model=
"formObj.tabulater"
name=
"tabulater"
placeholder=
"请输入名称"
/>
</Form-item>
<Form-item
label=
"制单日期:"
prop=
"tabulateDate"
class=
"width-48"
>
<Date-picker
v-model=
"formObj.tabulateDate"
@
on-change=
"_tabulateChange"
name=
"tabulateDate"
type=
"date"
split-panels
style=
"width:100%;
"
placeholder=
"请选择委托日期
"
></Date-picker>
<Date-picker
v-model=
"formObj.tabulateDate"
name=
"tabulateDate"
type=
"date"
split-panels
style=
"width:100%;"
placeholder=
"请选择委托日期
"
@
on-change=
"_tabulateChange
"
></Date-picker>
</Form-item>
<Form-item
label=
"检验类别:"
prop=
"testType"
class=
"width-48"
>
<el-select
@
change=
"typeChange"
v-model=
"formObj.testType"
name=
"testType"
placeholder=
"请选择"
size=
"small"
<el-select
v-model=
"formObj.testType"
name=
"testType"
placeholder=
"请选择"
size=
"small"
style=
"width:100%"
clearable
>
clearable
@
change=
"typeChange"
>
<el-option
v-for=
"item in typeoptions"
:key=
"item.name"
...
...
@@ -65,8 +64,8 @@
</Form>
</div>
<div
style=
"margin-bottom: 10px;"
>
<btn-list
:msg=
"edit?btnEdit:btn"
:open=
"searchOpen"
@
on-result-change=
"_btnClick
"
class=
"contHide
"
></btn-list>
<btn-list
:msg=
"edit?btnEdit:btn"
:open=
"searchOpen"
class=
"contHide
"
@
on-result-change=
"_btnClick
"
></btn-list>
</div>
<div>
<PTVXETable
...
...
@@ -75,7 +74,7 @@
:table-height=
"500"
:get-page=
"getPage"
:icon-msg=
"iconMsg"
:hide
P
age =
true
:hide
-p
age =
true
@
on-result-change=
"_tableResultChange"
>
<vxe-table-column
v-for=
"item in pageColumns"
...
...
@@ -97,13 +96,13 @@
></el-input>
</div>
<div
v-if=
"item.key==='samplePack'"
@
click
.
stop=
"_handleRow(scope)"
>
<AutoComplete
v-model=
"scope.row.samplePack"
:down
D
ata=
"packList"
@
on-result-change=
"_packChange"
name=
"samplePack"
placeholder=
"请输入或选择包装类型
"
<AutoComplete
v-model=
"scope.row.samplePack"
:down
-d
ata=
"packList"
name=
"samplePack"
placeholder=
"请输入或选择包装类型"
@
on-result-change=
"_packChange
"
></AutoComplete>
</div>
<div
v-if=
"item.key==='sampleDescribe'"
@
click
.
stop=
"_handleRow(scope)"
>
<AutoComplete
v-model=
"scope.row.sampleDescribe"
:down
D
ata=
"soilList"
@
on-result-change=
"_soilChange"
name=
"sampleDescribe"
placeholder=
"请输入或选择土质描述
"
<AutoComplete
v-model=
"scope.row.sampleDescribe"
:down
-d
ata=
"soilList"
name=
"sampleDescribe"
placeholder=
"请输入或选择土质描述"
@
on-result-change=
"_soilChange
"
></AutoComplete>
</div>
<div
v-else-if=
"item.key==='experiments'"
@
click
.
stop=
"_handleRow(scope)"
>
...
...
@@ -118,8 +117,8 @@
<modal-footer
ref=
"footerModal"
:footer=
"footerList"
@
on-result-change=
"_footerResult"
></modal-footer>
</div>
</Modal>
<importModal
ref=
"importModal"
@
on-result-change=
"_inputBack"
aptitude-item
></importModal>
<SampleItemSelect
ref=
"sampleItemSelectModal"
@
on-result-change=
"_itemImportBack"
is-change
/>
<importModal
ref=
"importModal"
aptitude-item
@
on-result-change=
"_inputBack"
></importModal>
<SampleItemSelect
ref=
"sampleItemSelectModal"
is-change
@
on-result-change=
"_itemImportBack"
/>
<assignPerson
ref=
"userModal"
@
on-result-change=
"_userResult"
></assignPerson>
<SampleItemRemove
ref=
"sampleItemRemove"
@
on-result-change =
'_removeItemBack'
></SampleItemRemove>
<SampleItemEdit
ref=
"sampleItemEdit"
@
on-result-change =
'_removeItemBack'
></SampleItemEdit>
...
...
@@ -315,10 +314,14 @@ export default {
_getLeaderList
:
async
function
()
{
const
result
=
await
soilSample
.
getUserList
()
if
(
result
)
{
this
.
projectLeaderData
=
result
.
records
for
(
let
i
=
0
;
i
<
result
.
records
.
length
;
i
++
)
{
console
.
log
(
'---records---'
,
result
.
records
[
i
])
result
.
records
[
i
].
realname
=
result
.
records
[
i
].
realname
+
result
.
records
[
i
].
mobile
this
.
projectLeaderName
.
push
(
result
.
records
[
i
].
realname
)
console
.
log
(
'---this.projectLeaderName--'
,
this
.
projectLeaderName
)
}
this
.
projectLeaderData
=
result
.
records
}
},
_projectLeaderChange
(
msg
,
data
)
{
...
...
@@ -850,18 +853,6 @@ export default {
this
.
formObj
.
tabulateDate
=
new
Date
(
formObj
.
tabulateDate
)
}
},
_showAddress
(
formObj
)
{
this
.
testedCityData
=
[]
if
(
formObj
.
province
!==
undefined
&&
formObj
.
city
!==
undefined
&&
formObj
.
county
!==
undefined
)
{
this
.
testedCityData
.
push
(
formObj
.
province
)
this
.
testedCityData
.
push
(
formObj
.
city
)
this
.
testedCityData
.
push
(
formObj
.
county
)
}
},
_getList
:
async
function
()
{
const
result
=
await
meterEntrust
.
pageList
()
const
list
=
[]
...
...
pages/meter-entrust/entrust-register/EntrustRegisterHis.vue
View file @
16bf0da5
...
...
@@ -82,6 +82,11 @@ export default {
type
:
'ios-clock'
,
id
:
''
,
name
:
'操作日志'
},
{
type
:
'md-trash'
,
id
:
''
,
name
:
'删除'
}
],
formObj
:
{
...
...
@@ -236,7 +241,7 @@ export default {
}
},
_delete
:
async
function
(
ids
)
{
const
result
=
await
soil
Aptitude
.
deleteById
(
ids
)
const
result
=
await
soil
Entrust
.
deleteById
(
ids
)
if
(
result
)
{
this
.
_formSearch
()
this
.
$Message
.
success
(
'删除成功!'
)
...
...
pages/meter-entrust/entrust-review/ReviewEntrust.vue
View file @
16bf0da5
...
...
@@ -59,6 +59,7 @@ import { soilEntrust } from '../../../api'
import
Operation
from
'../../../components/operation/Operation'
import
Reason
from
'../../../components/base/Reason'
import
SampleManage
from
'../SoilSampleManage'
import
global
from
'../../../api/config'
import
EntrustDetail
from
'./EntrustDetail'
export
default
{
components
:
{
Operation
,
Reason
,
EntrustDetail
,
SampleManage
},
...
...
@@ -79,6 +80,16 @@ export default {
type
:
'success'
,
id
:
''
,
name
:
'驳回'
},
{
type
:
'success'
,
id
:
''
,
name
:
'导出标书合同(协议)评审表模板'
},
{
type
:
'success'
,
id
:
''
,
name
:
'导出标书合同(协议)补充单模板'
}
],
iconMsg
:
[
...
...
@@ -157,12 +168,47 @@ export default {
case
'通过'
:
this
.
_passReview
()
break
case
'导出标书合同(协议)评审表模板'
:
this
.
_exportTemplate
()
break
case
'导出标书合同(协议)补充单模板'
:
this
.
_exportTemplatePlus
()
break
case
'search'
:
this
.
searchOpen
=
!
this
.
searchOpen
break
}
})
},
_exportTemplate
()
{
const
data
=
{
downloadUrl
:
'/soil/v1/excel/template_soil/TenderContractEvaluationForm.docx'
}
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定要导出该模板?'
,
onOk
:
()
=>
{
this
.
_download
(
data
)
}
})
},
_exportTemplatePlus
()
{
const
data
=
{
downloadUrl
:
'/soil/v1/excel/template_soil/TenderContractSupplement.docx'
}
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定要导出该模板?'
,
onOk
:
()
=>
{
this
.
_download
(
data
)
}
})
},
_download
(
data
)
{
window
.
open
(
global
.
baseURL
+
data
.
downloadUrl
,
'_blank'
)
},
_goBack
()
{
// 退回
if
(
this
.
selectIds
.
length
===
0
)
{
...
...
pages/soil-alone-sample-instock/EntrustRegister.vue
View file @
16bf0da5
...
...
@@ -250,7 +250,7 @@ export default {
},
_uploadPhoto
(
data
)
{
// 上传照片文件
this
.
currentComponent
=
'
Photo
Manage'
this
.
currentComponent
=
'
File
Manage'
this
.
$nextTick
(()
=>
{
this
.
$refs
.
refModal
.
_open
(
data
.
id
,
'aloneSampleId'
)
})
...
...
@@ -393,7 +393,7 @@ export default {
}
},
_getDetailById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
refModal
.
_open
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
@@ -409,7 +409,7 @@ export default {
})
},
_getById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
refModal
.
_openEdit
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
pages/soil-alone-sample-instock/EntrustRegisterHis.vue
View file @
16bf0da5
...
...
@@ -89,6 +89,11 @@ export default {
type
:
'ios-clock'
,
id
:
''
,
name
:
'操作日志'
},
{
type
:
'md-trash'
,
id
:
''
,
name
:
'删除'
}
],
formObj
:
{
...
...
@@ -183,7 +188,7 @@ export default {
}
},
_getDetailById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
refModal
.
_open
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
@@ -270,7 +275,7 @@ export default {
}
},
_delete
:
async
function
(
ids
)
{
const
result
=
await
soil
Aptitude
.
deleteById
(
ids
)
const
result
=
await
soil
Entrust
.
aloneSampleDelete
(
ids
)
if
(
result
)
{
this
.
_formSearch
()
this
.
$Message
.
success
(
'删除成功!'
)
...
...
pages/soil-alone-sample-instock/ViewDetail.vue
View file @
16bf0da5
...
...
@@ -31,6 +31,23 @@
<th>
登记日期
</th>
<td>
{{
$dateformat
(
obj
.
registTime
,
'yyyy-mm-dd'
)
}}
</td>
</tr>
<tr>
<th>
库房号
</th>
<td>
{{
obj
.
storehouse
}}
</td>
<th>
货架号
</th>
<td>
{{
obj
.
shelfCode
}}
</td>
</tr>
<tr>
<th>
入库人
</th>
<td>
{{
obj
.
inStocker
}}
</td>
<th>
入库时间
</th>
<td>
{{
$dateformat
(
obj
.
instockTime
,
'yyyy-mm-dd'
)
}}
</td>
</tr>
<tr>
<th>
留存有效期
</th>
<td>
{{
$dateformat
(
obj
.
keepLimitTime
,
'yyyy-mm-dd'
)
}}
</td>
</tr>
</tbody>
</table>
</div>
...
...
@@ -69,7 +86,7 @@ export default {
}
else
{
this
.
showMoney
=
false
}
this
.
height
=
'
2
20px'
this
.
height
=
'
3
20px'
}
}
}
...
...
pages/soil-alone-sample-manage/soil-alone-sample-outstock/EntrustRegister.vue
View file @
16bf0da5
...
...
@@ -381,7 +381,7 @@ export default {
}
},
_getDetailById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
refModal
.
_open
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
@@ -397,7 +397,7 @@ export default {
})
},
_getById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
refModal
.
_openEdit
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
pages/soil-alone-sample-manage/soil-alone-sample-outstock/EntrustRegisterHis.vue
View file @
16bf0da5
...
...
@@ -84,6 +84,11 @@ export default {
type
:
'ios-clock'
,
id
:
''
,
name
:
'操作日志'
},
{
type
:
'md-trash'
,
id
:
''
,
name
:
'删除'
}
],
formObj
:
{
...
...
@@ -172,7 +177,7 @@ export default {
}
},
_getDetailById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
refModal
.
_open
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
@@ -257,7 +262,7 @@ export default {
}
},
_delete
:
async
function
(
ids
)
{
const
result
=
await
soil
Aptitude
.
deleteById
(
ids
)
const
result
=
await
soil
Entrust
.
aloneSampleDelete
(
ids
)
if
(
result
)
{
this
.
_formSearch
()
this
.
$Message
.
success
(
'删除成功!'
)
...
...
pages/soil-alone-sample-manage/soil-alone-sample-outstock/ViewDetail.vue
View file @
16bf0da5
...
...
@@ -31,6 +31,34 @@
<th>
登记日期
</th>
<td>
{{
$dateformat
(
obj
.
registTime
,
'yyyy-mm-dd'
)
}}
</td>
</tr>
<tr>
<th>
库房号
</th>
<td>
{{
obj
.
storehouse
}}
</td>
<th>
货架号
</th>
<td>
{{
obj
.
shelfCode
}}
</td>
</tr>
<tr>
<th>
入库人
</th>
<td>
{{
obj
.
inStocker
}}
</td>
<th>
入库时间
</th>
<td>
{{
$dateformat
(
obj
.
instockTime
,
'yyyy-mm-dd'
)
}}
</td>
</tr>
<tr>
<th>
留存有效期
</th>
<td>
{{
$dateformat
(
obj
.
keepLimitTime
,
'yyyy-mm-dd'
)
}}
</td>
<th>
出库人
</th>
<td>
{{
obj
.
outStocker
}}
</td>
</tr>
<tr>
<th>
出库时间
</th>
<td>
{{
$dateformat
(
obj
.
outStock
,
'yyyy-mm-dd'
)
}}
</td>
<th>
出库接收人
</th>
<td>
{{
obj
.
outStockReceiver
}}
</td>
</tr>
</tbody>
</table>
</div>
...
...
pages/soil-alone-sample-manage/storehouse-sample-manage/AddressManage.vue
View file @
16bf0da5
...
...
@@ -249,7 +249,7 @@ export default {
}
},
_getDetailById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
viewDetail
.
_open
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
@@ -273,7 +273,7 @@ export default {
}
},
_getById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
editModal
.
_openEdit
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
pages/soil-alone-sample-manage/storehouse-sample-manage/AddressManageHis.vue
View file @
16bf0da5
...
...
@@ -260,7 +260,7 @@ export default {
}
},
_getDetailById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
viewDetail
.
_open
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
@@ -284,7 +284,7 @@ export default {
}
},
_getById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
editModal
.
_openEdit
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
pages/soil-alone-sample/EntrustRegister.vue
View file @
16bf0da5
...
...
@@ -364,7 +364,7 @@ export default {
}
},
_getDetailById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
refModal
.
_open
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
@@ -380,7 +380,7 @@ export default {
})
},
_getById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
refModal
.
_openEdit
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
pages/soil-alone-sample/EntrustRegisterHis.vue
View file @
16bf0da5
...
...
@@ -84,6 +84,11 @@ export default {
type
:
'ios-clock'
,
id
:
''
,
name
:
'操作日志'
},
{
type
:
'md-trash'
,
id
:
''
,
name
:
'删除'
}
],
formObj
:
{
...
...
@@ -172,7 +177,7 @@ export default {
}
},
_getDetailById
:
async
function
(
id
)
{
const
result
=
await
soilEntrust
.
aloneSampleGet
ById
(
id
)
const
result
=
await
soilEntrust
.
getAloneVO
ById
(
id
)
if
(
result
)
{
this
.
$refs
.
refModal
.
_open
(
result
)
this
.
$refs
.
pageTable
.
_hideLoading
()
...
...
@@ -259,10 +264,11 @@ export default {
}
},
_delete
:
async
function
(
ids
)
{
const
result
=
await
soil
Aptitude
.
deleteById
(
ids
)
const
result
=
await
soil
Entrust
.
aloneSampleDelete
(
ids
)
(
ids
)
if
(
result
)
{
this
.
_formSearch
()
this
.
$Message
.
success
(
'删除成功!'
)
this
.
_page
()
}
}
}
...
...
pages/soil-alone-sample/ViewDetail.vue
View file @
16bf0da5
...
...
@@ -31,6 +31,24 @@
<th>
登记日期
</th>
<td>
{{
$dateformat
(
obj
.
registTime
,
'yyyy-mm-dd'
)
}}
</td>
</tr>
<tr>
<th>
库房号
</th>
<td>
{{
obj
.
storehouse
}}
</td>
<th>
货架号
</th>
<td>
{{
obj
.
shelfCode
}}
</td>
</tr>
<tr>
<th>
入库人
</th>
<td>
{{
obj
.
inStocker
}}
</td>
<th>
入库时间
</th>
<td>
{{
$dateformat
(
obj
.
instockTime
,
'yyyy-mm-dd'
)
}}
</td>
</tr>
<tr>
<th>
留存有效期
</th>
<td>
{{
$dateformat
(
obj
.
keepLimitTime
,
'yyyy-mm-dd'
)
}}
</td>
</tr>
</tbody>
</table>
</div>
...
...
@@ -68,7 +86,7 @@ export default {
}
else
{
this
.
showMoney
=
false
}
this
.
height
=
'
25
0px'
this
.
height
=
'
39
0px'
}
}
}
...
...
pages/soil-sample-manage/open-soil-template-manage/ConfigTemplate.vue
0 → 100644
View file @
16bf0da5
<
template
>
<div>
<Modal
v-model=
"showModal"
width=
"1000"
class=
"modal-footer-none"
>
<div
slot=
"header"
>
{{
modalTitle
}}
</div>
<div>
<Form
id=
"index-right-form"
:label-width=
"80"
inline
onsubmit=
"return false"
>
<label
class=
"label-sign"
></label>
<Form-item
class=
"search-item"
label=
"属性名称:"
>
<Input
v-model=
"formObj.attributeName"
@
on-enter=
"_formSearch"
placeholder=
"请输入属性名称"
clearable
/>
</Form-item>
<Form-item
class=
"search-btn"
>
<Button
@
click=
"_formSearch"
type=
"primary"
>
搜索
</Button>
</Form-item>
</Form>
<btn-list
:msg=
"btn"
@
on-result-change=
"_btnClick"
class=
"contHide"
style=
"margin-bottom: 10px;"
/>
<PTVXETable
ref=
"pageTable"
:tableHeight=
"tableHeight"
@
on-result-change=
"_tableResultChange"
:getPage=
"getPage"
:iconMsg=
"iconMsg"
>
<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"
>
<template
slot-scope=
"scope"
>
<span
v-if=
"item.key==='defaulted'"
>
{{
scope
.
row
[
item
.
key
]?
'是'
:
'否'
}}
</span>
<span
v-else-if=
"item.key==='itemed'"
>
{{
scope
.
row
[
item
.
key
]
===
1
?
'是'
:
'否'
}}
</span>
<span
v-else
>
{{
scope
.
row
[
item
.
key
]
}}
</span>
</
template
>
</vxe-table-column>
</PTVXETable>
</div>
</Modal>
<ConfigTemplateEdit
ref=
"indexEdit"
@
on-result-change=
"_page"
></ConfigTemplateEdit>
</div>
</template>
<
script
>
import
{
soilAptitude
}
from
'../../../api'
import
ConfigTemplateEdit
from
'./ConfigTemplateEdit'
export
default
{
components
:
{
ConfigTemplateEdit
},
data
()
{
return
{
id
:
''
,
modalTitle
:
''
,
showModal
:
false
,
btn
:
[
{
type
:
'success'
,
id
:
''
,
name
:
'添加配置'
},
{
type
:
'error'
,
id
:
''
,
name
:
'删除'
}
],
tableHeight
:
document
.
documentElement
.
clientHeight
-
180
,
pageColumns
:
[
{
title
:
'属性名称'
,
key
:
'attributeName'
},
{
title
:
'属性'
,
key
:
'dataAttribute'
,
width
:
120
},
{
title
:
'公式配置'
,
key
:
'formula'
,
width
:
120
},
{
title
:
'是否是项目指标'
,
key
:
'itemed'
,
width
:
120
},
{
title
:
'列位置'
,
key
:
'columnPlace'
,
width
:
120
},
{
title
:
'合并开始列'
,
key
:
'mergeBegin'
,
width
:
120
},
{
title
:
'合并结束列'
,
key
:
'mergeEnd'
,
width
:
120
},
{
title
:
'合并行数'
,
key
:
'mergeRowNum'
,
width
:
120
},
{
title
:
'单位'
,
key
:
'unit'
,
width
:
120
}
],
getPage
:
{},
iconMsg
:
[{
type
:
'md-create'
,
id
:
''
,
name
:
'编辑'
}],
selectIds
:
[],
formObj
:
{
attributeName
:
undefined
,
templateId
:
undefined
},
// 资质信息
aptitudeItemInfo
:
{}
}
},
methods
:
{
_open
(
data
)
{
console
.
log
(
data
)
this
.
aptitudeItemInfo
=
data
this
.
formObj
=
this
.
$resetFields
(
this
.
formObj
)
this
.
formObj
.
templateId
=
data
.
id
this
.
id
=
data
.
id
this
.
modalTitle
=
data
.
name
+
' 指标管理'
this
.
showModal
=
true
this
.
_page
()
},
_page
:
async
function
()
{
Object
.
assign
(
this
.
formObj
,
this
.
$refs
.
pageTable
.
_searchParams
())
const
result
=
await
soilAptitude
.
originalTemplateConfig
(
this
.
$serializeForm
(
this
.
formObj
)
)
if
(
result
)
{
console
.
log
(
result
)
this
.
getPage
=
result
this
.
$refs
.
pageTable
.
_hideLoading
()
}
},
_formSearch
()
{
this
.
$refs
.
pageTable
.
_pageChange
(
1
)
},
_tableResultChange
(
msg
,
data
)
{
switch
(
msg
)
{
case
'page'
:
break
case
'selectIds'
:
this
.
selectIds
=
data
break
case
'iconClick'
:
this
.
_iconClick
(
data
.
name
,
data
.
rowData
)
break
case
'changeSize'
:
this
.
_page
()
break
}
},
_iconClick
(
res
,
data
)
{
switch
(
res
)
{
case
'编辑'
:
this
.
_editModal
(
true
,
data
)
break
}
},
_editModal
(
edit
,
data
)
{
if
(
edit
)
{
this
.
_getById
(
data
)
}
else
{
this
.
$refs
.
indexEdit
.
_open
(
this
.
id
,
''
)
}
},
_getById
:
async
function
(
data
)
{
const
result
=
await
soilAptitude
.
getOriginalTemplateConfig
(
data
.
id
)
console
.
log
(
result
)
if
(
result
)
{
this
.
$refs
.
indexEdit
.
_open
(
''
,
result
)
}
},
_btnClick
(
msg
)
{
switch
(
msg
)
{
case
'添加配置'
:
this
.
_editModal
(
false
)
break
case
'删除'
:
this
.
_deleteByIds
()
break
}
},
_deleteByIds
()
{
if
(
this
.
selectIds
.
length
===
0
)
{
// this.$msgTip('warning')
this
.
$message
.
warning
(
'请至少选择一条记录'
)
}
else
{
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定删除 '
+
this
.
selectIds
.
length
+
' 条记录?'
,
onOk
:
()
=>
{
this
.
_delOk
(
this
.
selectIds
)
}
})
}
},
_delOk
:
async
function
(
ids
)
{
const
result
=
await
soilAptitude
.
deleteOriginalTemplateConfig
(
ids
)
if
(
result
)
{
this
.
$Message
.
success
(
'删除成功'
)
this
.
_page
()
}
}
}
}
</
script
>
pages/soil-sample-manage/open-soil-template-manage/ConfigTemplateEdit.vue
0 → 100644
View file @
16bf0da5
<
template
>
<div>
<Modal
v-model=
"showModal"
:mask-closable=
"false"
@
on-visible-change=
"_visibleChange"
width=
"900"
>
<p
slot=
"header"
>
{{
modalTitle
}}
</p>
<div>
<Form
ref=
"formObj"
:id=
"formId"
:model=
"formObj"
:rules=
"ruleValidate"
:label-width=
"100"
inline
>
<div>
<Form-item
label=
"属性名称"
prop=
"attributeName"
class=
"width-48"
>
<Input
v-model=
"formObj.attributeName"
name=
"attributeName"
placeholder=
"请输入属性名称"
/>
</Form-item>
<Form-item
label=
"属性"
prop=
"dataAttribute"
class=
"width-48"
>
<Input
v-model=
"formObj.dataAttribute"
name=
"dataAttribute"
placeholder=
"请输入属性"
/>
</Form-item>
<Form-item
label=
"公式配置"
prop=
"formula"
class=
"width-48"
>
<Input
v-model=
"formObj.formula"
name=
"formula"
placeholder=
"请输入公式配置"
/>
</Form-item>
<Form-item
label=
"列位置"
prop=
"columnPlace"
class=
"width-48"
>
<Input
v-model=
"formObj.columnPlace"
@
keydown
.
native=
"channelInputLimit"
name=
"columnPlace"
type=
"number"
onmousewheel=
"return false"
placeholder=
"请输入列位置"
></Input>
</Form-item>
<Form-item
label=
"合并开始列"
prop=
"mergeBegin"
class=
"width-48"
>
<Input
v-model=
"formObj.mergeBegin"
@
keydown
.
native=
"channelInputLimit"
name=
"mergeBegin"
type=
"number"
onmousewheel=
"return false"
placeholder=
"请输入合并开始列"
/>
</Form-item>
<Form-item
label=
"合并结束列"
prop=
"mergeEnd"
class=
"width-48"
>
<Input
v-model=
"formObj.mergeEnd"
@
keydown
.
native=
"channelInputLimit"
name=
"mergeEnd"
type=
"number"
onmousewheel=
"return false"
placeholder=
"请输入合并结束列"
/>
</Form-item>
<Form-item
label=
"合并行数"
prop=
"mergeRowNum"
class=
"width-48"
>
<Input
v-model=
"formObj.mergeRowNum"
@
keydown
.
native=
"channelInputLimit"
name=
"mergeRowNum"
type=
"number"
onmousewheel=
"return false"
placeholder=
"请输入合并行数"
/>
</Form-item>
<Form-item
label=
"是否是项目指标"
prop=
"itemed"
class=
"width-48"
>
<Select
v-model=
"formObj.itemed"
@
change=
"_optionChange"
placeholder=
"请选择"
>
<Option
v-for=
"(item,index) in options"
:key=
"index"
:label=
"item.value"
:value=
"index"
/>
</Select>
</Form-item>
<Form-item
label=
"单位"
prop=
"unit"
class=
"width-48"
>
<Input
v-model=
"formObj.unit"
name=
"unit"
placeholder=
"请输入单位"
/>
</Form-item>
</div>
</Form>
</div>
<div
slot=
"footer"
>
<modal-footer
ref=
"footerModal"
@
on-result-change=
"_footerResult"
:footer=
"footerList"
></modal-footer>
</div>
</Modal>
</div>
</
template
>
<
script
>
/**
* 添加编辑环境资质项目表
*/
import
{
soilAptitude
}
from
'../../../api'
export
default
{
components
:
{},
data
()
{
return
{
activeName
:
''
,
hideUserSel
:
true
,
id
:
''
,
modalTitle
:
''
,
templateId
:
''
,
formObj
:
{
attributeName
:
undefined
,
formula
:
undefined
,
columnPlace
:
''
,
unit
:
undefined
,
status
:
undefined
,
mainType
:
undefined
,
smallType
:
undefined
,
testValue
:
undefined
,
mergeBegin
:
''
,
mergeRowNum
:
''
,
mergeEnd
:
''
,
itemed
:
undefined
},
options
:
[
{
label
:
'否'
,
value
:
'否'
},
{
label
:
'是'
,
value
:
'是'
}
],
ruleValidate
:
{
name
:
[{
required
:
true
,
message
:
'指标名称不能为空'
,
trigger
:
'blur'
}]
},
showModal
:
false
,
footerList
:
[
{
name
:
'取消'
,
type
:
''
},
{
name
:
'保存'
,
type
:
'primary'
}
],
microbedList
:
[{
value
:
0
,
name
:
'否'
},
{
value
:
1
,
name
:
'是'
}],
// 检测依据
testBasisData
:
[],
// 类别下拉数组
typeData
:
[],
// 检测科室
groupData
:
[],
groupName
:
''
,
// 主检人
userData
:
[],
// 单位
unitData
:
[],
aptitudeData
:
[],
aptitude
:
''
,
// testBasisName: '',
computeTypeList
:
[],
tester
:
''
,
marksList
:
[],
detectionTypeList
:
[],
testItemData
:
[],
formId
:
''
}
},
mounted
()
{
// 检测科室
// this._getUserGroup()
// 检测依据
// this._getTestBasisList()
// 资质
// this._getAptitudeList()
// this._getType()
},
methods
:
{
channelInputLimit
(
e
)
{
const
key
=
e
.
key
// 不允许输入'e'和'.'
if
(
key
===
'e'
||
key
===
'.'
)
{
e
.
returnValue
=
false
return
false
}
return
true
},
inputChange
(
data
)
{
console
.
log
(
'data>>>'
,
data
)
console
.
log
(
'formObj>>>'
,
this
.
formObj
)
},
_selectJudgeType
(
data
)
{
this
.
formObj
.
microbed
=
data
},
_footerResult
(
name
)
{
switch
(
name
)
{
case
'取消'
:
this
.
_cancel
()
break
case
'保存'
:
this
.
_ok
()
break
}
},
_hideLoading
()
{
this
.
$refs
.
footerModal
.
_hideLoading
()
},
_open
(
id
,
formObj
)
{
this
.
formId
=
'edit-form-template-config'
this
.
_hideLoading
()
this
.
$refs
.
formObj
.
resetFields
()
if
(
this
.
$string
(
formObj
).
isEmpty
())
{
this
.
id
=
''
this
.
templateId
=
id
this
.
modalTitle
=
'添加模板配置'
console
.
log
(
'formObj>>>'
,
this
.
formObj
)
}
else
{
this
.
hideUserSel
=
true
this
.
id
=
formObj
.
id
this
.
formObj
=
formObj
this
.
modalTitle
=
'编辑模板配置'
console
.
log
(
'formObj>>>'
,
this
.
formObj
)
}
this
.
showModal
=
true
},
// 获取表数据
_resultChange
(
msg
)
{
this
.
showModal
=
false
this
.
$refs
.
footerModal
.
_hideLoading
()
this
.
$Message
.
success
(
msg
)
this
.
$emit
(
'on-result-change'
)
this
.
$refs
.
footerModal
.
_hideLoading
()
},
_optionChange
(
data
)
{
this
.
formObj
.
itemed
=
data
console
.
log
(
this
.
formObj
.
itemed
)
},
_ok
()
{
this
.
$refs
.
formObj
.
validate
(
valid
=>
{
if
(
valid
)
{
const
data
=
this
.
$serialize
(
'edit-form-template-config'
)
if
(
this
.
$string
(
this
.
id
).
isEmpty
())
{
data
.
templateId
=
this
.
templateId
data
.
itemed
=
this
.
formObj
.
itemed
// 添加
this
.
_save
(
data
)
}
else
{
// 编辑
data
.
itemed
=
this
.
formObj
.
itemed
this
.
_edit
({
id
:
this
.
formObj
.
id
,
obj
:
data
})
}
}
else
{
this
.
$refs
.
footerModal
.
_hideLoading
()
this
.
$Message
.
error
(
'表单验证失败!'
)
}
})
},
_save
:
async
function
(
data
)
{
console
.
log
(
data
)
const
result
=
await
soilAptitude
.
saveOriginalTemplateConfig
(
data
)
console
.
log
(
result
)
if
(
result
)
{
this
.
_resultChange
(
'添加成功!'
)
}
},
_edit
:
async
function
(
data
)
{
const
result
=
await
soilAptitude
.
editOriginalTemplateConfig
(
data
)
if
(
result
)
{
this
.
_resultChange
(
'编辑成功!'
)
}
},
_cancel
()
{
this
.
showModal
=
false
this
.
_hideLoading
()
},
_visibleChange
(
data
)
{
if
(
!
data
&&
this
.
$showBtn
(
'food-aptitude-item-step-edit'
))
{
this
.
$emit
(
'on-result-change'
)
this
.
$refs
.
testStepByAptitude
.
_clear
()
}
}
}
}
</
script
>
pages/soil-sample-manage/open-soil-template-manage/OpenSoilTemplate.vue
0 → 100644
View file @
16bf0da5
<
template
>
<div>
<!--内容-->
<div
class=
"layout-content-padding marginLeft-10"
>
<div
class=
"layout-content-main tree-position"
>
<div
class=
"position-right"
>
<Row>
<!--查询-->
<Col
span=
"24"
>
<Form
id=
"search-form"
v-show=
"searchOpen"
:label-width=
"80"
inline
onsubmit=
"return false"
>
<label
class=
"label-sign"
></label>
<Form-item
class=
"search-item"
label=
"模板名称:"
>
<Input
v-model=
"formObj.name"
@
on-enter=
"_formSearch"
name=
"name"
placeholder=
"请输入模板名称"
clearable
></Input>
<input
type=
"hidden"
name=
"classifyId"
>
</Form-item>
<Form-item
class=
"search-btn"
>
<Button
@
click=
"_formSearch"
type=
"primary"
>
搜索
</Button>
</Form-item>
</Form>
</Col>
<!--操作-->
<Col
span=
"24"
>
<btn-list
:msg=
"btn"
:open=
"searchOpen"
:show-search-btn=
"true"
@
on-result-change=
"_btnClick"
></btn-list>
</Col>
<!-- 表格 -->
<Col
span=
"24"
>
<PTVXETable
ref=
"pageTable"
:page-columns=
"pageColumns"
:get-page=
"getPage"
:opt-col-width=
"120"
:icon-msg=
"iconMsg"
@
on-result-change=
"_tableResultChange"
>
<vxe-table-column
v-for=
"item in pageColumns"
:key=
"item.key"
:field=
"item.key"
:title=
"item.title"
:min-width=
"item.width?item.width:200"
:fixed=
"item.fixed?item.fixed:undefined"
sortable
>
<template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
[
item
.
key
]
}}
</span>
</
template
>
</vxe-table-column>
</PTVXETable>
</Col>
</Row>
</div>
</div>
</div>
<!-- 添加、编辑 -->
<SoilRecordTemplateEdit
ref=
"editModal"
@
on-result-change=
"_search"
></SoilRecordTemplateEdit>
<SoilRecordEdit
ref=
"reportEdit"
@
on-result-change=
"_search"
></SoilRecordEdit>
<ConfigTemplate
ref=
"configTemplateModal"
@
on-result-change=
"_page"
></ConfigTemplate>
</div>
</template>
<
script
>
import
global
from
'../../../api/config'
import
{
soilAptitude
}
from
'../../../api'
import
SoilRecordTemplateEdit
from
'./OpenSoilTemplateEdit'
import
SoilRecordEdit
from
'./SoilRecordEdit'
import
ConfigTemplate
from
'./ConfigTemplate'
export
default
{
components
:
{
SoilRecordTemplateEdit
,
SoilRecordEdit
,
ConfigTemplate
},
data
()
{
return
{
pageColumns
:
[
{
title
:
'开土记录模板名称'
,
key
:
'name'
},
{
title
:
'类别'
,
key
:
'classType'
,
width
:
120
},
{
title
:
'样品开始行'
,
key
:
'sampleBeginRow'
,
width
:
120
},
{
title
:
'样品合并数'
,
key
:
'sampleMergerNum'
,
width
:
120
},
{
title
:
'模板样品数'
,
key
:
'templateSampleNum'
,
width
:
120
},
{
title
:
'备注'
,
key
:
'remark'
}
],
formObj
:
{
name
:
undefined
},
iconMsg
:
[
{
type
:
'md-create'
,
id
:
''
,
name
:
'编辑'
},
{
type
:
'ios-build-outline'
,
id
:
''
,
name
:
'配置'
},
{
type
:
'ios-book'
,
id
:
''
,
name
:
'预览/编辑'
},
// { type: 'ios-download', id: '', name: '下载' },
{
type
:
'md-remove-circle'
,
id
:
''
,
name
:
'删除'
}
],
getPage
:
{},
tableStyleObj
:
{},
btn
:
[
{
type
:
'success'
,
id
:
''
,
name
:
'添加'
},
{
type
:
'error'
,
id
:
''
,
name
:
'删除'
}
],
searchOpen
:
true
,
selectIds
:
[]
}
},
computed
:
{
// tableHeight: function() {
// if (this.searchOpen) {
// return this.$newTableHeight('search')
// } else {
// return this.$newTableHeight('noSearch')
// }
// }
},
mounted
()
{
this
.
_page
()
},
methods
:
{
_btnClick
(
msg
)
{
switch
(
msg
)
{
case
'添加'
:
this
.
_editModal
()
break
case
'删除'
:
this
.
_delAll
()
break
case
'search'
:
this
.
searchOpen
=
!
this
.
searchOpen
break
}
},
_refresh
()
{
// 刷新
this
.
id
=
''
this
.
name
=
''
this
.
_search
()
this
.
_classTree
()
},
_classData
(
result
,
msg
)
{
$
(
'input[name=classifyId]'
).
val
(
result
)
this
.
_formSearch
()
},
_classTree
()
{
this
.
$refs
.
classTree
.
_Ztree
()
},
_treeHide
()
{
// 左侧树隐藏
this
.
isTree
=
false
this
.
tableStyleObj
.
marginLeft
=
'15px'
},
_treeShow
()
{
this
.
isTree
=
true
this
.
tableStyleObj
.
marginLeft
=
'215px'
},
_iconClick
(
res
,
data
)
{
switch
(
res
)
{
case
'编辑'
:
this
.
_reportEdit
(
data
)
break
case
'下载'
:
this
.
_download
(
data
.
id
)
break
case
'预览/编辑'
:
this
.
_lookReport
(
data
)
break
case
'配置'
:
this
.
_configData
(
data
)
break
case
'删除'
:
this
.
_deleteByIds
([
data
.
id
])
break
}
},
_configData
(
data
)
{
this
.
$refs
.
configTemplateModal
.
_open
(
data
)
},
_lookReport
:
async
function
(
data
)
{
const
result
=
await
soilAptitude
.
originalTemplateGetById
(
data
.
id
)
if
(
result
)
{
this
.
_viewReport
(
result
)
}
},
_viewReport
(
data
)
{
console
.
log
(
'getUserInfo'
,
global
.
getUserInfo
())
// window.open(global.baseURL + '/print/v1/oos?key=' + objectKey+'&edit=true', '', 'height=' + (screen.availHeight - 50) + ',' +
// 'width=' + (screen.availWidth - 10) + ',top=0,left=0,toolbar=no,menubar=no,scrollbars=auto,resizeable=no,' +
// 'location=no,status=no')
if
(
data
)
{
this
.
$openWindowModeless
({
objectKey
:
data
.
objectKey
,
id
:
data
.
id
,
idType
:
12
,
isReport
:
4
})
}
},
_contHide
()
{
this
.
_page
()
},
_page
:
async
function
()
{
console
.
log
(
'page'
)
Object
.
assign
(
this
.
formObj
,
this
.
$refs
.
pageTable
.
_searchParams
())
const
result
=
await
soilAptitude
.
pageOpenSoil
(
this
.
formObj
)
if
(
result
)
{
this
.
$refs
.
pageTable
.
_hideLoading
()
this
.
getPage
=
result
}
},
_formSearch
()
{
this
.
$refs
.
pageTable
.
_pageChange
(
1
)
},
_editModal
()
{
this
.
$refs
.
editModal
.
_open
()
},
_reportEdit
(
data
)
{
this
.
$refs
.
reportEdit
.
_open
(
data
)
},
// 批量删除
_delAll
()
{
const
ids
=
this
.
selectIds
if
(
ids
.
length
===
0
)
{
this
.
$Message
.
warning
(
'请至少选择一条数据!'
)
}
else
{
this
.
_deleteByIds
(
ids
)
}
},
// 删除
_deleteByIds
(
ids
,
content
)
{
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
content
||
'确定删除该记录?'
,
onOk
:
()
=>
{
this
.
_delete
(
ids
)
}
})
},
_delete
:
async
function
(
ids
)
{
const
result
=
await
soilAptitude
.
originalTemplateDeleteById
(
ids
)
if
(
result
)
{
this
.
_formSearch
()
this
.
$Message
.
success
(
'删除成功!'
)
}
},
_download
(
id
)
{
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定要下载?'
,
onOk
:
()
=>
{
window
.
open
(
global
.
baseURL
+
'/base/v1/file_template/download/'
+
id
,
'_blank'
)
}
})
},
_search
()
{
this
.
_page
()
},
_tableResultChange
(
msg
,
data
)
{
switch
(
msg
)
{
case
'page'
:
// this.getPage = this.$store.state.SysFileTemplate.page
break
case
'selectIds'
:
this
.
selectIds
=
data
break
case
'iconClick'
:
this
.
_iconClick
(
data
.
name
,
data
.
rowData
)
break
case
'changeSize'
:
this
.
_page
()
break
}
}
}
}
</
script
>
pages/soil-sample-manage/open-soil-template-manage/OpenSoilTemplateEdit.vue
0 → 100644
View file @
16bf0da5
<
template
>
<div>
<Modal
v-model=
"showEditModal"
:mask-closable=
"false"
>
<p
slot=
"header"
>
{{
modalTitle
}}
</p>
<div
v-show=
"isLoad"
>
<Spin
fix
>
<Icon
type=
"load-c"
size=
18
class=
"file-spin-icon-load"
></Icon>
<div>
正在上传,请稍后...
</div>
</Spin>
</div>
<div>
<Form
id=
"edit-form"
ref=
"formObj"
:model=
"formObj"
:rules=
"ruleValidate"
:label-width=
"95"
>
<Form-item
label=
"类别"
prop=
"classType"
>
<el-select
v-model=
"formObj.classType"
placeholder=
"请选择类别"
size=
"small"
clearable
>
<el-option
:label=
"item.value"
:value=
"item.value"
v-for=
"(item,index) in typeList"
:key=
"index"
></el-option>
</el-select>
</Form-item>
<Form-item
label=
"开土制备记录模板名称"
prop=
"name"
>
<Input
v-model=
"formObj.name"
@
on-keyup=
"_onKeyUp"
name=
"name"
placeholder=
"请输入原始记录名称"
></Input>
</Form-item>
<Form-item
label=
"备注"
prop=
"remark"
>
<Input
v-model=
"formObj.remark"
@
on-keyup=
"_onKeyUp"
name=
"remark"
placeholder=
"请输入备注"
></Input>
</Form-item>
</Form>
</div>
<div
slot=
"footer"
class=
"btn-width clearfix"
>
<Button
@
click=
"_cancel"
style=
"margin-left: 8px;"
>
取消
</Button>
<label
style=
"margin-bottom: 0;float: right"
>
<Upload
:action=
"action"
:on-success=
"_handelsuccess"
:before-upload=
"_beupload"
:on-progress=
"_handelprogress"
:on-format-error=
"_formatError"
:data=
"dataObj"
:with-credentials=
"true"
:show-upload-list=
"false"
:format=
"format"
>
<Button
:disabled=
"isDisable"
type=
"primary"
>
导入文件
</Button>
</Upload>
</label>
</div>
</Modal>
</div>
</
template
>
<
script
>
/**
* 添加编辑
*/
import
global
from
'../../../api/config'
const
defVal
=
{
name
:
''
,
remark
:
''
,
classType
:
''
,
classifyId
:
0
}
export
default
{
// components: { LmsTemplateClassifyZTree },
data
()
{
return
{
modalTitle
:
'添加'
,
formObj
:
defVal
,
ruleValidate
:
{
name
:
[{
required
:
true
,
message
:
'名称不能为空'
,
trigger
:
'blur'
}],
classType
:
[
{
required
:
true
,
message
:
'类别不能为空'
,
trigger
:
'blur'
}
]
},
typeList
:
[
{
value
:
'开土制备模板'
}
],
showEditModal
:
false
,
dataObj
:
{
file
:
''
},
pname
:
''
,
action
:
''
,
isLoad
:
false
,
isDisable
:
true
,
format
:
[
'docx'
,
'xlsx'
,
'xls'
]
}
},
methods
:
{
_onKeyUp
()
{
if
(
this
.
formObj
.
name
===
''
||
this
.
formObj
.
classType
===
''
)
{
this
.
isDisable
=
true
}
else
{
this
.
isDisable
=
false
this
.
action
=
global
.
baseURL
+
'/soil/v1/original_template/upload_open_soil_template/?name='
+
this
.
formObj
.
name
+
'&remark='
+
this
.
formObj
.
remark
+
'&classType='
+
this
.
formObj
.
classType
}
},
_selectZtree
()
{
// this.$refs.ztreeModal._openZtree()
},
_cancel
()
{
this
.
showEditModal
=
false
},
_open
()
{
this
.
showEditModal
=
true
this
.
isLoad
=
false
this
.
formObj
.
name
=
''
this
.
formObj
.
alias
=
''
this
.
formObj
.
remark
=
''
this
.
formObj
.
classType
=
''
this
.
modalTitle
=
'添加开土制备模板'
},
_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
.
$emit
(
'on-result-change'
)
this
.
showEditModal
=
false
}
else
{
this
.
isLoad
=
true
this
.
$Message
.
error
(
response
.
msg
)
}
},
_formatError
(
file
)
{
this
.
$Notice
.
error
({
title
:
'文件格式不正确'
,
duration
:
10
,
desc
:
'文件 '
+
file
.
name
+
' 格式不正确,请上传格式为 docx、xlsx、xls 的文件!'
})
},
_ztree
(
result
)
{
this
.
pname
=
''
if
(
result
===
undefined
)
{
this
.
formObj
.
classifyId
=
'0'
this
.
pname
=
''
}
else
{
this
.
formObj
.
classifyId
=
result
.
id
this
.
pname
=
result
.
name
}
// 判断必填项是否为空
this
.
_onKeyUp
()
}
}
}
</
script
>
<
style
scoped
>
.clearfix
:after
{
content
:
''
;
clear
:
both
;
display
:
block
;
}
</
style
>
pages/soil-sample-manage/open-soil-template-manage/SoilRecordEdit.vue
0 → 100644
View file @
16bf0da5
<
template
>
<div>
<Modal
v-model=
"showEditModal"
:mask-closable=
"false"
>
<p
slot=
"header"
>
{{
modalTitle
}}
</p>
<div
v-show=
"isLoad"
>
<Spin
fix
>
<Icon
type=
"load-c"
size=
18
class=
"file-spin-icon-load"
></Icon>
<div>
正在上传,请稍后...
</div>
</Spin>
</div>
<div>
<Form
id=
"edit-form"
ref=
"formObj"
:model=
"formObj"
:rules=
"ruleValidate"
:label-width=
"95"
inline
class=
"inputBox"
>
<Form-item
label=
"类别"
prop=
"classType"
style=
"width: 100%"
>
<!--
<Input
v-model=
"formObj.classType"
@
on-keyup=
"_onKeyUp"
name=
"classType"
placeholder=
"请选择类别"
icon=
"plus-circled"
--
>
<!-- >
</Input>
-->
<el-select
v-model=
"formObj.classType"
placeholder=
"请选择类别"
size=
"small"
clearable
>
<el-option
:label=
"item.value"
:value=
"item.value"
v-for=
"(item,index) in typeList"
:key=
"index"
></el-option>
</el-select>
</Form-item>
<Form-item
label=
"原始记录名称"
prop=
"alias"
style=
"width: 100%"
>
<Input
v-model=
"formObj.alias"
name=
"alias"
placeholder=
"请输入原始记录名称"
></Input>
</Form-item>
<Form-item
label=
"备注"
prop=
"remark"
style=
"width: 100%"
>
<Input
v-model=
"formObj.remark"
name=
"remark"
placeholder=
"请输入备注"
></Input>
</Form-item>
<Form-item
label=
"样品开始行"
prop=
"sampleBeginRow"
style=
"width: 100%"
>
<el-input
v-model=
"formObj.sampleBeginRow"
@
keydown
.
native=
"channelInputLimit"
name=
"sampleBeginRow"
type=
"number"
onmousewheel=
"return false"
placeholder=
"请输入样品开始行"
/>
</Form-item>
<Form-item
label=
"样品合并数"
prop=
"sampleMergerNum"
style=
"width: 100%"
>
<el-input
v-model=
"formObj.sampleMergerNum"
@
keydown
.
native=
"channelInputLimit"
name=
"sampleMergerNum"
type=
"number"
onmousewheel=
"return false"
placeholder=
"请输入样品合并数"
/>
</Form-item>
<Form-item
label=
"模板样品数"
prop=
"templateSampleNum"
style=
"width: 100%"
>
<el-input
v-model=
"formObj.templateSampleNum"
@
keydown
.
native=
"channelInputLimit"
name=
"templateSampleNum"
type=
"number"
onmousewheel=
"return false"
placeholder=
"请输入模板样品数"
/>
</Form-item>
<Form-item
label=
"多sheet模板"
prop=
"moreSheet"
style=
"width: 100%"
>
<Radio-group
v-model=
"formObj.moreSheet"
>
<Radio
v-for=
"item in sheetType"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
name
}}
</Radio>
</Radio-group>
</Form-item>
</Form>
</div>
<div
slot=
"footer"
class=
"btn-width clearfix"
>
<Button
@
click=
"_cancel"
style=
"margin-left: 8px;"
>
取消
</Button>
<Button
@
click=
"_ok"
type=
"primary"
style=
"margin-bottom: 0;float: right"
>
保存
</Button>
</div>
</Modal>
</div>
</
template
>
<
script
>
/**
* 添加编辑
*/
import
{
soilAptitude
}
from
'../../../api'
const
defVal
=
{
alias
:
''
,
classType
:
''
,
remark
:
''
,
sampleBeginRow
:
''
,
sampleBeginCol
:
''
,
sampleMergerNum
:
''
,
templateSampleNum
:
''
,
moreSheet
:
0
,
classifyId
:
0
}
export
default
{
// components: { LmsTemplateClassifyZTree },
data
()
{
const
validatesampleBeginRow
=
(
rule
,
value
,
callback
)
=>
{
if
(
this
.
formObj
.
sampleBeginRow
===
''
)
{
callback
(
new
Error
(
'内容不能为空'
))
}
else
{
callback
()
}
}
const
validatesampleMergerNum
=
(
rule
,
value
,
callback
)
=>
{
if
(
this
.
formObj
.
sampleMergerNum
===
''
)
{
callback
(
new
Error
(
'内容不能为空'
))
}
else
{
callback
()
}
}
const
validatetemplateSampleNum
=
(
rule
,
value
,
callback
)
=>
{
if
(
this
.
formObj
.
templateSampleNum
===
''
)
{
callback
(
new
Error
(
'内容不能为空'
))
}
else
{
callback
()
}
}
const
validatesampleBeginCol
=
(
rule
,
value
,
callback
)
=>
{
if
(
this
.
formObj
.
sampleBeginCol
===
''
)
{
callback
(
new
Error
(
'内容不能为空'
))
}
else
{
callback
()
}
}
return
{
modalTitle
:
'编辑'
,
formObj
:
defVal
,
ruleValidate
:
{
alias
:
[
{
required
:
true
,
message
:
'模板名称不能为空'
,
trigger
:
'blur'
}
],
sampleBeginRow
:
[
{
required
:
true
,
validator
:
validatesampleBeginRow
,
message
:
'样品开始行不能为空'
,
trigger
:
'blur'
}
],
sampleBeginCol
:
[
{
required
:
true
,
validator
:
validatesampleBeginCol
,
message
:
'样品开始列不能为空'
,
trigger
:
'blur'
}
],
sampleMergerNum
:
[
{
required
:
true
,
validator
:
validatesampleMergerNum
,
message
:
'样品合并数不能为空'
,
trigger
:
'blur'
}
],
templateSampleNum
:
[
{
required
:
true
,
validator
:
validatetemplateSampleNum
,
message
:
'模板样品数不能为空'
,
trigger
:
'blur'
}
],
classType
:
[
{
required
:
true
,
message
:
'类别不能为空'
,
trigger
:
'blur'
}
]
},
sheetType
:
[{
value
:
1
,
name
:
'是'
},
{
value
:
0
,
name
:
'否'
}],
typeList
:
[
{
value
:
'力学'
},
{
value
:
'物性'
},
{
value
:
'高级'
}
],
id
:
''
,
showEditModal
:
false
,
dataObj
:
{
file
:
''
},
pname
:
''
,
action
:
''
,
isLoad
:
false
,
isDisable
:
true
,
format
:
[
'docx'
,
'xlsx'
,
'xls'
]
}
},
methods
:
{
_onKeyUp
()
{
if
(
this
.
formObj
.
alias
===
''
||
this
.
formObj
.
classType
===
''
)
{
this
.
isDisable
=
true
}
else
{
this
.
isDisable
=
false
this
.
action
=
global
.
baseURL
+
'/meter/v1/file_template/upload_template/?classType='
+
this
.
formObj
.
classType
+
'&alias='
+
this
.
formObj
.
alias
+
'&remark='
+
this
.
formObj
.
remark
}
},
channelInputLimit
(
e
)
{
const
key
=
e
.
key
// 不允许输入'e'和'.'
if
(
key
===
'e'
||
key
===
'.'
)
{
e
.
returnValue
=
false
return
false
}
return
true
},
_selectZtree
()
{
// this.$refs.ztreeModal._openZtree()
},
_cancel
()
{
this
.
showEditModal
=
false
},
_ok
()
{
this
.
$refs
.
formObj
.
validate
(
valid
=>
{
console
.
log
(
'valid'
,
valid
)
if
(
valid
)
{
this
.
_editOk
()
}
else
{
this
.
$Message
.
error
(
'请输入必填值'
)
}
})
},
_editOk
:
async
function
()
{
const
result
=
await
soilAptitude
.
originalTemplateEdit
({
id
:
this
.
id
,
formObj
:
this
.
formObj
})
if
(
result
)
{
this
.
$message
.
success
(
'编辑成功'
)
this
.
showEditModal
=
false
this
.
$emit
(
'on-result-change'
)
}
},
_open
(
data
)
{
console
.
log
(
data
)
this
.
showEditModal
=
true
this
.
isLoad
=
false
this
.
id
=
data
.
id
this
.
formObj
.
alias
=
data
.
alias
this
.
formObj
.
remark
=
data
.
remark
this
.
formObj
.
classType
=
data
.
classType
this
.
formObj
.
sampleBeginRow
=
data
.
sampleBeginRow
this
.
formObj
.
sampleBeginCol
=
data
.
sampleBeginCol
this
.
formObj
.
sampleMergerNum
=
data
.
sampleMergerNum
this
.
formObj
.
templateSampleNum
=
data
.
templateSampleNum
this
.
formObj
.
moreSheet
=
data
.
moreSheet
this
.
modalTitle
=
'编辑模板'
console
.
log
(
this
.
id
)
},
_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.$emit('on-result-change')
// this.showEditModal = false
// } else {
// this.isLoad = true
// this.$Message.error(response.msg)
// }
// },
_formatError
(
file
)
{
this
.
$Notice
.
error
({
title
:
'文件格式不正确'
,
duration
:
10
,
desc
:
'文件 '
+
file
.
name
+
' 格式不正确,请上传格式为 docx、xlsx、xls 的文件!'
})
},
_ztree
(
result
)
{
this
.
pname
=
''
if
(
result
===
undefined
)
{
this
.
formObj
.
classifyId
=
'0'
this
.
pname
=
''
}
else
{
this
.
formObj
.
classifyId
=
result
.
id
this
.
pname
=
result
.
name
}
// 判断必填项是否为空
}
}
}
</
script
>
<
style
scoped
>
.clearfix
:after
{
content
:
''
;
clear
:
both
;
display
:
block
;
}
.inputBox
>>>
input
::-webkit-outer-spin-button
,
input
::-webkit-inner-spin-button
{
-webkit-appearance
:
none
!important
;
}
.inputBox
>>>
input
[
type
=
'number'
]
{
-moz-appearance
:
textfield
!important
;
}
</
style
>
pages/soil-sample-manage/sample-alone-keep/entrust-sample-manage/SeniorSampleEdit.vue
0 → 100644
View file @
16bf0da5
<
template
>
<div>
<Modal
v-model=
"showModal"
:mask-closable=
"false"
width=
"900"
@
on-visible-change=
"_visibleChange"
>
<p
slot=
"header"
>
{{
modalTitle
}}
</p>
<div>
<Form
:id=
"formId"
ref=
"formObj"
:model=
"formObj"
:rules=
"ruleValidate"
:label-width=
"90"
inline
>
<div>
<Form-item
label=
"高级样品位置"
prop=
"receiveLocation"
style=
"width: 80%"
>
<Input
v-model=
"formObj.receiveLocation"
name=
"receiveLocation"
placeholder=
"请输入高级样品位置"
/>
</Form-item>
<Form-item
label=
"高级样品分类:"
prop=
"seniorType"
style=
"width: 80%"
>
<el-select
v-model=
"formObj.seniorType"
placeholder=
"请选择"
name=
"seniorType"
style=
"width: 100%"
>
<el-option
v-for=
"(item,index) in groupoptions"
:key=
"index"
:label=
"item.name"
:value=
"item.id"
/>
</el-select>
</Form-item>
<Form-item
label=
"接收时间:"
prop=
"testBasis"
style=
"width: 80%"
>
<Date-picker
v-model=
"formObj.receiveTime"
name=
"receiveTime"
type=
"date"
split-panels
style=
"width:100%;"
placeholder=
"请选择委托日期"
@
on-change=
"_tabulateChange"
></Date-picker>
</Form-item>
<Form-item
label=
"接收人"
prop=
"receiver"
class=
"width-48"
@
click
.
native=
"_selectPerson"
>
<Input
v-model=
"formObj.receiver"
name=
"receiver"
placeholder=
"请输入名称"
/>
</Form-item>
</div>
</Form>
</div>
<div
slot=
"footer"
>
<modal-footer
ref=
"footerModal"
:footer=
"footerList"
@
on-result-change=
"_footerResult"
></modal-footer>
</div>
</Modal>
<assignPerson
ref=
"userModal"
@
on-result-change=
"_userResult"
></assignPerson>
</div>
</
template
>
<
script
>
/**
* 添加编辑环境资质项目表
*/
import
{
soilAptitude
,
soilEntrust
}
from
'../../../../api'
import
assignPerson
from
'../../../../components/user-info-single/assignPerson'
export
default
{
components
:
{
assignPerson
},
data
()
{
return
{
activeName
:
''
,
hideUserSel
:
true
,
id
:
''
,
modalTitle
:
''
,
formObj
:
{
receiveLocation
:
undefined
,
seniorType
:
undefined
,
receiveTime
:
undefined
,
receiver
:
undefined
,
receiverId
:
undefined
},
sampleIds
:
[],
ruleValidate
:
{
name
:
[]
},
options
:
[],
groupoptions
:
[],
showModal
:
false
,
footerList
:
[
{
name
:
'取消'
,
type
:
''
},
{
name
:
'保存'
,
type
:
'primary'
}
],
aptitude
:
''
,
// testBasisName: '',
formId
:
''
}
},
mounted
()
{
// 检测科室
// this._getUserGroup()
// 检测依据
// this._getTestBasisList()
// 资质
// this._getAptitudeList()
// this._getType()
},
methods
:
{
groupSelect
(
data
)
{
console
.
log
(
data
)
// this.formObj.groupId = da
},
_selGroup
(
data
)
{
console
.
log
(
data
)
this
.
formObj
.
groupId
=
data
},
_selectPerson
()
{
this
.
$refs
.
userModal
.
_openOrg
(
'选择制表人'
,
'itemTree'
)
},
_userResult
(
data
,
msg
)
{
this
.
$forceUpdate
()
this
.
formObj
.
receiver
=
data
.
realname
this
.
formObj
.
receiverId
=
data
.
id
},
_tabulateChange
(
data
)
{
this
.
formObj
.
receiveTime
=
data
},
_footerResult
(
name
)
{
switch
(
name
)
{
case
'取消'
:
this
.
_cancel
()
break
case
'保存'
:
this
.
_ok
()
break
}
},
_hideLoading
()
{
this
.
$refs
.
footerModal
.
_hideLoading
()
},
_open
(
sampleIds
)
{
this
.
formObj
.
receiveLocation
=
undefined
this
.
formObj
.
seniorType
=
undefined
this
.
formObj
.
receiveTime
=
undefined
this
.
formObj
.
receiver
=
undefined
this
.
formObj
.
receiverId
=
undefined
this
.
formId
=
'index-edit-form'
this
.
sampleIds
=
sampleIds
this
.
_hideLoading
()
this
.
_getTestType
()
this
.
$refs
.
formObj
.
resetFields
()
this
.
hideUserSel
=
true
this
.
modalTitle
=
'编辑'
this
.
showModal
=
true
},
// 获取检测依据
_getStandardList
:
async
function
()
{
const
result
=
await
soilAptitude
.
getStandardList
()
if
(
result
)
{
this
.
options
=
result
}
},
_getTestType
:
async
function
()
{
const
result
=
await
soilEntrust
.
testType
(
'高级分类'
)
console
.
log
(
result
)
if
(
result
)
{
this
.
groupoptions
=
result
}
},
// 检测项目结果
_testItemChange
(
msg
,
data
)
{
switch
(
msg
)
{
case
'select'
:
this
.
formObj
.
name
=
data
this
.
$refs
.
formObj
.
validateField
(
'name'
)
this
.
_changeMicrobed
()
break
case
'query'
:
this
.
formObj
.
name
=
data
this
.
_getItemList
(
data
)
break
case
'blur'
:
this
.
_changeMicrobed
()
break
}
},
_clearMarks
()
{
this
.
marksList
=
[]
},
// 获取表数据
_resultChange
(
msg
)
{
this
.
showModal
=
false
this
.
$refs
.
footerModal
.
_hideLoading
()
this
.
$Message
.
success
(
msg
)
this
.
$emit
(
'on-result-change'
)
this
.
$refs
.
footerModal
.
_hideLoading
()
},
_ok
()
{
this
.
$refs
.
formObj
.
validate
(
valid
=>
{
if
(
valid
)
{
const
data
=
this
.
$serialize
(
'index-edit-form'
)
data
.
receiverId
=
this
.
formObj
.
receiverId
console
.
log
(
'index-edit-form'
,
data
)
this
.
_save
({
ids
:
this
.
sampleIds
,
obj
:
data
})
}
else
{
this
.
$refs
.
footerModal
.
_hideLoading
()
this
.
$Message
.
error
(
'表单验证失败!'
)
}
})
},
_save
:
async
function
(
data
)
{
console
.
log
(
data
)
const
result
=
await
soilAptitude
.
editSeniorSample
(
data
)
console
.
log
(
result
)
if
(
result
)
{
this
.
_resultChange
(
'添加成功!'
)
}
},
_edit
:
async
function
(
data
)
{
const
result
=
await
soilAptitude
.
edit
(
data
)
if
(
result
)
{
this
.
_resultChange
(
'编辑成功!'
)
}
},
_cancel
()
{
this
.
showModal
=
false
this
.
_hideLoading
()
},
_visibleChange
(
data
)
{
this
.
$emit
(
'on-result-change'
)
}
}
}
</
script
>
pages/soil-sample-manage/sample-alone-keep/entrust-sample-manage/WaitReceive.vue
View file @
16bf0da5
This diff is collapsed.
Click to expand it.
pages/soil-sample-manage/sample-preparation-check/SamplePreparationHis.vue
View file @
16bf0da5
...
...
@@ -107,6 +107,11 @@ export default {
type
:
'ios-clock'
,
id
:
''
,
name
:
'操作日志'
},
{
type
:
'md-trash'
,
id
:
''
,
name
:
'删除'
}
],
formObj
:
{
...
...
@@ -306,7 +311,7 @@ export default {
}
},
_delete
:
async
function
(
ids
)
{
const
result
=
await
soil
Aptitude
.
deleteById
(
ids
)
const
result
=
await
soil
Entrust
.
deleteById
(
ids
)
if
(
result
)
{
this
.
_formSearch
()
this
.
$Message
.
success
(
'删除成功!'
)
...
...
pages/soil-sample-manage/sample-preparation/CreateReport.vue
0 → 100644
View file @
16bf0da5
<
template
>
<div>
<Modal
v-model=
"showBatchModal"
v-drag
:mask-closable=
"false"
width=
"900"
>
<p
slot=
"header"
>
原始记录填写
</p>
<div>
<!--内容-->
<div
class=
"layout-content-padding"
>
<div
class=
"layout-content-main"
>
<Row>
<!--样品信息-->
<!--报告模板-->
<Col
span=
"24"
>
<ReportTemplate
ref=
"reportTemplate"
@
on-result-change=
"_templateResultChange"
></ReportTemplate>
</Col>
</Row>
</div>
</div>
</div>
<div
slot=
"footer"
>
<modal-footer
ref=
"footerModal"
:footer=
"footerBtn"
@
on-result-change=
"_footerResult"
></modal-footer>
</div>
</Modal>
<!--生成报告的进度条-->
</div>
</
template
>
<
script
>
import
ReportTemplate
from
'./ReportTemplate'
/**
* 样品列表--生成报告或者选择模板生成报告
*/
export
default
{
components
:
{
ReportTemplate
},
data
()
{
return
{
selectIds
:
[],
getPage
:
{
records
:
[]
},
showBatchModal
:
false
,
isLoading
:
false
,
footerBtn
:
[
{
type
:
''
,
id
:
''
,
name
:
'取消'
},
{
type
:
'primary'
,
id
:
''
,
name
:
'确定'
}
],
pageColumns
:
[
{
title
:
'样品名称'
,
key
:
'name'
,
width
:
160
},
{
title
:
'样品编号'
,
key
:
'code'
,
width
:
150
},
{
title
:
'证书编号'
,
key
:
'certificate'
,
width
:
150
}
],
reportModelId
:
''
,
backData
:
{},
// 样品数据
tableData
:
[],
// 签发日期
issueDateTemp
:
''
,
issueDate
:
''
,
entrustId
:
undefined
,
showIssueModal
:
false
}
},
methods
:
{
_open
(
id
)
{
this
.
entrustId
=
id
this
.
getPage
.
records
=
[]
this
.
backData
=
{}
this
.
showBatchModal
=
true
this
.
_reportTemplate
()
this
.
reportModelId
=
''
this
.
isLoading
=
false
},
// 报告模板
_reportTemplate
()
{
this
.
$refs
.
reportTemplate
.
_open
()
},
_footerResult
(
name
)
{
switch
(
name
)
{
case
'确定'
:
this
.
_ok
()
break
case
'取消'
:
this
.
showBatchModal
=
false
break
}
},
_templateResultChange
(
selectData
)
{
this
.
backData
=
selectData
[
0
]
},
_issueChange
(
data
)
{
if
(
data
)
{
this
.
issueDate
=
data
}
},
_hideLoading
()
{
this
.
$refs
.
footerModal
.
_hideLoading
()
},
_ok
()
{
this
.
$refs
.
footerModal
.
_hideLoading
()
if
(
!
this
.
backData
.
name
)
{
this
.
$Message
.
warning
(
'请选择一个原始记录模板!'
)
// this._hideLoading()
}
else
{
this
.
backData
.
entrustId
=
this
.
entrustId
this
.
$emit
(
'on-result-change'
,
this
.
backData
)
this
.
showBatchModal
=
false
}
},
_issueCancel
()
{
this
.
showIssueModal
=
false
},
// 选择时间ok
_issueOk
()
{
this
.
isLoading
=
true
this
.
showIssueModal
=
false
this
.
_createOk
()
},
// 生成报告
_createOk
()
{
const
obj
=
[]
for
(
let
i
=
0
;
i
<
this
.
tableData
.
length
;
i
++
)
{
obj
.
push
({
sampleId
:
this
.
tableData
[
i
].
id
,
reportSn
:
this
.
tableData
[
i
].
reportSn
,
issueDate
:
this
.
issueDate
})
}
this
.
$layxLoading
(
true
,
'数据验证中'
)
const
validateObj
=
{
sampleReports
:
obj
,
reportModelId
:
this
.
reportModelId
}
// 先进行验证
this
.
$store
.
dispatch
(
'FoodSampleReport/createReportValidate'
,
validateObj
)
.
then
(()
=>
{
if
(
this
.
$store
.
state
.
FoodSampleReport
.
success
)
{
// 验证成功之后再建立连接,然后进行生成报告操作
// 建立websocket连接
const
currentTime
=
new
Date
().
getTime
()
this
.
$refs
.
progressModal
.
_open
(
this
.
tableData
.
length
,
currentTime
)
validateObj
.
seriesNo
=
currentTime
console
.
log
(
'生成报告的当前序列号,'
,
validateObj
.
seriesNo
)
this
.
$store
.
dispatch
(
'FoodSampleReport/createReport'
,
validateObj
)
.
then
(()
=>
{})
}
this
.
_hideLoading
()
this
.
isLoading
=
false
this
.
$layxLoading
(
false
)
})
},
_closeResult
()
{
this
.
showBatchModal
=
false
this
.
$emit
(
'on-result-change'
)
}
}
}
</
script
>
pages/soil-sample-manage/sample-preparation/ReportTemplate.vue
0 → 100644
View file @
16bf0da5
<
template
>
<div>
<Row>
<Col
span=
"24"
>
<Form
id=
"formId"
:label-width=
"80"
inline
onsubmit=
"return false"
>
<label
class=
"label-sign"
></label>
<Form-item
label=
"模板名称:"
class=
"search-item"
>
<Input
v-model=
"formObj.alias"
@
on-enter=
"_formSearch"
placeholder=
"请输入模板名称"
clearable
/>
</Form-item>
<Form-item
class=
"search-btn"
style=
"margin-left: -10px"
>
<Button
@
click=
"_formSearch"
type=
"primary"
>
搜索
</Button>
</Form-item>
</Form>
</Col>
<Col
span=
"24"
>
<PTVXETableHeight
ref=
"pageTable"
:table-height=
"300"
:get-page=
"getPage"
:is-radio=
"true"
@
on-result-change=
"_tableResultChange"
select-data=
"true"
hide-checkbox
>
<vxe-table-column
v-for=
"item in pageColumns"
:key=
"item.key"
:field=
"item.key"
:title=
"item.title"
:width=
"item.width"
:min-width=
"200"
:fixed=
"item.fixed?item.fixed:undefined"
sortable
>
<template
slot-scope=
"scope"
>
<span
v-if=
"item.dateTime"
>
{{
scope
.
row
[
item
.
key
]?
$dateformat
(
scope
.
row
[
item
.
key
],
'yyyy-mm-dd HH:MM:ss'
):
''
}}
</span>
<span
v-else-if=
"item.judged"
>
{{
scope
.
row
[
item
.
key
]
===
1
?
'是'
:
'否'
}}
</span>
<span
v-else
>
{{
scope
.
row
[
item
.
key
]
}}
</span>
</
template
>
</vxe-table-column>
</PTVXETableHeight>
</Col>
</Row>
</div>
</template>
<
script
>
import
{
soilAptitude
}
from
'../../../api'
export
default
{
components
:
{},
data
()
{
return
{
tableHeight
:
'400'
,
pageColumns
:
[
{
title
:
'模板名称'
,
key
:
'alias'
,
width
:
220
},
{
title
:
'类别'
,
key
:
'classType'
,
width
:
140
},
{
title
:
'备注'
,
key
:
'remark'
}
],
getPage
:
{},
modalTitle
:
'报告模板'
,
sampleId
:
''
,
formObj
:
{
name
:
undefined
},
selectData
:
[]
}
},
methods
:
{
_tableResultChange
(
msg
,
data
)
{
console
.
log
(
msg
)
switch
(
msg
)
{
case
'page'
:
this
.
_page
()
break
case
'changeSize'
:
this
.
_page
()
break
case
'selectData'
:
this
.
selectData
=
data
break
case
'singleSelect'
:
this
.
selectData
=
[
data
]
this
.
$emit
(
'on-result-change'
,
this
.
selectData
)
break
case
'iconClick'
:
this
.
_iconClick
(
data
.
name
,
data
.
rowData
)
break
}
},
_open
(
sampleId
)
{
this
.
sampleId
=
sampleId
||
''
this
.
_page
()
},
_formSearch
()
{
this
.
$refs
.
pageTable
.
_pageChange
(
1
)
},
_page
:
async
function
()
{
Object
.
assign
(
this
.
formObj
,
this
.
$refs
.
pageTable
.
_searchParams
())
const
result
=
await
soilAptitude
.
pageOpenSoil
(
this
.
$serializeForm
(
this
.
formObj
)
)
if
(
result
)
{
this
.
getPage
=
result
this
.
$refs
.
pageTable
.
_hideLoading
()
}
}
}
}
</
script
>
pages/soil-sample-manage/sample-preparation/SamplePreparation.vue
View file @
16bf0da5
...
...
@@ -6,27 +6,27 @@
<Row>
<!--查询-->
<Col
span=
"24"
style=
"margin-top: 10px"
>
<Form
id=
"formId"
v-show=
"searchOpen
"
:label-width=
"90"
inline
onsubmit=
"return false"
>
<Form
v-show=
"searchOpen"
id=
"formId
"
:label-width=
"90"
inline
onsubmit=
"return false"
>
<label
class=
"label-sign"
></label>
<Form-item
class=
"search-item"
label=
"委托商:"
>
<Input
v-model=
"formObj.client"
@
on-enter=
"_formSearch"
name=
"client"
placeholder=
"请输入委托单位"
clearable
/>
<Input
v-model=
"formObj.client"
name=
"client"
placeholder=
"请输入委托单位"
clearable
@
on-enter=
"_formSearch"
/>
</Form-item>
<Form-item
class=
"search-item"
label=
"委托编号:"
>
<Input
v-model=
"formObj.entrustCode"
@
on-enter=
"_formSearch"
name=
"entrustCode"
placeholder=
"请输入委托编号"
clearable
/>
<Input
v-model=
"formObj.entrustCode"
name=
"entrustCode"
placeholder=
"请输入委托编号"
clearable
@
on-enter=
"_formSearch"
/>
</Form-item>
<Form-item
class=
"search-item"
label=
"钻孔名称:"
>
<Input
v-model=
"formObj.boreholeName"
@
on-enter=
"_formSearch"
placeholder=
"请输入钻孔名称"
clearable
></Input>
<Input
v-model=
"formObj.boreholeName"
placeholder=
"请输入钻孔名称"
clearable
@
on-enter=
"_formSearch"
></Input>
</Form-item>
<Form-item
class=
"search-btn"
>
<Button
@
click=
"_formSearch"
type=
"primary
"
>
搜索
</Button>
<Button
type=
"primary"
@
click=
"_formSearch
"
>
搜索
</Button>
</Form-item>
</Form>
</Col>
<!--操作-->
<Col
span=
"24"
>
<btn-list
:msg=
"btn"
:open=
"searchOpen"
:show-search-btn=
"true"
@
on-result-change=
"_btnClick
"
class=
"contHide
"
></btn-list>
<btn-list
:msg=
"btn"
:open=
"searchOpen"
:show-search-btn=
"true"
class=
"contHide
"
@
on-result-change=
"_btnClick
"
></btn-list>
</Col>
<!--表格-->
<Col
span=
"24"
>
...
...
@@ -52,15 +52,15 @@
</div>
<keep-alive>
<!-- eslint-disable-next-line vue/require-component-is -->
<component
ref=
"refModal"
:is=
"currentComponent
"
@
on-result-change=
"_componentResult"
></component>
<component
:is=
"currentComponent"
ref=
"refModal
"
@
on-result-change=
"_componentResult"
></component>
</keep-alive>
</div>
</template>
<
script
>
import
{
soilEntrust
}
from
'../../../api'
import
{
soilEntrust
,
soilSample
}
from
'../../../api'
import
http
from
'../../../api/http'
import
Operation
from
'../../../components/operation/Operation'
import
global
from
'../../../api/config
'
import
CreateReport
from
'./CreateReport
'
import
SampleManage
from
'./SampleManage'
import
SamplePreparationEdit
from
'./SamplePreparationEdit'
import
SoilSampleItemManageEdit
from
'./SoilSampleItemManageEdit'
...
...
@@ -76,6 +76,8 @@ export default {
// eslint-disable-next-line vue/no-unused-components
SoilSampleItemManageEdit
,
// eslint-disable-next-line vue/no-unused-components
CreateReport
,
// eslint-disable-next-line vue/no-unused-components
SoilEntrustItemNum
},
data
()
{
...
...
@@ -217,22 +219,73 @@ export default {
},
_componentResult
(
data
,
msg
)
{
switch
(
this
.
currentComponent
)
{
case
'CreateReport'
:
this
.
_openSoilRecordMake
(
data
)
break
default
:
this
.
_page
()
}
},
_
exportPrepare
(
id
)
{
this
.
$Modal
.
confirm
(
{
t
itle
:
'提示'
,
content
:
'确定导出这条记录'
,
onOk
:
()
=>
{
window
.
open
(
global
.
baseURL
+
'/soil/v1/entrust/export_soil_prepare_record?ids='
+
id
,
'_blank'
)
_
openSoilRecordMake
(
data
)
{
if
(
data
)
{
t
his
.
$refs
.
pageTable
.
_showLoading
()
this
.
_makeCodeExcel
(
data
)
}
else
{
const
ids
=
this
.
selectIds
if
(
ids
.
length
===
0
)
{
this
.
$Message
.
warning
(
'请至少选择一条数据!'
)
}
else
{
// this._appendOriginalRecord()
}
}
},
_makeCodeExcel
:
async
function
(
data
)
{
this
.
$refs
.
pageTable
.
_showLoading
()
const
result
=
await
soilSample
.
saveExcelOpenSoilRecord
({
entrustId
:
data
.
entrustId
,
templateId
:
data
.
id
})
this
.
$refs
.
pageTable
.
_hideLoading
()
if
(
result
)
{
await
this
.
_page
()
if
(
result
===
null
||
result
===
undefined
)
{
this
.
$Message
.
warning
(
'证书编制失败,请联系管理员!'
)
this
.
$refs
.
pageTable
.
_hideLoading
()
return
false
}
else
{
this
.
$emit
(
'on-result-change'
)
this
.
_viewReport
(
result
)
}
}
},
_viewReport
(
data
)
{
this
.
$refs
.
pageTable
.
_hideLoading
()
if
(
data
)
{
this
.
$openWindowModeless
({
objectKey
:
data
.
objectKey
,
idType
:
10
,
id
:
data
.
id
,
isReport
:
4
})
}
},
_exportPrepare
(
id
)
{
// this.$Modal.confirm({
// title: '提示',
// content: '确定导出这条记录',
// onOk: () => {
// window.open(
// global.baseURL +
// '/soil/v1/entrust/export_soil_prepare_record?ids=' +
// id,
// '_blank'
// )
// }
// })
this
.
currentComponent
=
'CreateReport'
this
.
$nextTick
(()
=>
{
this
.
$refs
.
refModal
.
_open
(
id
)
})
},
_sampleManage
(
data
)
{
...
...
pages/soil-sample-manage/sample-preparation/SamplePreparationHis.vue
View file @
16bf0da5
...
...
@@ -110,6 +110,11 @@ export default {
type
:
'ios-clock'
,
id
:
''
,
name
:
'操作日志'
},
{
type
:
'md-trash'
,
id
:
''
,
name
:
'删除'
}
],
formObj
:
{
...
...
@@ -310,7 +315,7 @@ export default {
}
},
_delete
:
async
function
(
ids
)
{
const
result
=
await
soil
Aptitude
.
deleteById
(
ids
)
const
result
=
await
soil
Entrust
.
deleteById
(
ids
)
if
(
result
)
{
this
.
_formSearch
()
this
.
$Message
.
success
(
'删除成功!'
)
...
...
pages/soil-sample-manage/sample-receive/ReceiveByEntrust.vue
View file @
16bf0da5
...
...
@@ -73,6 +73,7 @@
<
script
>
import
{
soilEntrust
}
from
'../../../api'
import
Operation
from
'../../../components/operation/Operation'
import
global
from
'../../../api/config'
import
SampleManage
from
'./entrust-sample-manage/SampleManage'
export
default
{
// eslint-disable-next-line vue/no-unused-components
...
...
@@ -118,8 +119,8 @@ export default {
btn
:
[
{
type
:
'primary'
,
id
:
'
ZBC
'
,
name
:
'
一键接收
'
id
:
''
,
name
:
'
导出样品抽样单模板
'
}
],
selectIds
:
[],
...
...
@@ -149,12 +150,30 @@ export default {
this
.
currentComponent
=
componentName
this
.
$nextTick
(()
=>
{
switch
(
msg
)
{
case
'导出样品抽样单模板'
:
this
.
_exportTemplate
()
break
case
'search'
:
this
.
searchOpen
=
!
this
.
searchOpen
break
}
})
},
_exportTemplate
()
{
const
data
=
{
downloadUrl
:
'/soil/v1/excel/template_soil/YangPinChouYangDan.docx'
}
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定要导出该模板?'
,
onOk
:
()
=>
{
this
.
_download
(
data
)
}
})
},
_download
(
data
)
{
window
.
open
(
global
.
baseURL
+
data
.
downloadUrl
,
'_blank'
)
},
_iconClick
(
res
,
data
,
currentComponent
)
{
this
.
currentComponent
=
currentComponent
console
.
log
(
res
)
...
...
pages/soil-sample-manage/sample-receive/ReceiveBySample.vue
View file @
16bf0da5
...
...
@@ -95,6 +95,11 @@ export default {
type
:
'ios-clock'
,
id
:
''
,
name
:
'操作日志'
},
{
type
:
'md-trash'
,
id
:
''
,
name
:
'删除'
}
],
getPage
:
{},
...
...
@@ -173,6 +178,9 @@ export default {
case
'管理样品'
:
this
.
_editModal
(
data
.
id
,
data
.
type
,
data
.
entrustCode
)
break
case
'删除'
:
this
.
_deleteByIds
([
data
.
id
])
break
case
'附件'
:
this
.
_upload
(
data
.
id
)
break
...
...
@@ -182,6 +190,23 @@ export default {
}
})
},
// 删除
_deleteByIds
(
ids
,
content
)
{
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
content
||
'确定删除该记录?'
,
onOk
:
()
=>
{
this
.
_delete
(
ids
)
}
})
},
_delete
:
async
function
(
ids
)
{
const
result
=
await
soilEntrust
.
deleteById
(
ids
)
if
(
result
)
{
this
.
_formSearch
()
this
.
$Message
.
success
(
'删除成功!'
)
}
},
_editModal
(
id
,
type
,
name
)
{
this
.
currentComponent
=
'SampleManage'
this
.
$nextTick
(()
=>
{
...
...
pages/soil-sample-manage/sample-take/TakeByEntrust.vue
View file @
16bf0da5
...
...
@@ -71,6 +71,7 @@
import
UserInfo
from
'../../../components/user-info-single/assignPerson'
import
{
soilEntrust
}
from
'../../../api'
import
Operation
from
'../../../components/operation/Operation'
import
global
from
'../../../api/config'
import
SampleManage
from
'./TakeSampleManage'
export
default
{
components
:
{
...
...
@@ -115,8 +116,23 @@ export default {
btn
:
[
{
type
:
'primary'
,
id
:
'ZBC'
,
name
:
'一键接收'
id
:
''
,
name
:
'导出取采样记录模板'
},
{
type
:
'primary'
,
id
:
''
,
name
:
'导出留样登记表模板'
},
{
type
:
'primary'
,
id
:
''
,
name
:
'导出样品标示卡模板'
},
{
type
:
'primary'
,
id
:
''
,
name
:
'导出检测物品登记表模板'
}
],
selectIds
:
[],
...
...
@@ -166,6 +182,18 @@ export default {
this
.
currentComponent
=
componentName
this
.
$nextTick
(()
=>
{
switch
(
msg
)
{
case
'导出取采样记录模板'
:
this
.
_exportTemplateGet
()
break
case
'导出留样登记表模板'
:
this
.
_exportTemplateLiu
()
break
case
'导出样品标示卡模板'
:
this
.
_exportTemplateKa
()
break
case
'导出检测物品登记表模板'
:
this
.
_exportTemplateJian
()
break
case
'search'
:
this
.
searchOpen
=
!
this
.
searchOpen
break
...
...
@@ -174,6 +202,57 @@ export default {
}
})
},
_exportTemplateGet
()
{
const
data
=
{
downloadUrl
:
'/soil/v1/excel/template_soil/QuYang.docx'
}
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定要导出该模板?'
,
onOk
:
()
=>
{
this
.
_download
(
data
)
}
})
},
_exportTemplateLiu
()
{
const
data
=
{
downloadUrl
:
'/soil/v1/excel/template_soil/LiuYangDengJI.docx'
}
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定要导出该模板?'
,
onOk
:
()
=>
{
this
.
_download
(
data
)
}
})
},
_exportTemplateKa
()
{
const
data
=
{
downloadUrl
:
'/soil/v1/excel/template_soil/YangPinBiaoShiKa.docx'
}
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定要导出该模板?'
,
onOk
:
()
=>
{
this
.
_download
(
data
)
}
})
},
_exportTemplateJian
()
{
const
data
=
{
downloadUrl
:
'/soil/v1/excel/template_soil/JinceWuPinDengJI.docx'
}
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
'确定要导出该模板?'
,
onOk
:
()
=>
{
this
.
_download
(
data
)
}
})
},
_download
(
data
)
{
window
.
open
(
global
.
baseURL
+
data
.
downloadUrl
,
'_blank'
)
},
// btn操作
_btnOption
(
msg
)
{
console
.
log
(
msg
)
...
...
pages/soil-test-manage/test-data-audit/item-tabs/ItemLeftList.vue
View file @
16bf0da5
...
...
@@ -18,9 +18,9 @@
</Col>
<!-- 表格 -->
<Col
span=
"24"
>
<PTVXETable
ref=
"pageTable"
:isRadio=
"true"
:pageColumns=
"pageColumns"
:table-name=
"tableName"
<PTVXETable
ref=
"pageTable"
:pageColumns=
"pageColumns"
:table-name=
"tableName"
:tableHeight=
"tableHeight"
@
on-result-change=
"_tableResultChange"
:getPage=
"getPage"
:hide-checkbox=
"true"
select-data
>
@
on-result-change=
"_tableResultChange"
:getPage=
"getPage"
select-data
>
<vxe-table-column
v-for=
"item in userColumns.length > 0 ?userColumns:pageColumns"
:key=
"item.key"
...
...
@@ -52,6 +52,7 @@ export default {
formObj
:
{
name
:
undefined
},
selectDataName
:
[],
tableName
:
'food-task-assign-item-left'
,
// 用户自己选中的列
userColumns
:
[],
...
...
@@ -111,11 +112,12 @@ export default {
_tableResultChange
(
msg
,
data
)
{
console
.
log
(
msg
,
data
)
switch
(
msg
)
{
case
'page'
:
this
.
getPage
=
this
.
$store
.
state
.
FoodItem
.
page
break
case
'selectData'
:
this
.
$emit
(
'on-result-change'
,
data
)
this
.
selectDataName
=
[]
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
this
.
selectDataName
.
push
(
data
[
i
].
name
)
}
this
.
$emit
(
'on-result-change'
,
this
.
selectDataName
)
break
case
'singleSelect'
:
this
.
$emit
(
'on-result-change'
,
data
)
...
...
pages/soil-test-manage/test-data-audit/item-tabs/ItemRightList.vue
View file @
16bf0da5
...
...
@@ -80,7 +80,11 @@ export default {
entrustId
:
''
,
name
:
''
,
testMethod
:
''
,
testBasis
:
''
testBasis
:
''
,
obj
:
{
entrustId
:
''
,
nameList
:
[]
}
},
entrustId
:
''
,
// 用户自己选中的列
...
...
@@ -500,19 +504,17 @@ export default {
return
obj
},
_page
:
async
function
()
{
// const saveName = []
// const saveMethod = []
// for (let i = 0; i
<
this
.
leftSelectData
.
length
;
i
++
)
{
// saveName.push(this.leftSelectData[i].name)
// saveMethod.push(this.leftSelectData[i].testMethod)
// }
// const data = this.$serialize('task-assign-item-right')
// console.log(data)
this
.
formObj
.
obj
.
nameList
=
[]
Object
.
assign
(
this
.
formObj
,
this
.
$refs
.
pageTable
.
_searchParams
())
this
.
formObj
.
entrustId
=
this
.
entrustId
this
.
formObj
.
name
=
this
.
leftSelectData
.
name
this
.
formObj
.
testMethod
=
this
.
leftSelectData
.
testMethod
const
result
=
await
soilTest
.
pageExpByAudit
(
this
.
formObj
.
obj
.
entrustId
=
this
.
entrustId
console
.
log
(
'-----this.leftSelectData-------'
,
this
.
leftSelectData
)
this
.
formObj
.
obj
.
nameList
=
this
.
leftSelectData
// alert(this.formObj.obj.nameList.length)
// if (this.formObj.obj.nameList.length === 0) {
// return false
// }
const
result
=
await
soilTest
.
pageExperimentAuditBath
(
this
.
$serializeForm
(
this
.
formObj
)
)
if
(
result
)
{
...
...
pages/soil-test-manage/test-data-check/item-tabs/ItemLeftList.vue
View file @
16bf0da5
...
...
@@ -18,9 +18,9 @@
</Col>
<!-- 表格 -->
<Col
span=
"24"
>
<PTVXETable
ref=
"pageTable"
:isRadio=
"true"
:pageColumns=
"pageColumns"
:table-name=
"tableName"
<PTVXETable
ref=
"pageTable"
:pageColumns=
"pageColumns"
:table-name=
"tableName"
:tableHeight=
"tableHeight"
@
on-result-change=
"_tableResultChange"
:getPage=
"getPage"
:hide-checkbox=
"true"
select-data
>
@
on-result-change=
"_tableResultChange"
:getPage=
"getPage"
select-data
>
<vxe-table-column
v-for=
"item in userColumns.length > 0 ?userColumns:pageColumns"
:key=
"item.key"
...
...
@@ -52,6 +52,7 @@ export default {
formObj
:
{
name
:
undefined
},
selectDataName
:
[],
tableName
:
'food-task-assign-item-left'
,
// 用户自己选中的列
userColumns
:
[],
...
...
@@ -111,11 +112,13 @@ export default {
_tableResultChange
(
msg
,
data
)
{
console
.
log
(
msg
,
data
)
switch
(
msg
)
{
case
'page'
:
this
.
getPage
=
this
.
$store
.
state
.
FoodItem
.
page
break
case
'selectData'
:
this
.
$emit
(
'on-result-change'
,
data
)
this
.
selectDataName
=
[]
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
this
.
selectDataName
.
push
(
data
[
i
].
name
)
}
console
.
log
(
'selectDataName'
,
this
.
selectDataName
)
this
.
$emit
(
'on-result-change'
,
this
.
selectDataName
)
break
case
'singleSelect'
:
this
.
$emit
(
'on-result-change'
,
data
)
...
...
pages/soil-test-manage/test-data-check/item-tabs/ItemRightList.vue
View file @
16bf0da5
...
...
@@ -6,21 +6,21 @@
<Form
id=
"task-assign-item-right"
:label-width=
"70"
inline
onsubmit=
"return false"
>
<label
class=
"label-sign"
></label>
<Form-item
class=
"search-item"
label=
"试样编号:"
>
<Input
@
on-enter=
"_formSearch"
v-model=
"formObj.sampleCode"
name=
"sampleCode"
placeholder=
"请输入试样编号"
clearable
></Input>
<Input
v-model=
"formObj.sampleCode"
name=
"sampleCode"
placeholder=
"请输入试样编号"
clearable
@
on-enter=
"_formSearch"
></Input>
</Form-item>
<Form-item
class=
"search-btn"
>
<Button
@
click=
"_formSearch"
type=
"primary
"
>
搜索
</Button>
<Button
type=
"primary"
@
click=
"_formSearch
"
>
搜索
</Button>
</Form-item>
</Form>
</Col>
<!--操作-->
<Col
span=
"24"
>
<btn-list
:msg=
"btn"
@
on-result-change=
"_btnClick"
class=
"contHide
"
></btn-list>
<btn-list
:msg=
"btn"
class=
"contHide"
@
on-result-change=
"_btnClick
"
></btn-list>
</Col>
<!-- 表格 -->
<Col
span=
"24"
>
<PTVXETable
ref=
"pageTable"
:page
Columns=
"pageColumns"
:tableH
eight=
"tableHeight"
@
on-result-change=
"_tableResultChange"
:getPage=
"getPage"
:icon-msg=
"iconMsg"
:table-name=
"tableName"
is-task
select-data
>
<PTVXETable
ref=
"pageTable"
:page
-columns=
"pageColumns"
:table-h
eight=
"tableHeight"
:get-page=
"getPage"
:icon-msg=
"iconMsg"
:table-name=
"tableName"
is-task
select-data
@
on-result-change=
"_tableResultChange"
>
<vxe-table-column
v-for=
"item in userColumns.length > 0 ?userColumns:pageColumns"
:key=
"item.key"
...
...
@@ -41,8 +41,8 @@
<span
v-else
>
{{
scope
.
row
[
item
.
key
]
}}
</span>
</
template
>
</vxe-table-column>
<VXESettingCol
slot=
"setting"
:page
Columns=
"pageColumns"
:userC
olumns=
"userColumns"
@
on-result-change=
"_resetColumn"
:table-name=
"tableName
"
></VXESettingCol>
<VXESettingCol
slot=
"setting"
:page
-columns=
"pageColumns"
:user-c
olumns=
"userColumns"
:table-name=
"tableName"
@
on-result-change=
"_resetColumn
"
></VXESettingCol>
</PTVXETable>
</Col>
</Row>
...
...
@@ -80,7 +80,11 @@ export default {
entrustId
:
''
,
name
:
''
,
testMethod
:
''
,
testBasis
:
''
testBasis
:
''
,
obj
:
{
entrustId
:
''
,
nameList
:
[]
}
},
entrustId
:
''
,
// 用户自己选中的列
...
...
@@ -500,19 +504,12 @@ export default {
return
obj
},
_page
:
async
function
()
{
// const saveName = []
// const saveMethod = []
// for (let i = 0; i
<
this
.
leftSelectData
.
length
;
i
++
)
{
// saveName.push(this.leftSelectData[i].name)
// saveMethod.push(this.leftSelectData[i].testMethod)
// }
// const data = this.$serialize('task-assign-item-right')
// console.log(data)
this
.
formObj
.
obj
.
nameList
=
[]
Object
.
assign
(
this
.
formObj
,
this
.
$refs
.
pageTable
.
_searchParams
())
this
.
formObj
.
entrustId
=
this
.
entrustId
this
.
formObj
.
name
=
this
.
leftSelectData
.
name
this
.
formObj
.
testMethod
=
this
.
leftSelectData
.
testMethod
const
result
=
await
soilTest
.
pageExp
ByCheck
(
this
.
formObj
.
obj
.
entrustId
=
this
.
entrustId
this
.
formObj
.
obj
.
nameList
=
this
.
leftSelectData
const
result
=
await
soilTest
.
pageExp
erimentCheckBath
(
this
.
$serializeForm
(
this
.
formObj
)
)
if
(
result
)
{
...
...
pages/soil-test-manage/test-input/ViewGdsData.vue
View file @
16bf0da5
<
template
>
<div>
<Modal
v-model=
"showModal"
:mask-closable=
"false"
width=
"1200"
>
<p
slot=
"header"
>
{{
modalTitle
}}
</p>
<Row>
<Col
span=
"24"
>
<div
style=
"overflow-y: auto"
>
...
...
@@ -88,6 +86,19 @@
</Col>
<Col
span=
"24"
>
<div>
<!--
<element-table
ref=
"pageTable"
:tableHeight=
"500"
@
on-result-change=
"_tableResultChange"
:getPage=
"getPage"
>
-->
<!--
<el-table-column-->
<!-- :prop="item.key"-->
<!-- :label="item.title"-->
<!-- :width="item.width"-->
<!-- :fixed="item.fixed?item.fixed:undefined"-->
<!-- v-for="item in pageColumns"-->
<!-- :key="item.key" show-overflow-tooltip>-->
<!--
<template
slot-scope=
"scope"
>
-->
<!--
<span>
{{
scope
.
row
[
item
.
key
]
}}
</span>
-->
<!--
</
template
>
-->
<!-- </el-table-column>-->
<!-- </element-table>-->
<PTVXETable
ref=
"pageTable"
:form-id=
"formId"
...
...
@@ -119,10 +130,6 @@
</div>
</Col>
</Row>
<div
slot=
"footer"
>
<modal-footer
ref=
"footerModal"
:footer=
"footerList"
@
on-result-change=
"_footerResult"
></modal-footer>
</div>
</Modal>
</div>
</template>
<
script
>
...
...
@@ -131,6 +138,8 @@
*/
import
{
soilTest
}
from
'../../../api'
export
default
{
// layout: 'blank-layout',
layout
:
'defaultGds'
,
components
:
{},
data
()
{
return
{
...
...
@@ -226,6 +235,10 @@ export default {
aptitudeData
:
[]
}
},
mounted
()
{
console
.
log
(
this
.
$route
.
query
.
id
)
this
.
_openEdit
(
this
.
$route
.
query
.
id
)
},
methods
:
{
/** *modal-footer */
_footerResult
(
name
)
{
...
...
pages/soil-test-manage/test-input/item-tabs/ItemRightList.vue
View file @
16bf0da5
...
...
@@ -58,7 +58,6 @@
<CreateReport
ref=
"createModal"
@
on-result-change=
"_certificateSelectExcelBack"
></CreateReport>
<Reason
ref=
"reasonModal"
@
on-result-change=
"_reasonResult"
/>
<Operation
ref=
"Operation"
></Operation>
<ViewGdsData
ref=
"viewGds"
></ViewGdsData>
</div>
</template>
<
script
>
...
...
@@ -74,7 +73,6 @@ import CollectManage from '../CollectManage'
import
CollectFileManage
from
'../CollectFileManage'
import
Reason
from
'../../../../components/base/Reason'
import
Operation
from
'../../../../components/operation/ItemOperation'
import
ViewGdsData
from
'../ViewGdsData'
import
CreateReport
from
'./CreateReport'
export
default
{
components
:
{
...
...
@@ -88,8 +86,7 @@ export default {
CollectFileManage
,
Reason
,
CreateReport
,
Operation
,
ViewGdsData
Operation
},
data
()
{
return
{
...
...
@@ -240,8 +237,15 @@ export default {
}
})
},
// _viewGdsData(id) {
// this.$refs.viewGds._openEdit(id)
// },
_viewGdsData
(
id
)
{
this
.
$refs
.
viewGds
.
_openEdit
(
id
)
const
routeData
=
this
.
$router
.
resolve
({
path
:
'/blank/GdsData'
,
query
:
{
id
:
id
}
})
window
.
open
(
routeData
.
href
,
'_blank'
)
},
_operationRecord
(
id
)
{
this
.
$refs
.
Operation
.
_open
(
id
)
...
...
pages/soil-test-manage/test-task-manage-his/AllotByEntrust.vue
View file @
16bf0da5
...
...
@@ -67,7 +67,7 @@
</template>
<
script
>
import
UserInfo
from
'../../../components/user-info-single/assignPerson'
import
{
soilTest
}
from
'../../../api'
import
{
soil
Entrust
,
soil
Test
}
from
'../../../api'
import
Operation
from
'../../../components/operation/Operation'
import
SampleManage
from
'./entrust-sample-manage/SampleManage'
import
ItemManage
from
'./ItemManage'
...
...
@@ -92,6 +92,11 @@ export default {
type
:
'ios-clock'
,
id
:
''
,
name
:
'操作日志'
},
{
type
:
'md-trash'
,
id
:
''
,
name
:
'删除'
}
],
getPage
:
{},
...
...
@@ -188,12 +193,31 @@ export default {
case
'附件'
:
this
.
_upload
(
data
.
id
)
break
case
'删除'
:
this
.
_deleteByIds
([
data
.
id
])
break
case
'操作日志'
:
this
.
_operationRecord
(
data
.
id
)
break
}
})
},
_deleteByIds
(
ids
,
content
)
{
this
.
$Modal
.
confirm
({
title
:
'提示'
,
content
:
content
||
'确定删除该记录?'
,
onOk
:
()
=>
{
this
.
_delete
(
ids
)
}
})
},
_delete
:
async
function
(
ids
)
{
const
result
=
await
soilEntrust
.
deleteById
(
ids
)
if
(
result
)
{
this
.
_formSearch
()
this
.
$Message
.
success
(
'删除成功!'
)
}
},
_editModal
(
id
,
type
)
{
this
.
currentComponent
=
'SampleManage'
this
.
$nextTick
(()
=>
{
...
...
router/routes.js
View file @
16bf0da5
...
...
@@ -2,7 +2,7 @@
* 地址路由
*/
import
Lock
from
'../pages/Lock.vue'
// 锁屏
import
workbench
from
'../pages/soil-sample-manage/sample-preparation/PreparationOther
'
import
viewGdsData
from
'../pages/soil-test-manage/test-input/ViewGdsData
'
import
Index
from
'~/pages/index'
import
Blank
from
'~/pages/blank'
import
SoilRouters
from
'~/router/soil-routes'
...
...
@@ -26,8 +26,8 @@ export default [
meta
:
{
title
:
'土工试验LIMS'
}
},
{
path
:
'/blank/
item_by_method
'
,
component
:
workbench
path
:
'/blank/
GdsData
'
,
component
:
viewGdsData
},
{
path
:
'*'
,
redirect
:
'/'
}
]
router/soil-routes.js
View file @
16bf0da5
...
...
@@ -50,7 +50,7 @@ import SoilExpReportMakeIndex from '../pages/soil-exp-report/report-make/SoilExp
import
SoilExpReportCheckIndex
from
'../pages/soil-exp-report/report-check/SoilExpReportCheckIndex'
import
SoilExpReportIssueIndex
from
'../pages/soil-exp-report/report-issue/SoilExpReportIssueIndex'
import
SoilExpReportEndIndex
from
'../pages/soil-exp-report/report-end/SoilExpReportEndIndex'
import
OpenSoilTemplate
from
'../pages/soil-sample-manage/open-soil-template-manage/OpenSoilTemplate'
import
Blank
from
'~/pages/blank'
export
default
[
{
...
...
@@ -176,6 +176,11 @@ export default [
path
:
'box'
,
component
:
BoxManage
,
meta
:
{
title
:
'盒号管理'
}
},
{
path
:
'open_soil_template'
,
component
:
OpenSoilTemplate
,
meta
:
{
title
:
'开土制备记录模板'
}
}
]
},
...
...
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