Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amms-template
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
pangchong
amms-template
Commits
767fc66f
Commit
767fc66f
authored
Jul 29, 2025
by
pangchong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 防除冰
parent
bba0285f
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
437 additions
and
58 deletions
+437
-58
mocp/components/global-page/global-page.vue
+10
-2
mocp/components/global-picker/global-picker.vue
+3
-0
mocp/components/global-popup/global-popup.vue
+1
-0
mocp/hooks/use-dict/dict-data/electronicBill.js
+0
-15
mocp/store/assign-work.js
+4
-1
mocp/utils/http.js
+1
-0
pages.json
+5
-5
pages/modules/mocp/login/constants/index.compositions.js
+1
-1
pages/modules/mocp/panel/electronicBill/deicing/add.vue
+244
-14
pages/modules/mocp/panel/electronicBill/deicing/constants/add.compositions.js
+34
-2
pages/modules/mocp/panel/electronicBill/deicing/constants/add.functionals.js
+81
-7
pages/modules/mocp/panel/electronicBill/deicing/constants/sign.functionals.js
+29
-1
pages/modules/mocp/panel/electronicBill/deicing/list.vue
+3
-1
pages/modules/mocp/panel/electronicBill/deicing/sign.vue
+1
-5
pages/modules/mocp/panel/electronicBill/nonRoutineWork/add.vue
+3
-3
pages/modules/mocp/panel/mco/step-back.vue
+7
-0
pages/modules/mocp/panel/windDamageManagement/operateDetails.vue
+9
-0
static/mocp/js/menu.js
+1
-1
No files found.
mocp/components/global-page/global-page.vue
View file @
767fc66f
...
@@ -84,8 +84,8 @@
...
@@ -84,8 +84,8 @@
<slot
v-else
></slot>
<slot
v-else
></slot>
</view>
</view>
<!-- 底部 -->
<!-- 底部 -->
<
template
#
bottom
>
<
template
#
bottom
v-if=
"showBottom"
>
<view
class=
"footer-btn"
v-if=
"showFooterBtn"
>
<view
class=
"footer-btn"
v-if=
"showFooterBtn"
:style=
"
{ visibility: showBottom ? 'visible' : 'hidden' }"
>
<global-button
type=
"primary"
size=
"large"
@
tap=
"handleFooterClick"
>
{{
footerBtnText
}}
</global-button>
<global-button
type=
"primary"
size=
"large"
@
tap=
"handleFooterClick"
>
{{
footerBtnText
}}
</global-button>
</view>
</view>
<slot
name=
"bottom"
></slot>
<slot
name=
"bottom"
></slot>
...
@@ -476,6 +476,14 @@ defineExpose({
...
@@ -476,6 +476,14 @@ defineExpose({
},
},
element
:
paging
element
:
paging
})
})
//处理ios底部兼容问题
const
showBottom
=
ref
(
true
)
uni
.
$on
(
'changeShowBottom'
,
(
boolean
)
=>
{
const
systemInfo
=
uni
.
getSystemInfoSync
()
if
(
systemInfo
.
platform
===
'ios'
)
{
showBottom
.
value
=
!
boolean
}
})
</
script
>
</
script
>
<
script
>
<
script
>
export
default
{
export
default
{
...
...
mocp/components/global-picker/global-picker.vue
View file @
767fc66f
...
@@ -287,6 +287,9 @@ watch(
...
@@ -287,6 +287,9 @@ watch(
},
},
{
immediate
:
true
}
{
immediate
:
true
}
)
)
watch
(
show
,
(
value
)
=>
{
uni
.
$emit
(
'changeShowBottom'
,
value
)
})
//点击确定按钮
//点击确定按钮
const
confirm
=
(
e
)
=>
{
const
confirm
=
(
e
)
=>
{
show
.
value
=
false
show
.
value
=
false
...
...
mocp/components/global-popup/global-popup.vue
View file @
767fc66f
...
@@ -120,6 +120,7 @@ watch(
...
@@ -120,6 +120,7 @@ watch(
scrollTop
.
value
=
ps
.
distance
>
0
?
ps
.
distance
:
oldScrollTop
.
value
scrollTop
.
value
=
ps
.
distance
>
0
?
ps
.
distance
:
oldScrollTop
.
value
})
})
}
}
uni
.
$emit
(
'changeShowBottom'
,
value
)
}
}
)
)
const
close
=
()
=>
{
const
close
=
()
=>
{
...
...
mocp/hooks/use-dict/dict-data/electronicBill.js
View file @
767fc66f
// 建议以文件名首字母作为前缀eb_
// 建议以文件名首字母作为前缀eb_
export
const
eb_deicingType
=
[
{
label
:
'cleansurface I-BIO'
,
value
:
'cleansurface I-BIO'
},
{
label
:
'FCY-1A'
,
value
:
'FCY-1A'
},
{
label
:
'Cleanwing I'
,
value
:
'Cleanwing I'
},
{
label
:
'FCY-9311'
,
value
:
'FCY-9311'
},
{
label
:
'FCY-1Bio'
,
value
:
'FCY-1Bio'
}
]
export
const
eb_antiicingMix
=
[
export
const
eb_antiicingMix
=
[
{
label
:
'25:75'
,
value
:
'25:75'
},
{
label
:
'25:75'
,
value
:
'25:75'
},
{
label
:
'30:70'
,
value
:
'30:70'
},
{
label
:
'30:70'
,
value
:
'30:70'
},
...
@@ -22,14 +15,6 @@ export const eb_antiicingUnit = [
...
@@ -22,14 +15,6 @@ export const eb_antiicingUnit = [
{
label
:
'USG'
,
value
:
'USG'
},
{
label
:
'USG'
,
value
:
'USG'
},
{
label
:
'KG'
,
value
:
'KG'
}
{
label
:
'KG'
,
value
:
'KG'
}
]
]
export
const
eb_antiicingType
=
[
{
label
:
'Cleansurface1-B10'
,
value
:
'Cleansurface1-B10'
},
{
label
:
'FCY-1A'
,
value
:
'FCY-1A'
},
{
label
:
'Cleanwing II'
,
value
:
'Cleanwing II'
},
{
label
:
'FCY-9311'
,
value
:
'FCY-9311'
},
{
label
:
'FCY-2'
,
value
:
'FCY-2'
},
{
label
:
'FCY-4'
,
value
:
'FCY-4'
}
]
export
const
eb_guaranteeUnit
=
[
export
const
eb_guaranteeUnit
=
[
{
label
:
'海技保障'
,
value
:
'1'
},
{
label
:
'海技保障'
,
value
:
'1'
},
{
label
:
'非海技保障'
,
value
:
'2'
}
{
label
:
'非海技保障'
,
value
:
'2'
}
...
...
mocp/store/assign-work.js
View file @
767fc66f
...
@@ -60,7 +60,10 @@ const useAssignWorkStore = defineStore('assignWork', {
...
@@ -60,7 +60,10 @@ const useAssignWorkStore = defineStore('assignWork', {
//是否领导
//是否领导
isPresenterUser
(
state
)
{
isPresenterUser
(
state
)
{
const
userStore
=
useUserStore
()
const
userStore
=
useUserStore
()
return
state
.
details
.
presenterId
==
userStore
.
userInfo
.
id
if
(
state
.
details
.
presenterId
)
{
return
state
.
details
.
presenterId
.
split
(
','
).
includes
(
userStore
.
userInfo
.
id
)
}
return
false
},
},
//获取分解计划
//获取分解计划
getDecompose
(
state
)
{
getDecompose
(
state
)
{
...
...
mocp/utils/http.js
View file @
767fc66f
...
@@ -3,6 +3,7 @@ import useUserStore from 'mocp/store/user'
...
@@ -3,6 +3,7 @@ import useUserStore from 'mocp/store/user'
// const baseURL = 'https://hna-platform.anyremote.cn' //测试
// const baseURL = 'https://hna-platform.anyremote.cn' //测试
// const baseURL = 'https://moc.hnatechnic.com/api' //生产
// const baseURL = 'https://moc.hnatechnic.com/api' //生产
// const baseURL = 'http://10.123.48.67/api' //Amms内网
// const baseURL = 'http://10.123.48.67/api' //Amms内网
// const baseURL = 'http://10.121.48.157/gky_mocp_bs/api' //北数高可用测试环境
const
baseURL
=
'https://hnaelbtest.hnatechnic.com/mocptest/api'
//内网
const
baseURL
=
'https://hnaelbtest.hnatechnic.com/mocptest/api'
//内网
class
ServiceLoading
{
class
ServiceLoading
{
...
...
pages.json
View file @
767fc66f
...
@@ -94,11 +94,11 @@
...
@@ -94,11 +94,11 @@
},
},
//
mocp功能模块
//
mocp功能模块
{
{
"path"
:
"pages/modules/mocp/login/index"
,
"path"
:
"pages/modules/mocp/login/index"
,
"style"
:
{
"style"
:
{
"navigationBarTitleText"
:
"登录"
"navigationBarTitleText"
:
"登录"
}
}
},
},
{
{
"path"
:
"pages/modules/mocp/panel/index"
,
"path"
:
"pages/modules/mocp/panel/index"
,
"style"
:
{
"style"
:
{
...
...
pages/modules/mocp/login/constants/index.compositions.js
View file @
767fc66f
...
@@ -3,7 +3,7 @@ export const loginFormRef = ref()
...
@@ -3,7 +3,7 @@ export const loginFormRef = ref()
//表单数据
//表单数据
export
const
loginForm
=
reactive
({
export
const
loginForm
=
reactive
({
username
:
''
,
//devzj3
username
:
''
,
//devzj3
password
:
''
,
//Ifar_
9527008 / Ifar2016_0525
password
:
''
,
//Ifar_
SAFE_202506_13
verifyCode
:
''
verifyCode
:
''
})
})
export
const
showLoad
=
ref
(
false
)
export
const
showLoad
=
ref
(
false
)
...
...
pages/modules/mocp/panel/electronicBill/deicing/add.vue
View file @
767fc66f
...
@@ -78,7 +78,7 @@
...
@@ -78,7 +78,7 @@
<view
class=
"mocp-title"
>
除冰记录
</view>
<view
class=
"mocp-title"
>
除冰记录
</view>
<view
class=
"mocp-form"
>
<view
class=
"mocp-form"
>
<up-form-item
label=
"除冰液型号"
prop=
"deicingType"
:borderBottom=
"true"
>
<up-form-item
label=
"除冰液型号"
prop=
"deicingType"
:borderBottom=
"true"
>
<global-picker
pickAlign=
"right"
v-model=
"formData.deicingType"
dictkey=
"eb_d
eicingType"
clearable
></global-picker>
<global-picker
pickAlign=
"right"
v-model=
"formData.deicingType"
paramsType=
"D
eicingType"
clearable
></global-picker>
</up-form-item>
</up-form-item>
<up-form-item
label=
"混合比"
prop=
"deicingMix"
:borderBottom=
"true"
>
<up-form-item
label=
"混合比"
prop=
"deicingMix"
:borderBottom=
"true"
>
<global-picker
pickAlign=
"right"
v-model=
"formData.deicingMix"
dictkey=
"eb_antiicingMix"
clearable
></global-picker>
<global-picker
pickAlign=
"right"
v-model=
"formData.deicingMix"
dictkey=
"eb_antiicingMix"
clearable
></global-picker>
...
@@ -244,11 +244,11 @@
...
@@ -244,11 +244,11 @@
></global-date>
></global-date>
</up-form-item>
</up-form-item>
</view>
</view>
<!-- 防冰记录 -->
<!-- 防冰记录
1
-->
<view
class=
"mocp-title"
>
防冰记录
</view>
<view
class=
"mocp-title"
>
防冰记录
1
</view>
<view
class=
"mocp-form"
>
<view
class=
"mocp-form"
>
<up-form-item
label=
"防冰液型号"
prop=
"antiicingType"
:borderBottom=
"true"
>
<up-form-item
label=
"防冰液型号"
prop=
"antiicingType"
:borderBottom=
"true"
>
<global-picker
pickAlign=
"right"
v-model=
"formData.antiicingType"
dictkey=
"eb_a
ntiicingType"
clearable
></global-picker>
<global-picker
pickAlign=
"right"
v-model=
"formData.antiicingType"
paramsType=
"A
ntiicingType"
clearable
></global-picker>
</up-form-item>
</up-form-item>
<up-form-item
label=
"混合比"
prop=
"antiicingMix"
:borderBottom=
"true"
>
<up-form-item
label=
"混合比"
prop=
"antiicingMix"
:borderBottom=
"true"
>
<global-picker
pickAlign=
"right"
v-model=
"formData.antiicingMix"
dictkey=
"eb_antiicingMix"
clearable
></global-picker>
<global-picker
pickAlign=
"right"
v-model=
"formData.antiicingMix"
dictkey=
"eb_antiicingMix"
clearable
></global-picker>
...
@@ -417,6 +417,179 @@
...
@@ -417,6 +417,179 @@
></global-date>
></global-date>
</up-form-item>
</up-form-item>
</view>
</view>
<!-- 防冰记录2 -->
<view
class=
"mocp-title"
>
防冰记录2
</view>
<view
class=
"mocp-form"
>
<up-form-item
label=
"防冰液型号"
prop=
"antiicing2Type"
:borderBottom=
"true"
>
<global-picker
pickAlign=
"right"
v-model=
"formData.antiicing2Type"
paramsType=
"AntiicingType"
clearable
></global-picker>
</up-form-item>
<up-form-item
label=
"混合比"
prop=
"antiicing2Mix"
:borderBottom=
"true"
>
<global-picker
pickAlign=
"right"
v-model=
"formData.antiicing2Mix"
dictkey=
"eb_antiicingMix"
clearable
></global-picker>
</up-form-item>
<up-form-item
label=
"自定义混合比"
prop=
"antiicingMix"
:borderBottom=
"true"
v-if=
"formData.antiicingMix == 'Other'"
>
<view
style=
"display: flex; align-items: center"
>
<global-number-input
v-model=
"formData.antiicing2Mix1"
placeholder=
"请输入"
inputAlign=
"left"
border=
"surround"
></global-number-input>
<text
style=
"margin: 0 20rpx"
>
:
</text>
<global-number-input
v-model=
"formData.antiicing2Mix2"
placeholder=
"请输入"
inputAlign=
"left"
border=
"surround"
></global-number-input>
</view>
</up-form-item>
<view
class=
"sample-table"
>
<view
class=
"sample-thead"
>
<view
class=
"sample-thead-th"
>
<view
class=
"sample-thead-td"
>
除冰车号
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-thead-td"
>
防冰人员
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-thead-td"
>
用量
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-thead-td"
>
单位
</view>
</view>
</view>
<view
class=
"sample-tbody"
>
<view
class=
"sample-tbody-tr"
>
<view
class=
"sample-tbody-td"
>
<up-input
v-model=
"formData.antiicing2CartNo1"
placeholder=
"请输入"
clearable
></up-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<up-input
v-model=
"formData.antiicing2Persion1"
placeholder=
"请输入"
clearable
></up-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<global-number-input
v-model=
"formData.antiicing2Quantity1"
:greater=
"0"
:precision=
"2"
inputAlign=
"left"
border=
"surround"
></global-number-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<global-picker
v-model=
"formData.antiicing2Unit1"
dictkey=
"eb_antiicingUnit"
clearable
border
></global-picker>
</view>
</view>
<view
class=
"sample-tbody-tr"
>
<view
class=
"sample-tbody-td"
>
<up-input
v-model=
"formData.antiicing2CartNo2"
placeholder=
"请输入"
clearable
></up-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<up-input
v-model=
"formData.antiicing2Persion2"
placeholder=
"请输入"
clearable
></up-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<global-number-input
v-model=
"formData.antiicing2Quantity2"
:greater=
"0"
:precision=
"2"
inputAlign=
"left"
border=
"surround"
></global-number-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<global-picker
v-model=
"formData.antiicing2Unit2"
dictkey=
"eb_antiicingUnit"
clearable
border
></global-picker>
</view>
</view>
<view
class=
"sample-tbody-tr"
>
<view
class=
"sample-tbody-td"
>
<up-input
v-model=
"formData.antiicing2CartNo3"
placeholder=
"请输入"
clearable
></up-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<up-input
v-model=
"formData.antiicing2Persion3"
placeholder=
"请输入"
clearable
></up-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<global-number-input
v-model=
"formData.antiicing2Quantity3"
:greater=
"0"
:precision=
"2"
inputAlign=
"left"
border=
"surround"
></global-number-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<global-picker
v-model=
"formData.antiicing2Unit3"
dictkey=
"eb_antiicingUnit"
clearable
border
></global-picker>
</view>
</view>
<view
class=
"sample-tbody-tr"
>
<view
class=
"sample-tbody-td"
>
<up-input
v-model=
"formData.antiicing2CartNo4"
placeholder=
"请输入"
clearable
></up-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<up-input
v-model=
"formData.antiicing2Persion4"
placeholder=
"请输入"
clearable
></up-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<global-number-input
v-model=
"formData.antiicing2Quantity4"
:greater=
"0"
:precision=
"2"
inputAlign=
"left"
border=
"surround"
></global-number-input>
</view>
<view
class=
"spacer"
></view>
<view
class=
"sample-tbody-td"
>
<global-picker
v-model=
"formData.antiicing2Unit4"
dictkey=
"eb_antiicingUnit"
clearable
border
></global-picker>
</view>
</view>
</view>
</view>
<view
class=
"mocp-button"
>
<global-button
type=
"primary"
:radius=
"0"
border
@
tap=
"submitAntiicing2"
>
提交
</global-button>
</view>
<up-form-item
label=
"用量合计"
prop=
"antiicing2QuantityTotal"
:borderBottom=
"true"
>
<up-input
type=
"number"
v-model=
"formData.antiicing2QuantityTotal"
inputAlign=
"right"
border=
"none"
placeholder=
"填写混合比后自动计算"
readonly
clearable
></up-input>
</up-form-item>
<up-form-item
label=
"保持时间"
prop=
"antiicing2Duration"
:borderBottom=
"true"
>
<up-input
v-model=
"formData.antiicing2Duration"
inputAlign=
"right"
border=
"none"
placeholder=
"请输入"
clearable
></up-input>
</up-form-item>
<up-form-item
label=
"开始时间"
prop=
"antiicing2StartTime"
:borderBottom=
"true"
>
<global-date
mode=
"time"
pickAlign=
"right"
clearable
v-model=
"formData.antiicing2StartTime"
:timestamp=
"false"
valueFormat=
"HH:mm"
placeholder=
"请选择时间"
></global-date>
</up-form-item>
<up-form-item
label=
"结束时间"
prop=
"antiicing2EndTime"
:borderBottom=
"true"
>
<global-date
mode=
"time"
pickAlign=
"right"
clearable
v-model=
"formData.antiicing2EndTime"
:timestamp=
"false"
valueFormat=
"HH:mm"
placeholder=
"请选择时间"
></global-date>
</up-form-item>
</view>
<view
class=
"mocp-form"
>
<view
class=
"mocp-form"
>
<up-form-item
label=
"备注"
prop=
"remark"
:borderBottom=
"true"
>
<up-form-item
label=
"备注"
prop=
"remark"
:borderBottom=
"true"
>
<up-input
v-model=
"formData.remark"
inputAlign=
"right"
border=
"none"
placeholder=
"请输入"
clearable
></up-input>
<up-input
v-model=
"formData.remark"
inputAlign=
"right"
border=
"none"
placeholder=
"请输入"
clearable
></up-input>
...
@@ -441,7 +614,7 @@
...
@@ -441,7 +614,7 @@
</view>
</view>
</view>
</view>
</up-modal>
</up-modal>
<!-- 防冰超量警告 -->
<!-- 防冰超量警告
1
-->
<up-modal
:show=
"showAntiicing"
title=
"超量使用"
@
confirm=
"confirmAntiicing"
closeOnClickOverlay
@
close=
"showAntiicing = false"
>
<up-modal
:show=
"showAntiicing"
title=
"超量使用"
@
confirm=
"confirmAntiicing"
closeOnClickOverlay
@
close=
"showAntiicing = false"
>
<view
class=
"warn-modal"
>
<view
class=
"warn-modal"
>
<view
class=
"warn-title"
>
请填写超量使用原因
</view>
<view
class=
"warn-title"
>
请填写超量使用原因
</view>
...
@@ -458,6 +631,23 @@
...
@@ -458,6 +631,23 @@
</view>
</view>
</view>
</view>
</up-modal>
</up-modal>
<!-- 防冰超量警告2 -->
<up-modal
:show=
"showAntiicing2"
title=
"超量使用"
@
confirm=
"confirmAntiicing2"
closeOnClickOverlay
@
close=
"showAntiicing2 = false"
>
<view
class=
"warn-modal"
>
<view
class=
"warn-title"
>
请填写超量使用原因
</view>
<up-input
v-model=
"formData.antiicing2Remark"
border=
"bottom"
placeholder=
"请输入"
clearable
></up-input>
<view
class=
"warn-upload"
>
<global-upload-image
v-model=
"formData.antiicing2File"
map-field-name=
"id"
:width=
"165"
:height=
"165"
:file-list=
"antiicing2File"
@
getFileList=
"getAntiicing2File"
></global-upload-image>
</view>
</view>
</up-modal>
</
template
>
</
template
>
<
script
setup
>
<
script
setup
>
...
@@ -471,7 +661,10 @@ import {
...
@@ -471,7 +661,10 @@ import {
deicingFlag
,
deicingFlag
,
antiicingFlag
,
antiicingFlag
,
deicingFile
,
deicingFile
,
antiicingFile
antiicingFile
,
showAntiicing2
,
antiicing2File
,
antiicing2Flag
}
from
'./constants/add.compositions'
}
from
'./constants/add.compositions'
import
{
navigateTo
}
from
'mocp/utils/jump'
import
{
navigateTo
}
from
'mocp/utils/jump'
import
{
import
{
...
@@ -483,7 +676,10 @@ import {
...
@@ -483,7 +676,10 @@ import {
submitDeicing
,
submitDeicing
,
submitAntiicing
,
submitAntiicing
,
getDeicingFile
,
getDeicingFile
,
getAntiicingFile
getAntiicingFile
,
confirmAntiicing2
,
getAntiicing2File
,
submitAntiicing2
}
from
'./constants/add.functionals'
}
from
'./constants/add.functionals'
import
{
onUnmounted
,
watch
,
watchEffect
}
from
'vue'
import
{
onUnmounted
,
watch
,
watchEffect
}
from
'vue'
import
{
getTerminalSelect
}
from
'mocp/utils/permission'
import
{
getTerminalSelect
}
from
'mocp/utils/permission'
...
@@ -515,7 +711,7 @@ watchEffect(() => {
...
@@ -515,7 +711,7 @@ watchEffect(() => {
}
else
{
}
else
{
formData
.
deicingQuantityTotal
=
undefined
formData
.
deicingQuantityTotal
=
undefined
}
}
//防冰用量合计
//防冰用量
1
合计
const
antiicingQuantityTotal
=
const
antiicingQuantityTotal
=
getOneTotal
(
formData
.
antiicingQuantity1
,
formData
.
antiicingUnit1
)
+
getOneTotal
(
formData
.
antiicingQuantity1
,
formData
.
antiicingUnit1
)
+
getOneTotal
(
formData
.
antiicingQuantity2
,
formData
.
antiicingUnit2
)
+
getOneTotal
(
formData
.
antiicingQuantity2
,
formData
.
antiicingUnit2
)
+
...
@@ -535,16 +731,50 @@ watchEffect(() => {
...
@@ -535,16 +731,50 @@ watchEffect(() => {
}
else
{
}
else
{
formData
.
antiicingQuantityTotal
=
undefined
formData
.
antiicingQuantityTotal
=
undefined
}
}
//防冰用量2合计
const
antiicing2QuantityTotal
=
getOneTotal
(
formData
.
antiicing2Quantity1
,
formData
.
antiicing2Unit1
)
+
getOneTotal
(
formData
.
antiicing2Quantity2
,
formData
.
antiicing2Unit2
)
+
getOneTotal
(
formData
.
antiicing2Quantity3
,
formData
.
antiicing2Unit3
)
+
getOneTotal
(
formData
.
antiicing2Quantity4
,
formData
.
antiicing2Unit4
)
if
(
formData
.
antiicing2Mix
)
{
if
(
formData
.
antiicing2Mix
==
'Other'
)
{
if
(
formData
.
antiicing2Mix1
&&
formData
.
antiicing2Mix2
)
{
const
percent
=
parseFloat
(
formData
.
antiicing2Mix1
)
/
(
parseFloat
(
formData
.
antiicing2Mix1
)
+
parseFloat
(
formData
.
antiicing2Mix2
))
formData
.
antiicing2QuantityTotal
=
parseFloat
((
antiicing2QuantityTotal
*
percent
).
toFixed
(
4
))
||
undefined
}
}
else
{
const
percentArr
=
formData
.
antiicing2Mix
.
split
(
':'
)
const
percent
=
parseFloat
(
percentArr
[
0
])
/
(
parseFloat
(
percentArr
[
0
])
+
parseFloat
(
percentArr
[
1
]))
formData
.
antiicing2QuantityTotal
=
parseFloat
((
antiicing2QuantityTotal
*
percent
).
toFixed
(
4
))
||
undefined
}
}
else
{
formData
.
antiicing2QuantityTotal
=
undefined
}
})
})
watch
([()
=>
formData
.
deicingQuantityTotal
,
()
=>
formData
.
weatherToday
,
()
=>
formData
.
modelType
],
()
=>
{
watch
([()
=>
formData
.
deicingQuantityTotal
,
()
=>
formData
.
weatherToday
,
()
=>
formData
.
modelType
],
()
=>
{
deicingFlag
.
value
=
false
if
(
deicingFlag
.
value
)
{
formData
.
deicingRemark
=
''
deicingFlag
.
value
=
false
formData
.
deicingFile
=
''
formData
.
deicingRemark
=
''
formData
.
deicingFile
=
''
deicingFile
.
value
=
[]
}
})
})
watch
([()
=>
formData
.
antiicingQuantityTotal
,
()
=>
formData
.
weatherToday
,
()
=>
formData
.
modelType
],
()
=>
{
watch
([()
=>
formData
.
antiicingQuantityTotal
,
()
=>
formData
.
weatherToday
,
()
=>
formData
.
modelType
],
()
=>
{
antiicingFlag
.
value
=
false
if
(
antiicingFlag
.
value
)
{
formData
.
antiicingRemark
=
''
antiicingFlag
.
value
=
false
formData
.
antiicingFile
=
''
formData
.
antiicingRemark
=
''
formData
.
antiicingFile
=
''
antiicingFile
.
value
=
[]
}
})
watch
([()
=>
formData
.
antiicing2QuantityTotal
,
()
=>
formData
.
weatherToday
,
()
=>
formData
.
modelType
],
()
=>
{
if
(
antiicing2Flag
.
value
)
{
antiicing2Flag
.
value
=
false
formData
.
antiicing2Remark
=
''
formData
.
antiicing2File
=
''
antiicing2File
.
value
=
[]
}
})
})
// 海航集团内部的宽体机——A330-,787-,747-,777-,A350-,其余为窄体,集团外部机型-机型类别无对应数据需要手动选择
// 海航集团内部的宽体机——A330-,787-,747-,777-,A350-,其余为窄体,集团外部机型-机型类别无对应数据需要手动选择
const
prefixes
=
[
'A330-'
,
'787-'
,
'747-'
,
'777-'
,
'A350-'
]
const
prefixes
=
[
'A330-'
,
'787-'
,
'747-'
,
'777-'
,
'A350-'
]
...
...
pages/modules/mocp/panel/electronicBill/deicing/constants/add.compositions.js
View file @
767fc66f
...
@@ -27,6 +27,32 @@ export const formData = reactive({
...
@@ -27,6 +27,32 @@ export const formData = reactive({
antiicingUnit2
:
''
,
antiicingUnit2
:
''
,
antiicingUnit3
:
''
,
antiicingUnit3
:
''
,
antiicingUnit4
:
''
,
antiicingUnit4
:
''
,
antiicing2CartNo1
:
''
,
antiicing2CartNo2
:
''
,
antiicing2CartNo3
:
''
,
antiicing2CartNo4
:
''
,
antiicing2Duration
:
''
,
antiicing2EndTime
:
''
,
antiicing2Mix
:
'100:0'
,
antiicing2Mix1
:
undefined
,
antiicing2Mix2
:
undefined
,
antiicing2Persion1
:
''
,
antiicing2Persion2
:
''
,
antiicing2Persion3
:
''
,
antiicing2Persion4
:
''
,
antiicing2Quantity1
:
undefined
,
antiicing2Quantity2
:
undefined
,
antiicing2Quantity3
:
undefined
,
antiicing2Quantity4
:
undefined
,
antiicing2QuantityTotal
:
undefined
,
antiicing2StartTime
:
''
,
antiicing2Type
:
''
,
antiicing2Unit1
:
''
,
antiicing2Unit2
:
''
,
antiicing2Unit3
:
''
,
antiicing2Unit4
:
''
,
customerSignImg
:
''
,
customerSignImg
:
''
,
date
:
''
,
date
:
''
,
deicingCartNo1
:
''
,
deicingCartNo1
:
''
,
...
@@ -70,7 +96,9 @@ export const formData = reactive({
...
@@ -70,7 +96,9 @@ export const formData = reactive({
deicingFile
:
''
,
deicingFile
:
''
,
deicingRemark
:
''
,
deicingRemark
:
''
,
antiicingFile
:
''
,
antiicingFile
:
''
,
antiicingRemark
:
''
antiicingRemark
:
''
,
antiicing2File
:
''
,
antiicing2Remark
:
''
})
})
export
const
rules
=
reactive
({
export
const
rules
=
reactive
({
...
@@ -151,7 +179,11 @@ export const formRef = ref()
...
@@ -151,7 +179,11 @@ export const formRef = ref()
export
const
deicingFlag
=
ref
(
false
)
export
const
deicingFlag
=
ref
(
false
)
export
const
showDeicing
=
ref
(
false
)
export
const
showDeicing
=
ref
(
false
)
export
const
deicingFile
=
ref
([])
export
const
deicingFile
=
ref
([])
//防冰弹框
//防冰弹框
1
export
const
antiicingFlag
=
ref
(
false
)
export
const
antiicingFlag
=
ref
(
false
)
export
const
showAntiicing
=
ref
(
false
)
export
const
showAntiicing
=
ref
(
false
)
export
const
antiicingFile
=
ref
([])
export
const
antiicingFile
=
ref
([])
//防冰弹框2
export
const
antiicing2Flag
=
ref
(
false
)
export
const
showAntiicing2
=
ref
(
false
)
export
const
antiicing2File
=
ref
([])
pages/modules/mocp/panel/electronicBill/deicing/constants/add.functionals.js
View file @
767fc66f
import
{
getAirlineAcregApi
}
from
'mocp/api/electronicBill'
import
{
getAirlineAcregApi
}
from
'mocp/api/electronicBill'
import
{
antiicingFile
,
antiicingFlag
,
deicingFile
,
deicingFlag
,
formData
,
formRef
,
showAntiicing
,
showDeicing
}
from
'./add.compositions'
import
{
antiicing2File
,
antiicing2Flag
,
antiicingFile
,
antiicingFlag
,
deicingFile
,
deicingFlag
,
formData
,
formRef
,
showAntiicing
,
showAntiicing2
,
showDeicing
}
from
'./add.compositions'
import
{
validateParameters
}
from
'mocp/utils/tool'
import
{
validateParameters
}
from
'mocp/utils/tool'
import
{
showToast
}
from
'mocp/utils/message'
import
{
showToast
}
from
'mocp/utils/message'
...
@@ -27,6 +39,9 @@ export const getDeicingFile = (value) => {
...
@@ -27,6 +39,9 @@ export const getDeicingFile = (value) => {
export
const
getAntiicingFile
=
(
value
)
=>
{
export
const
getAntiicingFile
=
(
value
)
=>
{
antiicingFile
.
value
=
value
antiicingFile
.
value
=
value
}
}
export
const
getAntiicing2File
=
(
value
)
=>
{
antiicing2File
.
value
=
value
}
export
const
deicingValidate
=
()
=>
{
export
const
deicingValidate
=
()
=>
{
if
(
!
formData
.
modelType
)
{
if
(
!
formData
.
modelType
)
{
return
uni
.
$mocpMessage
.
warning
(
'请选择机型类别'
)
return
uni
.
$mocpMessage
.
warning
(
'请选择机型类别'
)
...
@@ -60,22 +75,50 @@ export const antiicingValidate = () => {
...
@@ -60,22 +75,50 @@ export const antiicingValidate = () => {
if
(
!
formData
.
weatherToday
)
{
if
(
!
formData
.
weatherToday
)
{
return
uni
.
$mocpMessage
.
warning
(
'请选择当日天气'
)
return
uni
.
$mocpMessage
.
warning
(
'请选择当日天气'
)
}
}
/******************防冰记录1******************/
//验证防冰混合比(Other)
//验证防冰混合比(Other)
if
(
formData
.
antiicingMix
==
'Other'
&&
(
!
formData
.
antiicingMix1
||
!
formData
.
antiicingMix2
))
{
if
(
formData
.
antiicingMix
==
'Other'
&&
(
!
formData
.
antiicingMix1
||
!
formData
.
antiicingMix2
))
{
return
uni
.
$mocpMessage
.
warning
(
'请填写防冰自定义混合比'
)
return
uni
.
$mocpMessage
.
warning
(
'请填写防冰
记录1-防冰
自定义混合比'
)
}
}
//验证防冰记录完整性
//验证防冰记录完整性
if
(
!
validateParameters
(
formData
.
antiicingCartNo1
,
formData
.
antiicingPersion1
,
formData
.
antiicingQuantity1
,
formData
.
antiicingUnit1
))
{
if
(
!
validateParameters
(
formData
.
antiicingCartNo1
,
formData
.
antiicingPersion1
,
formData
.
antiicingQuantity1
,
formData
.
antiicingUnit1
))
{
return
uni
.
$mocpMessage
.
warning
(
'请完整填写第1条防冰记录'
)
return
uni
.
$mocpMessage
.
warning
(
'请完整填写
防冰记录1-
第1条防冰记录'
)
}
}
if
(
!
validateParameters
(
formData
.
antiicingCartNo2
,
formData
.
antiicingPersion2
,
formData
.
antiicingQuantity2
,
formData
.
antiicingUnit2
))
{
if
(
!
validateParameters
(
formData
.
antiicingCartNo2
,
formData
.
antiicingPersion2
,
formData
.
antiicingQuantity2
,
formData
.
antiicingUnit2
))
{
return
uni
.
$mocpMessage
.
warning
(
'请完整填写第2条防冰记录'
)
return
uni
.
$mocpMessage
.
warning
(
'请完整填写
防冰记录1-
第2条防冰记录'
)
}
}
if
(
!
validateParameters
(
formData
.
antiicingCartNo3
,
formData
.
antiicingPersion3
,
formData
.
antiicingQuantity3
,
formData
.
antiicingUnit3
))
{
if
(
!
validateParameters
(
formData
.
antiicingCartNo3
,
formData
.
antiicingPersion3
,
formData
.
antiicingQuantity3
,
formData
.
antiicingUnit3
))
{
return
uni
.
$mocpMessage
.
warning
(
'请完整填写第3条防冰记录'
)
return
uni
.
$mocpMessage
.
warning
(
'请完整填写
防冰记录1-
第3条防冰记录'
)
}
}
if
(
!
validateParameters
(
formData
.
antiicingCartNo4
,
formData
.
antiicingPersion4
,
formData
.
antiicingQuantity4
,
formData
.
antiicingUnit4
))
{
if
(
!
validateParameters
(
formData
.
antiicingCartNo4
,
formData
.
antiicingPersion4
,
formData
.
antiicingQuantity4
,
formData
.
antiicingUnit4
))
{
return
uni
.
$mocpMessage
.
warning
(
'请完整填写第4条防冰记录'
)
return
uni
.
$mocpMessage
.
warning
(
'请完整填写防冰记录1-第4条防冰记录'
)
}
return
true
}
export
const
antiicing2Validate
=
()
=>
{
if
(
!
formData
.
modelType
)
{
return
uni
.
$mocpMessage
.
warning
(
'请选择机型类别'
)
}
if
(
!
formData
.
weatherToday
)
{
return
uni
.
$mocpMessage
.
warning
(
'请选择当日天气'
)
}
/******************防冰记录2******************/
//验证防冰混合比(Other)
if
(
formData
.
antiicing2Mix
==
'Other'
&&
(
!
formData
.
antiicing2Mix1
||
!
formData
.
antiicing2Mix2
))
{
return
uni
.
$mocpMessage
.
warning
(
'请填写防冰记录2-防冰自定义混合比'
)
}
//验证防冰记录完整性
if
(
!
validateParameters
(
formData
.
antiicing2CartNo1
,
formData
.
antiicing2Persion1
,
formData
.
antiicing2Quantity1
,
formData
.
antiicing2Unit1
))
{
return
uni
.
$mocpMessage
.
warning
(
'请完整填写防冰记录2-第1条防冰记录'
)
}
if
(
!
validateParameters
(
formData
.
antiicing2CartNo2
,
formData
.
antiicing2Persion2
,
formData
.
antiicing2Quantity2
,
formData
.
antiicing2Unit2
))
{
return
uni
.
$mocpMessage
.
warning
(
'请完整填写防冰记录2-第2条防冰记录'
)
}
if
(
!
validateParameters
(
formData
.
antiicing2CartNo3
,
formData
.
antiicing2Persion3
,
formData
.
antiicing2Quantity3
,
formData
.
antiicing2Unit3
))
{
return
uni
.
$mocpMessage
.
warning
(
'请完整填写防冰记录2-第3条防冰记录'
)
}
if
(
!
validateParameters
(
formData
.
antiicing2CartNo4
,
formData
.
antiicing2Persion4
,
formData
.
antiicing2Quantity4
,
formData
.
antiicing2Unit4
))
{
return
uni
.
$mocpMessage
.
warning
(
'请完整填写防冰记录2-第4条防冰记录'
)
}
}
return
true
return
true
}
}
...
@@ -87,12 +130,18 @@ export const handleFooterClick = async () => {
...
@@ -87,12 +130,18 @@ export const handleFooterClick = async () => {
if
(
!
antiicingValidate
())
{
if
(
!
antiicingValidate
())
{
return
return
}
}
if
(
!
antiicing2Validate
())
{
return
}
//是否点击提交验证除冰/防冰用量
//是否点击提交验证除冰/防冰用量
if
(
!
deicingFlag
.
value
&&
formData
.
deicingQuantityTotal
>
0
)
{
if
(
!
deicingFlag
.
value
&&
formData
.
deicingQuantityTotal
>
0
)
{
return
uni
.
$mocpMessage
.
warning
(
'请提交除冰记录'
)
return
uni
.
$mocpMessage
.
warning
(
'请提交除冰记录'
)
}
}
if
(
!
antiicingFlag
.
value
&&
formData
.
antiicingQuantityTotal
>
0
)
{
if
(
!
antiicingFlag
.
value
&&
formData
.
antiicingQuantityTotal
>
0
)
{
return
uni
.
$mocpMessage
.
warning
(
'请提交防冰记录'
)
return
uni
.
$mocpMessage
.
warning
(
'请提交防冰记录1'
)
}
if
(
!
antiicing2Flag
.
value
&&
formData
.
antiicing2QuantityTotal
>
0
)
{
return
uni
.
$mocpMessage
.
warning
(
'请提交防冰记录2'
)
}
}
uni
.
$mocpJump
.
navigateTo
(
'/panel/electronicBill/deicing/sign'
)
uni
.
$mocpJump
.
navigateTo
(
'/panel/electronicBill/deicing/sign'
)
}
}
...
@@ -179,6 +228,20 @@ export const submitAntiicing = () => {
...
@@ -179,6 +228,20 @@ export const submitAntiicing = () => {
}
}
}
}
}
}
export
const
submitAntiicing2
=
()
=>
{
if
(
!
antiicing2Validate
())
{
return
}
const
limit
=
getLimit
()
if
(
formData
.
antiicing2QuantityTotal
&&
formData
.
antiicing2QuantityTotal
>
0
)
{
if
(
formData
.
antiicing2QuantityTotal
>
limit
[
1
])
{
showAntiicing2
.
value
=
true
}
else
{
antiicing2Flag
.
value
=
true
showToast
(
'提交成功'
)
}
}
}
export
const
confirmAntiicing
=
()
=>
{
export
const
confirmAntiicing
=
()
=>
{
if
(
!
formData
.
antiicingRemark
)
{
if
(
!
formData
.
antiicingRemark
)
{
return
showToast
(
'请填写超量使用原因'
)
return
showToast
(
'请填写超量使用原因'
)
...
@@ -190,3 +253,14 @@ export const confirmAntiicing = () => {
...
@@ -190,3 +253,14 @@ export const confirmAntiicing = () => {
antiicingFlag
.
value
=
true
antiicingFlag
.
value
=
true
showAntiicing
.
value
=
false
showAntiicing
.
value
=
false
}
}
export
const
confirmAntiicing2
=
()
=>
{
if
(
!
formData
.
antiicing2Remark
)
{
return
showToast
(
'请填写超量使用原因'
)
}
if
(
!
formData
.
antiicing2File
)
{
return
showToast
(
'至少上传一张图片'
)
}
showToast
(
'提交成功'
)
antiicing2Flag
.
value
=
true
showAntiicing2
.
value
=
false
}
pages/modules/mocp/panel/electronicBill/deicing/constants/sign.functionals.js
View file @
767fc66f
...
@@ -100,6 +100,32 @@ export const resetData = () => {
...
@@ -100,6 +100,32 @@ export const resetData = () => {
antiicingUnit2
:
''
,
antiicingUnit2
:
''
,
antiicingUnit3
:
''
,
antiicingUnit3
:
''
,
antiicingUnit4
:
''
,
antiicingUnit4
:
''
,
antiicing2CartNo1
:
''
,
antiicing2CartNo2
:
''
,
antiicing2CartNo3
:
''
,
antiicing2CartNo4
:
''
,
antiicing2Duration
:
''
,
antiicing2EndTime
:
''
,
antiicing2Mix
:
'100:0'
,
antiicing2Mix1
:
undefined
,
antiicing2Mix2
:
undefined
,
antiicing2Persion1
:
''
,
antiicing2Persion2
:
''
,
antiicing2Persion3
:
''
,
antiicing2Persion4
:
''
,
antiicing2Quantity1
:
undefined
,
antiicing2Quantity2
:
undefined
,
antiicing2Quantity3
:
undefined
,
antiicing2Quantity4
:
undefined
,
antiicing2QuantityTotal
:
undefined
,
antiicing2StartTime
:
''
,
antiicing2Type
:
''
,
antiicing2Unit1
:
''
,
antiicing2Unit2
:
''
,
antiicing2Unit3
:
''
,
antiicing2Unit4
:
''
,
customerSignImg
:
''
,
customerSignImg
:
''
,
date
:
Day
().
valueOf
(),
date
:
Day
().
valueOf
(),
deicingCartNo1
:
''
,
deicingCartNo1
:
''
,
...
@@ -143,7 +169,9 @@ export const resetData = () => {
...
@@ -143,7 +169,9 @@ export const resetData = () => {
deicingFile
:
''
,
deicingFile
:
''
,
deicingRemark
:
''
,
deicingRemark
:
''
,
antiicingFile
:
''
,
antiicingFile
:
''
,
antiicingRemark
:
''
antiicingRemark
:
''
,
antiicing2File
:
''
,
antiicing2Remark
:
''
})
})
showDeicing
.
value
=
false
showDeicing
.
value
=
false
showAntiicing
.
value
=
false
showAntiicing
.
value
=
false
...
...
pages/modules/mocp/panel/electronicBill/deicing/list.vue
View file @
767fc66f
...
@@ -47,12 +47,14 @@ import useBaseStore from 'mocp/store/base'
...
@@ -47,12 +47,14 @@ import useBaseStore from 'mocp/store/base'
import
useUserStore
from
'mocp/store/user'
import
useUserStore
from
'mocp/store/user'
import
{
ref
}
from
'vue'
import
{
ref
}
from
'vue'
import
{
onUnload
}
from
'@dcloudio/uni-app'
import
{
onUnload
}
from
'@dcloudio/uni-app'
import
{
formData
}
from
'./constants/add.compositions'
import
{
antiicingFile
,
deicingFile
,
formData
}
from
'./constants/add.compositions'
const
baseStore
=
useBaseStore
()
const
baseStore
=
useBaseStore
()
const
userStore
=
useUserStore
()
const
userStore
=
useUserStore
()
const
goDetails
=
(
data
)
=>
{
const
goDetails
=
(
data
)
=>
{
Object
.
assign
(
formData
,
data
)
Object
.
assign
(
formData
,
data
)
deicingFile
.
value
=
data
.
deicingFileList
antiicingFile
.
value
=
data
.
antiicingFileList
uni
.
$mocpJump
.
navigateTo
(
'/panel/electronicBill/deicing/add'
)
uni
.
$mocpJump
.
navigateTo
(
'/panel/electronicBill/deicing/add'
)
}
}
//刷新
//刷新
...
...
pages/modules/mocp/panel/electronicBill/deicing/sign.vue
View file @
767fc66f
...
@@ -34,7 +34,6 @@ import { useDrawSignature } from 'mocp/hooks/use-sign/useSign'
...
@@ -34,7 +34,6 @@ import { useDrawSignature } from 'mocp/hooks/use-sign/useSign'
import
{
canvasImage
}
from
'./constants/sign.compositions'
import
{
canvasImage
}
from
'./constants/sign.compositions'
import
{
handleSubmit
}
from
'./constants/sign.functionals'
import
{
handleSubmit
}
from
'./constants/sign.functionals'
import
{
formData
}
from
'./constants/add.compositions'
import
{
formData
}
from
'./constants/add.compositions'
import
{
onBeforeUnmount
}
from
'vue'
import
{
onLoad
}
from
'@dcloudio/uni-app'
import
{
onLoad
}
from
'@dcloudio/uni-app'
const
{
isSigned
,
touchStart
,
touchMove
,
touchEnd
,
clear
,
getPath
}
=
useDrawSignature
(
'canvas'
,
{
const
{
isSigned
,
touchStart
,
touchMove
,
touchEnd
,
clear
,
getPath
}
=
useDrawSignature
(
'canvas'
,
{
...
@@ -59,10 +58,7 @@ const handleClear = () => {
...
@@ -59,10 +58,7 @@ const handleClear = () => {
canvasImage
.
value
=
''
canvasImage
.
value
=
''
clear
()
clear
()
}
}
onBeforeUnmount
(()
=>
{
handleClear
()
formData
.
customerSignImg
=
''
})
</
script
>
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
.mocp-sign
,
.mocp-sign
,
...
...
pages/modules/mocp/panel/electronicBill/nonRoutineWork/add.vue
View file @
767fc66f
...
@@ -150,13 +150,13 @@
...
@@ -150,13 +150,13 @@
<view
class=
"mocp-title"
>
特种车辆、设备、工具租用记录
</view>
<view
class=
"mocp-title"
>
特种车辆、设备、工具租用记录
</view>
<view
class=
"mocp-form"
>
<view
class=
"mocp-form"
>
<up-form-item
label=
"金工人员工时"
prop=
"jgrygs"
:borderBottom=
"true"
>
<up-form-item
label=
"金工人员工时"
prop=
"jgrygs"
:borderBottom=
"true"
>
<
global-number-input
v-model=
"formData.jgrygs"
placeholder=
"请输入(单位/小时)"
:precision=
"2"
></global-number
-input>
<
up-input
v-model=
"formData.jgrygs"
placeholder=
"请输入(人数*小时)"
inputAlign=
"right"
border=
"none"
clearable
></up
-input>
</up-form-item>
</up-form-item>
<up-form-item
label=
"普通工作梯(2米以下)"
prop=
"ptgzt"
:borderBottom=
"true"
>
<up-form-item
label=
"普通工作梯(2米以下)"
prop=
"ptgzt"
:borderBottom=
"true"
>
<global-number-input
v-model=
"formData.ptgzt"
placeholder=
"请输入(单位/次)"
></global-number-input>
<global-number-input
v-model=
"formData.ptgzt"
placeholder=
"请输入(单位/次)"
></global-number-input>
</up-form-item>
</up-form-item>
<up-form-item
label=
"高空工作梯(2米以上)"
prop=
"gkgzt"
:borderBottom=
"true"
>
<up-form-item
label=
"高空工作梯(2米以上)"
prop=
"gkgzt"
:borderBottom=
"true"
>
<global-number-input
v-model=
"formData.
l
kgzt"
placeholder=
"请输入(单位/次)"
></global-number-input>
<global-number-input
v-model=
"formData.
g
kgzt"
placeholder=
"请输入(单位/次)"
></global-number-input>
</up-form-item>
</up-form-item>
<up-form-item
label=
"机身千斤顶"
prop=
"jsqjd"
:borderBottom=
"true"
>
<up-form-item
label=
"机身千斤顶"
prop=
"jsqjd"
:borderBottom=
"true"
>
<global-number-input
v-model=
"formData.jsqjd"
placeholder=
"请输入(单位/次)"
></global-number-input>
<global-number-input
v-model=
"formData.jsqjd"
placeholder=
"请输入(单位/次)"
></global-number-input>
...
@@ -211,7 +211,7 @@
...
@@ -211,7 +211,7 @@
<global-number-input
v-model=
"formData.cydlgjcs"
placeholder=
"请输入(单位/次)"
></global-number-input>
<global-number-input
v-model=
"formData.cydlgjcs"
placeholder=
"请输入(单位/次)"
></global-number-input>
</up-form-item>
</up-form-item>
<up-form-item
label=
"NDT人员工时"
prop=
"ndtrygs"
:borderBottom=
"true"
>
<up-form-item
label=
"NDT人员工时"
prop=
"ndtrygs"
:borderBottom=
"true"
>
<
global-number-input
v-model=
"formData.ndtrygs"
placeholder=
"请输入(单位/小时)"
:precision=
"2"
></global-number
-input>
<
up-input
v-model=
"formData.ndtrygs"
placeholder=
"请输入(人数*小时)"
inputAlign=
"right"
border=
"none"
clearable
></up
-input>
</up-form-item>
</up-form-item>
<!-- NDT/孔探设备 -->
<!-- NDT/孔探设备 -->
<up-form-item
label=
"NDT/孔探设备"
:borderBottom=
"true"
></up-form-item>
<up-form-item
label=
"NDT/孔探设备"
:borderBottom=
"true"
></up-form-item>
...
...
pages/modules/mocp/panel/mco/step-back.vue
View file @
767fc66f
...
@@ -8,6 +8,13 @@
...
@@ -8,6 +8,13 @@
<up-cell
title=
"创建时间"
:value=
"timeStampFormat(getStepDetails.creationTime)"
></up-cell>
<up-cell
title=
"创建时间"
:value=
"timeStampFormat(getStepDetails.creationTime)"
></up-cell>
<up-cell
title=
"计划工时"
:value=
"getStepDetails.plannedWork"
></up-cell>
<up-cell
title=
"计划工时"
:value=
"getStepDetails.plannedWork"
></up-cell>
<up-cell
title=
"步骤描述"
:label=
"getStepDetails.stepContent || '无'"
></up-cell>
<up-cell
title=
"步骤描述"
:label=
"getStepDetails.stepContent || '无'"
></up-cell>
<up-cell
title=
"附件"
>
<template
#
label
>
<view
style=
"margin-top: 16rpx"
>
<global-upload
:fileList=
"getStepDetails.stepFile"
:showUpload=
"false"
></global-upload>
</view>
</
template
>
</up-cell>
</up-cell-group>
</up-cell-group>
</view>
</view>
<view
class=
"mocp-cell"
>
<view
class=
"mocp-cell"
>
...
...
pages/modules/mocp/panel/windDamageManagement/operateDetails.vue
View file @
767fc66f
...
@@ -66,6 +66,15 @@
...
@@ -66,6 +66,15 @@
<up-collapse-item
title=
"工作内容"
name=
"2"
>
<up-collapse-item
title=
"工作内容"
name=
"2"
>
<view
class=
"mocp-cell"
>
<view
class=
"mocp-cell"
>
<up-cell-group>
<up-cell-group>
<up-cell>
<
template
#
title
>
<view>
注:1-10、12条适用于航后及停场飞机(
<text
class=
"mocp-color-primary-7"
>
含长过站停场
</text>
)。11、12适用于过站运行的飞机。
</view>
</
template
>
</up-cell>
<up-cell
title=
"开始时间"
>
<up-cell
title=
"开始时间"
>
<
template
#
value
>
<
template
#
value
>
<global-date-picker
v-model=
"formData.startTime"
:disabled=
"getDisabled"
></global-date-picker>
<global-date-picker
v-model=
"formData.startTime"
:disabled=
"getDisabled"
></global-date-picker>
...
...
static/mocp/js/menu.js
View file @
767fc66f
...
@@ -226,7 +226,7 @@ export const menuList = ref([
...
@@ -226,7 +226,7 @@ export const menuList = ref([
default
:
false
,
default
:
false
,
count
:
0
,
count
:
0
,
url
:
'/panel/workSupervision/list'
,
url
:
'/panel/workSupervision/list'
,
apiPath
:
'
/terminalQualityManagement
'
apiPath
:
''
},
},
// 定检管理
// 定检管理
{
{
...
...
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