Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
mocp-uniapp
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
mocp-uniapp
Commits
1c0686af
Commit
1c0686af
authored
Jan 09, 2025
by
pangchong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 海技值班
parent
ef00b30b
Show whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
210 additions
and
187 deletions
+210
-187
src/mocp/api/dutyLog.js
+8
-32
src/mocp/hooks/use-dict/dict-data/dutyLog.js
+11
-0
src/mocp/hooks/use-dict/dict-data/index.js
+1
-0
src/mocp/store/dutyLog.js
+12
-24
src/mocp/utils/http.js
+2
-2
src/mocp/utils/tool.js
+2
-2
src/pages/modules/mocp/login/constants/index.compositions.js
+1
-1
src/pages/modules/mocp/login/index.vue
+7
-7
src/pages/modules/mocp/panel/dutyLog/constants/edit.compositions.js
+20
-29
src/pages/modules/mocp/panel/dutyLog/constants/edit.functionals.js
+22
-37
src/pages/modules/mocp/panel/dutyLog/details.vue
+20
-13
src/pages/modules/mocp/panel/dutyLog/edit.vue
+80
-19
src/pages/modules/mocp/panel/dutyLog/list.vue
+14
-12
src/pages/modules/mocp/panel/dutyLog/search.vue
+8
-8
src/static/mocp/js/menu.js
+2
-1
No files found.
src/mocp/api/dutyLog.js
View file @
1c0686af
import
{
post
,
http
}
from
'mocp/utils/http'
import
{
http
}
from
'mocp/utils/http'
export
const
unplanApplyList
Api
=
(
data
,
config
)
=>
{
export
const
getDutyLogDetail
Api
=
(
data
,
config
)
=>
{
return
http
({
method
:
'POST'
,
url
:
'/
workbench/unplanApply/unplanApplyList
'
,
url
:
'/
system/dutyLog/detail
'
,
data
,
config
})
}
export
const
addUnplanApplyApi
=
(
data
,
config
)
=>
{
return
post
({
method
:
'POST'
,
url
:
'/workbench/unplanApply/addUnplanApply'
,
data
,
config
})
}
export
const
checkPakgeNoApi
=
(
data
,
config
)
=>
{
export
const
getDutyLogListApi
=
(
data
,
config
)
=>
{
return
http
({
method
:
'POST'
,
url
:
'/
workbench/unplanApply/checkPakgeNo
'
,
url
:
'/
system/dutyLog/list
'
,
data
,
config
})
}
export
const
getUnplanApplyApi
=
(
data
,
config
)
=>
{
return
http
({
method
:
'POST'
,
url
:
'/workbench/unplanApply/getUnplanApply'
,
data
,
config
})
}
export
const
changeStatusApi
=
(
data
,
config
)
=>
{
return
http
({
method
:
'POST'
,
url
:
'/workbench/unplanApply/changeStatus'
,
data
,
config
})
}
export
const
changeExemptStatusApi
=
(
data
,
config
)
=>
{
export
const
updateDutyLogApi
=
(
data
,
config
)
=>
{
return
http
({
method
:
'POST'
,
url
:
'/
workbench/unplanApply/changeExemptStatus
'
,
url
:
'/
system/dutyLog/update
'
,
data
,
config
})
...
...
src/mocp/hooks/use-dict/dict-data/dutyLog.js
0 → 100644
View file @
1c0686af
// 建议以文件名首字母作为前缀dl_
export
const
dl_status
=
[
{
label
:
'已交班'
,
value
:
'JIAO_BAN'
},
{
label
:
'已接班'
,
value
:
'JIE_BAN'
},
{
label
:
'未交班'
,
value
:
'NO_JIAO_BAN'
}
]
export
const
dl_statusColor
=
[
{
label
:
'primary'
,
value
:
'JIAO_BAN'
},
{
label
:
'info'
,
value
:
'JIE_BAN'
},
{
label
:
'success'
,
value
:
'NO_JIAO_BAN'
}
]
src/mocp/hooks/use-dict/dict-data/index.js
View file @
1c0686af
...
...
@@ -17,3 +17,4 @@ export * from './engineeringEvaluation'
export
*
from
'./windDamageManagement'
export
*
from
'./inforDisclosure'
export
*
from
'./noPlan'
export
*
from
'./dutyLog'
src/mocp/store/dutyLog.js
View file @
1c0686af
import
{
get
UnplanApply
Api
}
from
'mocp/api/dutyLog'
import
{
get
DutyLogDetail
Api
}
from
'mocp/api/dutyLog'
import
{
defineStore
}
from
'pinia'
const
useDutyLogStore
=
defineStore
(
'dutyLog'
,
{
state
:
()
=>
{
return
{
searchData
:
{
applyStatus
:
''
,
packageNo
:
''
,
exemptStatus
:
null
,
sourceType
:
''
,
checkLevel
:
null
,
acType
:
''
,
airline
:
''
,
startTime
:
null
,
startTimeEnd
:
null
,
applyTimeStart
:
null
,
applyTimeEnd
:
null
dutyManagerUname
:
''
,
monitorLeaderUname
:
''
,
statusStr
:
''
,
dutyDateE
:
null
,
dutyDateS
:
null
},
id
:
''
,
details
:
undefined
...
...
@@ -25,7 +19,7 @@ const useDutyLogStore = defineStore('dutyLog', {
actions
:
{
async
getDetails
()
{
this
.
details
=
undefined
const
res
=
await
get
UnplanApply
Api
({
id
:
this
.
id
},
{
loading
:
true
})
const
res
=
await
get
DutyLogDetail
Api
({
id
:
this
.
id
},
{
loading
:
true
})
if
(
res
.
code
==
200
)
{
this
.
details
=
res
.
data
}
else
{
...
...
@@ -34,17 +28,11 @@ const useDutyLogStore = defineStore('dutyLog', {
},
resetForm
()
{
this
.
searchData
=
{
applyStatus
:
''
,
packageNo
:
''
,
exemptStatus
:
null
,
sourceType
:
''
,
checkLevel
:
null
,
acType
:
''
,
airline
:
''
,
startTime
:
null
,
startTimeEnd
:
null
,
applyTimeStart
:
null
,
applyTimeEnd
:
null
dutyManagerUname
:
''
,
monitorLeaderUname
:
''
,
statusStr
:
''
,
dutyDateE
:
null
,
dutyDateS
:
null
}
},
setState
(...
args
)
{
...
...
src/mocp/utils/http.js
View file @
1c0686af
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 = 'http://10.123.48.67/api' //Amms内网
const
baseURL
=
'https://hnaelbtest.hnatechnic.com/mocptest/api'
//内网
//
const baseURL = 'https://hnaelbtest.hnatechnic.com/mocptest/api' //内网
class
ServiceLoading
{
open
(
loading
)
{
...
...
src/mocp/utils/tool.js
View file @
1c0686af
...
...
@@ -3,8 +3,8 @@ import Day from './dayjs'
/**
* 时间戳格式化
* 1715072168340 => 2024-05-07 16:56:08
* format=YYYY/MM/DD HH:mm:ss
* 1715072168340 => 2024-05-07 16:56:08
星期二
* format=YYYY/MM/DD HH:mm:ss
dddd
*/
export
const
timeStampFormat
=
(
timeStamp
,
opt
)
=>
{
if
(
!
timeStamp
||
timeStamp
==
-
1
||
timeStamp
==
'-1'
||
timeStamp
==
0
||
timeStamp
==
'0'
)
{
...
...
src/pages/modules/mocp/login/constants/index.compositions.js
View file @
1c0686af
...
...
@@ -3,7 +3,7 @@ export const loginFormRef = ref()
//表单数据
export
const
loginForm
=
reactive
({
username
:
'devzj3'
,
//devzj3
password
:
'Ifar
_9527008
'
,
//Ifar_9527008 / Ifar2016_0525
password
:
'Ifar
2016_0525
'
,
//Ifar_9527008 / Ifar2016_0525
verifyCode
:
''
})
export
const
showLoad
=
ref
(
false
)
...
...
src/pages/modules/mocp/login/index.vue
View file @
1c0686af
...
...
@@ -76,13 +76,13 @@ const handleLogin = async () => {
loading
.
value
=
true
await
login
()
if
(
userStore
.
token
)
{
//
//
加入席位权限
//
await getUserSeatList()
//
if (userStore.seatId) {
//
await Promise.all([getSeatPermission(), getConfigData()])
//
} else {
//
userStore.setState('seatPermission', [])
//
}
//加入席位权限
await
getUserSeatList
()
if
(
userStore
.
seatId
)
{
await
Promise
.
all
([
getSeatPermission
(),
getConfigData
()])
}
else
{
userStore
.
setState
(
'seatPermission'
,
[])
}
//跳转工作台
uni
.
$mocpJump
.
redirectTo
(
'/tab/index'
)
}
...
...
src/pages/modules/mocp/panel/dutyLog/constants/edit.compositions.js
View file @
1c0686af
import
{
reactive
,
ref
}
from
'vue'
export
const
showAction
=
ref
(
false
)
export
const
formRef
=
ref
()
//验证
export
const
rules
=
reactive
({
packageNo
:
[
dutyManagerUid
:
[
{
required
:
true
,
message
:
'请
输入工作包号
'
,
message
:
'请
选择值班经理
'
,
trigger
:
[
'blur'
,
'change'
]
}
],
warningReason
:
[
monitorLeaderUid
:
[
{
required
:
true
,
message
:
'请
输入申请原因
'
,
message
:
'请
选择监察领导
'
,
trigger
:
[
'blur'
,
'change'
]
}
],
reason
:
[
successorManagerUid
:
[
{
required
:
true
,
message
:
'请
输入具体原因
'
,
message
:
'请
选择接班经理
'
,
trigger
:
[
'blur'
,
'change'
]
}
],
delayDay
:
[
{
required
:
true
,
type
:
'number'
,
message
:
'请输入延期天数'
,
trigger
:
[
'blur'
,
'change'
]
}
],
approver
:
[
{
required
:
true
,
message
:
'请选择审核人'
,
trigger
:
[
'blur'
]
}
]
})
// 表单数据
export
const
formData
=
reactive
({
packageNo
:
''
,
delayDay
:
''
,
approver
:
''
,
warningReason
:
''
,
materialDelay
:
'0'
,
materialPns
:
''
,
reason
:
''
,
delayDay
:
null
id
:
''
,
dutyManagerUname
:
''
,
dutyManagerUid
:
''
,
successorManagerUname
:
''
,
successorManagerUid
:
''
,
monitorLeaderUname
:
''
,
monitorLeaderUid
:
''
,
reportWork
:
''
,
importantFlight
:
''
,
meetingArrangementWork
:
''
,
handoverWork
:
''
,
dutyDate
:
undefined
,
dutyArea
:
''
})
src/pages/modules/mocp/panel/dutyLog/constants/edit.functionals.js
View file @
1c0686af
import
{
addUnplanApplyApi
,
checkPakgeNoApi
}
from
'mocp/api/unplanApply
'
import
{
formData
,
formRef
}
from
'./edit.compositions'
import
{
updateDutyLogApi
}
from
'mocp/api/dutyLog
'
import
{
formData
,
formRef
,
showAction
}
from
'./edit.compositions'
export
const
resetData
=
()
=>
{
Object
.
assign
(
formData
,
{
packageNo
:
''
,
delayDay
:
''
,
approver
:
''
,
warningReason
:
''
,
materialDelay
:
'0'
,
materialPns
:
''
,
reason
:
''
,
delayDay
:
null
id
:
''
,
dutyManagerUname
:
''
,
dutyManagerUid
:
''
,
successorManagerUname
:
''
,
successorManagerUid
:
''
,
monitorLeaderUname
:
''
,
monitorLeaderUid
:
''
,
reportWork
:
''
,
importantFlight
:
''
,
meetingArrangementWork
:
''
,
handoverWork
:
''
,
dutyDate
:
undefined
,
dutyArea
:
''
})
}
//验证包号
export
const
checkPakgeNo
=
async
(
packageNo
)
=>
{
if
(
!
packageNo
)
return
const
res
=
await
checkPakgeNoApi
({
packageNo
},
{
loading
:
'验证包号中...'
})
if
(
res
.
code
==
200
)
{
}
else
{
formData
.
packageNo
=
''
uni
.
$mocpMessage
.
error
(
res
.
message
)
}
}
export
const
addMaterialPns
=
()
=>
{
if
(
materialPns
.
value
.
length
>=
10
)
return
uni
.
$mocpMessage
.
warning
(
'缺件航材最多填写10个'
)
materialPns
.
value
.
push
(
''
)
export
const
handleRightClick
=
async
()
=>
{
await
formRef
.
value
?.
validate
()
showAction
.
value
=
true
}
//提交表单
export
const
handleSubmit
=
async
()
=>
{
export
const
handleSubmit
=
async
(
statusStr
)
=>
{
await
formRef
.
value
?.
validate
()
if
(
formData
.
materialDelay
==
'0'
)
{
formData
.
materialPns
=
''
}
else
{
const
materialPnsStr
=
materialPns
.
value
.
join
(
','
)
if
(
materialPnsStr
)
{
formData
.
materialPns
=
materialPnsStr
}
else
{
return
uni
.
$mocpMessage
.
error
(
'请输入缺件航材'
)
}
}
const
res
=
await
addUnplanApplyApi
(
formData
,
{
loading
:
true
})
const
res
=
await
updateDutyLogApi
({
...
formData
,
statusStr
},
{
loading
:
true
})
if
(
res
.
code
==
200
)
{
uni
.
$mocpJump
.
navigateBack
()
uni
.
$mocpMessage
.
success
(
res
.
message
)
uni
.
$emit
(
'unplanApplyReload'
)
uni
.
$emit
(
'dutyLogReload'
)
uni
.
$emit
(
'updateDutyLog'
)
}
else
{
uni
.
$mocpMessage
.
error
(
res
.
message
)
}
...
...
src/pages/modules/mocp/panel/dutyLog/details.vue
View file @
1c0686af
...
...
@@ -2,44 +2,46 @@
<global-page
title=
"海技值班详情"
showNavRight
navRightType=
"button"
@
handleRightClick=
"navigateTo('/panel/dutyLog/edit')"
>
<template
v-if=
"details"
>
<view
class=
"mocp-title"
>
<view
class=
"mocp-color-text-5 time"
>
2024-12-11 星期三
</view>
<global-tag
type=
"success"
>
未交班
</global-tag>
<view
class=
"mocp-color-text-5 time"
>
{{
timeStampFormat
(
details
.
dutyDate
,
{
format
:
'YYYY/MM/DD dddd'
}
)
}}
<
/view
>
<
global
-
tag
:
type
=
"useGetDictByValue('dl_statusColor', details.status)"
>
{{
useGetDictByValue
(
'dl_status'
,
details
.
status
)
}}
<
/global-tag
>
<
/view
>
<
view
class
=
"mocp-cell"
>
<
up
-
cell
-
group
>
<up-cell
title=
"值班经理"
:value=
"
useGetDictByValue('np_sourceType', details.sourceType)
"
></up-cell>
<up-cell
title=
"监察领导"
:value=
"details.
packageNo
|| '-'"
></up-cell>
<up-cell
title=
"接班经理"
:value=
"details.
packageNam
e || '-'"
></up-cell>
<
up
-
cell
title
=
"值班经理"
:
value
=
"
details.dutyManagerUname + details.dutyManagerPhone || '-'
"
><
/up-cell
>
<
up
-
cell
title
=
"监察领导"
:
value
=
"details.
monitorLeaderUname + details.monitorLeaderPhone
|| '-'"
><
/up-cell
>
<
up
-
cell
title
=
"接班经理"
:
value
=
"details.
successorManagerUname + details.successorManagerPhon
e || '-'"
><
/up-cell
>
<
/up-cell-group
>
<
/view
>
<
view
class
=
"mocp-cell"
>
<
up
-
cell
-
group
>
<
up
-
cell
title
=
"汇报工作"
>
<
template
#
label
>
{{
getParamNameByValue
(
'WarningReason'
,
details
.
warningReason
,
{
isArray
:
true
}
)
||
'-'
}}
<
text
>
{{
details
.
reportWork
||
'-'
}}
<
/text
>
<
/template
>
<
/up-cell
>
<
up
-
cell
title
=
"重要航班"
>
<
template
#
label
>
{{
getParamNameByValue
(
'WarningReason'
,
details
.
warningReason
,
{
isArray
:
true
}
)
||
'-'
}}
<
text
>
{{
details
.
importantFlight
||
'-'
}}
<
/text
>
<
/template
>
<
/up-cell
>
<
up
-
cell
title
=
"会议布置工作"
>
<
template
#
label
>
{{
getParamNameByValue
(
'WarningReason'
,
details
.
warningReason
,
{
isArray
:
true
}
)
||
'-'
}}
<
text
>
{{
details
.
meetingArrangementWork
||
'-'
}}
<
/text
>
<
/template
>
<
/up-cell
>
<
up
-
cell
title
=
"交接工作内容"
>
<
template
#
label
>
{{
getParamNameByValue
(
'WarningReason'
,
details
.
warningReason
,
{
isArray
:
true
}
)
||
'-'
}}
<
text
>
{{
details
.
handoverWork
||
'-'
}}
<
/text
>
<
/template
>
<
/up-cell
>
<
/up-cell-group
>
<
/view
>
<
view
class
=
"mocp-cell"
>
<
up
-
cell
-
group
>
<
up
-
cell
title
=
"交
接操作时间"
:
value
=
"timeStampFormat(details.create
Time) || '-'"
><
/up-cell
>
<
up
-
cell
title
=
"接班操作时间"
:
value
=
"timeStampFormat(details.
create
Time) || '-'"
><
/up-cell
>
<
up
-
cell
title
=
"交
班操作时间"
:
value
=
"timeStampFormat(details.jiaoBan
Time) || '-'"
><
/up-cell
>
<
up
-
cell
title
=
"接班操作时间"
:
value
=
"timeStampFormat(details.
jieBan
Time) || '-'"
><
/up-cell
>
<
/up-cell-group
>
<
/view
>
<
/template
>
...
...
@@ -49,8 +51,7 @@
<
script
setup
>
import
{
storeToRefs
}
from
'pinia'
import
{
useGetDictByValue
}
from
'mocp/hooks/use-dict/useDict'
import
{
getParamNameByValue
}
from
'mocp/hooks/use-params/useParams'
import
{
onLoad
}
from
'@dcloudio/uni-app'
import
{
onLoad
,
onUnload
}
from
'@dcloudio/uni-app'
import
{
timeStampFormat
}
from
'mocp/utils/tool'
import
useDutyLogStore
from
'mocp/store/dutyLog'
import
{
navigateTo
}
from
'mocp/utils/jump'
...
...
@@ -63,6 +64,12 @@ onLoad(() => {
dutyLogStore
.
setState
(
'id'
,
query
.
id
)
dutyLogStore
.
getDetails
()
}
)
uni
.
$on
(
'updateDutyLog'
,
()
=>
{
dutyLogStore
.
getDetails
()
}
)
onUnload
(()
=>
{
uni
.
$off
(
'updateDutyLog'
)
}
)
<
/script
>
<
style
lang
=
"scss"
scoped
>
.
mocp
-
title
{
...
...
src/pages/modules/mocp/panel/dutyLog/edit.vue
View file @
1c0686af
<
template
>
<global-page
title=
"海技值班详情"
showNavRight
navRightType=
"button"
navRightText=
"保存"
@
handleRightClick=
"handleSubmit"
>
<global-page
title=
"海技值班详情"
:showNavRight=
"checkPermi('/dutyLog/edit')"
navRightType=
"button"
navRightText=
"保存"
@
handleRightClick=
"handleRightClick"
>
<view
class=
"mocp-title"
>
<view
class=
"mocp-color-text-5 time"
>
2024-12-11 星期三
</view>
<global-tag
type=
"success"
>
未交班
</global-tag>
<view
class=
"mocp-color-text-5 time"
>
{{
timeStampFormat
(
formData
.
dutyDate
,
{
format
:
'YYYY/MM/DD dddd'
}
)
}}
<
/view
>
<
global
-
tag
:
type
=
"useGetDictByValue('dl_statusColor', formData.status)"
>
{{
useGetDictByValue
(
'dl_status'
,
formData
.
status
)
}}
<
/global-tag
>
<
/view
>
<
up
-
form
labelPosition
=
"left"
labelWidth
=
"auto"
:
model
=
"formData"
:
rules
=
"rules"
ref
=
"formRef"
>
<
view
class
=
"mocp-form"
>
<up-form-item
label=
"值班经理"
prop=
"approver"
:borderBottom=
"true"
required
>
<custom-admin-picker
pickAlign=
"right"
clearable
v-model=
"formData.approver"
></custom-admin-picker>
<
up
-
form
-
item
label
=
"值班经理"
prop
=
"dutyManagerUid"
:
borderBottom
=
"true"
required
>
<
custom
-
admin
-
picker
pickAlign
=
"right"
clearable
v
-
model
=
"formData.dutyManagerUid"
:
search
-
value
=
"formData.dutyManagerUname"
><
/custom-admin-picker
>
<
/up-form-item
>
<up-form-item
label=
"监察领导"
prop=
"approver"
:borderBottom=
"true"
required
>
<custom-admin-picker
pickAlign=
"right"
clearable
v-model=
"formData.approver"
></custom-admin-picker>
<
up
-
form
-
item
label
=
"监察领导"
prop
=
"monitorLeaderUid"
:
borderBottom
=
"true"
required
>
<
custom
-
admin
-
picker
pickAlign
=
"right"
clearable
v
-
model
=
"formData.monitorLeaderUid"
:
search
-
value
=
"formData.monitorLeaderUname"
><
/custom-admin-picker
>
<
/up-form-item
>
<up-form-item
label=
"接班经理"
prop=
"approver"
:borderBottom=
"true"
required
>
<custom-admin-picker
pickAlign=
"right"
clearable
v-model=
"formData.approver"
></custom-admin-picker>
<
up
-
form
-
item
label
=
"接班经理"
prop
=
"successorManagerUid"
:
borderBottom
=
"true"
required
>
<
custom
-
admin
-
picker
pickAlign
=
"right"
clearable
v
-
model
=
"formData.successorManagerUid"
:
search
-
value
=
"formData.successorManagerUname"
><
/custom-admin-picker
>
<
/up-form-item
>
<
/view
>
<
view
class
=
"mocp-form"
>
<up-form-item
label=
"汇报工作"
prop=
"re
ason"
:borderBottom=
"true"
labelPosition=
"top"
required
>
<up-textarea
placeholder=
"请输入"
:height=
"40"
border=
"none"
v-model=
"formData.re
ason
"
count
:maxlength=
"1000"
></up-textarea>
<
up
-
form
-
item
label
=
"汇报工作"
prop
=
"re
portWork"
:
borderBottom
=
"true"
labelPosition
=
"top"
>
<
up
-
textarea
placeholder
=
"请输入"
:
height
=
"40"
border
=
"none"
v
-
model
=
"formData.re
portWork
"
count
:
maxlength
=
"1000"
><
/up-textarea
>
<
/up-form-item
>
<
/view
>
<
view
class
=
"mocp-form"
>
<up-form-item
label=
"重要航班"
prop=
"reason"
:borderBottom=
"true"
labelPosition=
"top"
required
>
<up-textarea
placeholder=
"请输入"
:height=
"40"
border=
"none"
v-model=
"formData.reason"
count
:maxlength=
"1000"
></up-textarea>
<
up
-
form
-
item
label
=
"重要航班"
prop
=
"importantFlight"
:
borderBottom
=
"true"
labelPosition
=
"top"
>
<
up
-
textarea
placeholder
=
"请输入"
:
height
=
"40"
border
=
"none"
v
-
model
=
"formData.importantFlight"
count
:
maxlength
=
"1000"
><
/up-textarea
>
<
/up-form-item
>
<
/view
>
<
view
class
=
"mocp-form"
>
<up-form-item
label=
"会议布置工作"
prop=
"reason"
:borderBottom=
"true"
labelPosition=
"top"
required
>
<up-textarea
placeholder=
"请输入"
:height=
"40"
border=
"none"
v-model=
"formData.reason"
count
:maxlength=
"1000"
></up-textarea>
<
up
-
form
-
item
label
=
"会议布置工作"
prop
=
"meetingArrangementWork"
:
borderBottom
=
"true"
labelPosition
=
"top"
>
<
up
-
textarea
placeholder
=
"请输入"
:
height
=
"40"
border
=
"none"
v
-
model
=
"formData.meetingArrangementWork"
count
:
maxlength
=
"1000"
><
/up-textarea
>
<
/up-form-item
>
<
/view
>
<
view
class
=
"mocp-form"
>
<up-form-item
label=
"交接工作内容"
prop=
"reason"
:borderBottom=
"true"
labelPosition=
"top"
required
>
<up-textarea
placeholder=
"请输入"
:height=
"40"
border=
"none"
v-model=
"formData.reason"
count
:maxlength=
"1000"
></up-textarea>
<
up
-
form
-
item
label
=
"交接工作内容"
prop
=
"handoverWork"
:
borderBottom
=
"true"
labelPosition
=
"top"
>
<
up
-
textarea
placeholder
=
"请输入"
:
height
=
"40"
border
=
"none"
v
-
model
=
"formData.handoverWork"
count
:
maxlength
=
"1000"
><
/up-textarea
>
<
/up-form-item
>
<
/view
>
<
/up-form
>
<
global
-
action
-
sheet
v
-
model
=
"showAction"
:
options
=
"[
{ label: '未交班并保存', value: 'NO_JIAO_BAN'
}
,
{ label: '已交班并保存', value: 'JIAO_BAN'
}
,
{ label: '已接班保存', value: 'JIE_BAN'
}
]"
@
select
=
"handleSubmit"
><
/global-action-sheet
>
<
/global-page
>
<
/template
>
<
script
setup
>
import
{
onLoad
}
from
'@dcloudio/uni-app'
import
{
formData
,
formRef
,
rules
}
from
'./constants/edit.compositions'
import
{
handleSubmit
,
resetData
}
from
'./constants/edit.functionals'
import
{
storeToRefs
}
from
'pinia'
import
{
formData
,
formRef
,
rules
,
showAction
}
from
'./constants/edit.compositions'
import
{
handleSubmit
,
resetData
,
handleRightClick
}
from
'./constants/edit.functionals'
import
{
useGetDictByValue
}
from
'mocp/hooks/use-dict/useDict'
import
{
timeStampFormat
}
from
'mocp/utils/tool'
import
useDutyLogStore
from
'mocp/store/dutyLog'
import
{
checkPermi
}
from
'mocp/utils/permission'
const
dutyLogStore
=
useDutyLogStore
()
const
{
details
}
=
storeToRefs
(
dutyLogStore
)
onLoad
(()
=>
{
resetData
()
Object
.
assign
(
formData
,
details
.
value
)
}
)
<
/script
>
<
style
lang
=
"scss"
scoped
>
...
...
src/pages/modules/mocp/panel/dutyLog/list.vue
View file @
1c0686af
...
...
@@ -11,51 +11,53 @@
navRightType=
"icon"
navRightIcon=
"saixuan-01"
@
handleRightClick=
"handleRightClick"
:api=
"
unplanApply
ListApi"
:api=
"
getDutyLog
ListApi"
:padding=
"24"
>
<template
#
default=
"
{ item }">
<view
class=
"item"
:class=
"
{ 'wrong-class': item.applyStatus == '0' }" @tap="goDetails(item)">
<view
class=
"item-title"
>
<view
class=
"left"
>
2024-12-11
</view>
<view
class=
"left"
>
{{
timeStampFormat
(
item
.
dutyDate
,
{
format
:
'YYYY/MM/DD'
}
)
}}
<
/view
>
<
view
class
=
"right"
>
<global-tag
type=
"success"
>
未交班
</global-tag>
<
global
-
tag
:
type
=
"useGetDictByValue('dl_statusColor', item.status)"
>
{{
useGetDictByValue
(
'dl_status'
,
item
.
status
)
}}
<
/global-tag
>
<
/view
>
<
/view
>
<
view
class
=
"item-content"
>
<
view
class
=
"mocp-flex"
>
<
view
class
=
"mocp-color-text-3 flex-1"
>
<
view
>
值班经理:
<
/view
>
<view
class=
"u-line-1 mocp-color-text-5"
>
周琎
</view>
<
view
class
=
"u-line-1 mocp-color-text-5"
>
{{
item
.
dutyManagerUname
||
'-'
}}
<
/view
>
<
/view
>
<
view
class
=
"mocp-color-text-3 flex-1"
>
<
view
>
联系电话:
<
/view
>
<view
class=
"u-line-1 mocp-color-text-5"
>
15108535283
</view>
<
view
class
=
"u-line-1 mocp-color-text-5"
>
{{
item
.
dutyManagerPhone
||
'-'
}}
<
/view
>
<
/view
>
<
view
class
=
"mocp-color-text-3 flex-1"
>
<
view
>
监察领导:
<
/view
>
<view
class=
"u-line-1 mocp-color-text-5"
>
赵萸艳
</view>
<
view
class
=
"u-line-1 mocp-color-text-5"
>
{{
item
.
monitorLeaderUname
||
'-'
}}
<
/view
>
<
/view
>
<
/view
>
<
view
class
=
"mocp-list"
>
<
view
class
=
"mocp-color-text-3 mocp-item"
>
汇报工作:
<view
class=
"u-line-1 mocp-color-text-5"
>
2024年09月04日执行JD5705(海口-武汉)航班,在海口过站
</view>
<
view
class
=
"u-line-1 mocp-color-text-5"
>
{{
item
.
reportWork
}}
<
/view
>
<
/view
>
<
view
class
=
"mocp-color-text-3 mocp-item"
>
重要航班:
<view
class=
"u-line-1 mocp-color-text-5"
>
滑出后机组反馈1号刹车温度高,无警告信息
</view>
<
view
class
=
"u-line-1 mocp-color-text-5"
>
{{
item
.
importantFlight
}}
<
/view
>
<
/view
>
<
view
class
=
"mocp-color-text-3 mocp-item"
>
会议布置工作:
<
view
class
=
"u-line-1 mocp-color-text-5"
>
机组决定滑回处理,滑回后机组反映左起落架1号轮开刹车风扇基本不降温,核实一号刹车风扇不工作,处理中
{{
item
.
meetingArrangementWork
}}
<
/view
>
<
/view
>
<
view
class
=
"mocp-color-text-3 mocp-item"
>
交接工作内容:
<
view
class
=
"u-line-1 mocp-color-text-5"
>
对飞机有安全隐患梯架、设备在指定位置并与地面固定物系留,其中外单位梯架需通报机场和相关单位处理,并在未得到处理前安排人员进行监护
{{
item
.
handoverWork
}}
<
/view
>
<
/view
>
<
/view
>
...
...
@@ -69,10 +71,10 @@
import
{
ref
}
from
'vue'
import
{
storeToRefs
}
from
'pinia'
import
{
onUnload
}
from
'@dcloudio/uni-app'
import
{
getParamNameByValue
}
from
'mocp/hooks/use-params/useParams'
import
{
timeStampFormat
}
from
'mocp/utils/tool'
import
{
unplanApplyListApi
}
from
'mocp/api/dutyLog'
import
useDutyLogStore
from
'mocp/store/dutyLog'
import
{
getDutyLogListApi
}
from
'mocp/api/dutyLog'
import
{
useGetDictByValue
}
from
'mocp/hooks/use-dict/useDict'
//跳转
const
dutyLogStore
=
useDutyLogStore
()
...
...
src/pages/modules/mocp/panel/dutyLog/search.vue
View file @
1c0686af
<
template
>
<global-page-search
@
reset=
"handleReset"
@
confirm=
"handleConfirm"
>
<up-form
labelPosition=
"left"
labelWidth=
"auto"
>
<up-form-item
label=
"值班经理"
prop=
"
packageNo
"
:borderBottom=
"true"
>
<up-input
v-model=
"formData.
packageNo
"
inputAlign=
"right"
border=
"none"
placeholder=
"请输入"
clearable
></up-input>
<up-form-item
label=
"值班经理"
prop=
"
dutyManagerUname
"
:borderBottom=
"true"
>
<up-input
v-model=
"formData.
dutyManagerUname
"
inputAlign=
"right"
border=
"none"
placeholder=
"请输入"
clearable
></up-input>
</up-form-item>
<up-form-item
label=
"监察领导"
prop=
"
packageNo
"
:borderBottom=
"true"
>
<up-input
v-model=
"formData.
packageNo
"
inputAlign=
"right"
border=
"none"
placeholder=
"请输入"
clearable
></up-input>
<up-form-item
label=
"监察领导"
prop=
"
monitorLeaderUname
"
:borderBottom=
"true"
>
<up-input
v-model=
"formData.
monitorLeaderUname
"
inputAlign=
"right"
border=
"none"
placeholder=
"请输入"
clearable
></up-input>
</up-form-item>
<up-form-item
label=
"状态"
prop=
"
applyStatus
"
:borderBottom=
"true"
>
<global-picker
v-model=
"formData.
applyStatus"
pickAlign=
"right"
clearable
dictkey=
"np_applyS
tatus"
></global-picker>
<up-form-item
label=
"状态"
prop=
"
statusStr
"
:borderBottom=
"true"
>
<global-picker
v-model=
"formData.
statusStr"
pickAlign=
"right"
clearable
dictkey=
"dl_s
tatus"
></global-picker>
</up-form-item>
<up-form-item
label=
"值班日期"
:borderBottom=
"true"
>
<global-calendar
pickAlign=
"right"
v-model:startTime=
"formData.
startTime
"
v-model:endTime=
"formData.
startTimeEnd
"
v-model:startTime=
"formData.
dutyDateS
"
v-model:endTime=
"formData.
dutyDateE
"
clearable
></global-calendar>
</up-form-item>
...
...
src/static/mocp/js/menu.js
View file @
1c0686af
...
...
@@ -246,6 +246,7 @@ export const menuList = ref([
group
:
'定检管理'
,
default
:
false
,
count
:
0
,
url
:
'/panel/dutyLog/list'
url
:
'/panel/dutyLog/list'
,
apiPath
:
'/dutyLog'
}
])
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