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
c8706357
Commit
c8706357
authored
Jul 15, 2024
by
pangchong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 代码功能完善
parent
e6b4a02d
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
317 additions
and
267 deletions
+317
-267
src/mocp/store/appraisal-record.js
+30
-0
src/mocp/store/assign-work.js
+29
-1
src/mocp/store/move-decision.js
+19
-11
src/mocp/store/technology-evaluation.js
+20
-11
src/mocp/store/user.js
+1
-1
src/pages.json
+7
-1
src/pages/modules/mocp/panel/appraisal-record/constants/edit.compositions.js
+0
-43
src/pages/modules/mocp/panel/appraisal-record/constants/edit.functionals.js
+0
-13
src/pages/modules/mocp/panel/appraisal-record/constants/search.compositions.js
+0
-18
src/pages/modules/mocp/panel/appraisal-record/constants/search.functionals.js
+0
-25
src/pages/modules/mocp/panel/appraisal-record/details.vue
+8
-7
src/pages/modules/mocp/panel/appraisal-record/edit-rqm-data.vue
+77
-0
src/pages/modules/mocp/panel/appraisal-record/edit-rqm-opinion.vue
+1
-1
src/pages/modules/mocp/panel/appraisal-record/list.vue
+4
-9
src/pages/modules/mocp/panel/appraisal-record/search.vue
+20
-4
src/pages/modules/mocp/panel/assign-work/details.vue
+0
-4
src/pages/modules/mocp/panel/assign-work/list.vue
+5
-7
src/pages/modules/mocp/panel/assign-work/search.vue
+16
-3
src/pages/modules/mocp/panel/move-decision/constants/search.compositions.js
+0
-12
src/pages/modules/mocp/panel/move-decision/constants/search.functionals.js
+0
-19
src/pages/modules/mocp/panel/move-decision/details.vue
+15
-15
src/pages/modules/mocp/panel/move-decision/list.vue
+4
-6
src/pages/modules/mocp/panel/move-decision/search.vue
+19
-3
src/pages/modules/mocp/panel/technology-evaluation/constants/list.scss
+4
-8
src/pages/modules/mocp/panel/technology-evaluation/constants/search.compositions.js
+0
-12
src/pages/modules/mocp/panel/technology-evaluation/constants/search.functionals.js
+0
-19
src/pages/modules/mocp/panel/technology-evaluation/list.vue
+11
-12
src/pages/modules/mocp/panel/technology-evaluation/search.vue
+27
-2
No files found.
src/mocp/store/appraisal-record.js
View file @
c8706357
...
...
@@ -4,6 +4,20 @@ import { defineStore } from 'pinia'
const
useAppraisalRecordStore
=
defineStore
(
'appraisalRecord'
,
{
state
:
()
=>
{
return
{
searchData
:
{
status
:
1
,
valid
:
null
,
department
:
''
,
appraisee
:
''
,
ac
:
null
,
acOwn
:
''
,
acType
:
''
,
startTime
:
null
,
stopTime
:
null
,
eventType
:
null
,
examineType
:
''
,
appealInfo
:
null
},
selectList
:
{
appraisee
:
[],
department
:
[],
...
...
@@ -35,6 +49,22 @@ const useAppraisalRecordStore = defineStore('appraisalRecord', {
uni
.
$mocpMessage
.
error
(
res
.
message
)
}
},
resetForm
()
{
this
.
searchData
=
{
status
:
1
,
valid
:
null
,
department
:
''
,
appraisee
:
''
,
ac
:
null
,
acOwn
:
''
,
acType
:
''
,
startTime
:
null
,
stopTime
:
null
,
eventType
:
null
,
examineType
:
''
,
appealInfo
:
null
}
},
setState
(...
args
)
{
this
.
$patch
({
[
args
[
0
]]:
args
[
1
]
})
}
...
...
src/mocp/store/assign-work.js
View file @
c8706357
...
...
@@ -13,6 +13,14 @@ const arrangeWorkExtendRouter = [
const
useAssignWorkStore
=
defineStore
(
'assignWork'
,
{
state
:
()
=>
{
return
{
searchData
:
{
state
:
null
,
presenter
:
''
,
seat
:
''
,
workType
:
1
,
startTime
:
null
,
stopTime
:
null
},
id
:
''
,
details
:
undefined
,
arrangeWorkExtendList
:
[],
//责任单位列表
...
...
@@ -111,11 +119,31 @@ const useAssignWorkStore = defineStore('assignWork', {
uni
.
$mocpMessage
.
error
(
res
.
message
)
}
},
resetForm
()
{
this
.
searchData
=
{
state
:
null
,
presenter
:
''
,
seat
:
''
,
workType
:
1
,
startTime
:
null
,
stopTime
:
null
}
},
setState
(...
args
)
{
this
.
$patch
({
[
args
[
0
]]:
args
[
1
]
})
}
},
// 配置持久化
persist
:
false
persist
:
{
// 调整为兼容多端的API
storage
:
{
setItem
(
key
,
value
)
{
uni
.
setStorageSync
(
key
,
value
)
},
getItem
(
key
)
{
return
uni
.
getStorageSync
(
key
)
}
}
}
})
export
default
useAssignWorkStore
src/mocp/store/move-decision.js
View file @
c8706357
...
...
@@ -3,6 +3,14 @@ import { defineStore } from 'pinia'
const
useMoveDecisionStore
=
defineStore
(
'moveDecision'
,
{
state
:
()
=>
{
return
{
searchData
:
{
state
:
1
,
presenter
:
''
,
seat
:
''
,
workType
:
null
,
startDateTime
:
null
,
endDateTime
:
null
},
details
:
undefined
}
},
...
...
@@ -12,21 +20,21 @@ const useMoveDecisionStore = defineStore('moveDecision', {
}
},
actions
:
{
resetForm
()
{
this
.
searchData
=
{
state
:
1
,
presenter
:
''
,
seat
:
''
,
workType
:
null
,
startDateTime
:
null
,
endDateTime
:
null
}
},
setState
(...
args
)
{
this
.
$patch
({
[
args
[
0
]]:
args
[
1
]
})
}
},
// 配置持久化
persist
:
{
// 调整为兼容多端的API
storage
:
{
setItem
(
key
,
value
)
{
uni
.
setStorageSync
(
key
,
value
)
},
getItem
(
key
)
{
return
uni
.
getStorageSync
(
key
)
}
}
}
persist
:
false
})
export
default
useMoveDecisionStore
src/mocp/store/technology-evaluation.js
View file @
c8706357
...
...
@@ -3,26 +3,35 @@ import { defineStore } from 'pinia'
const
useTechnologyEvaluationStore
=
defineStore
(
'technologyEvaluation'
,
{
state
:
()
=>
{
return
{
searchData
:
{
state
:
1
,
ac
:
''
,
model
:
''
,
ata
:
''
,
startDateTime
:
null
,
endDateTime
:
null
},
details
:
undefined
}
},
getters
:
{},
actions
:
{
resetForm
()
{
this
.
searchData
=
{
state
:
1
,
ac
:
''
,
model
:
''
,
aviation
:
''
,
ata
:
''
,
startDateTime
:
null
,
endDateTime
:
null
}
},
setState
(...
args
)
{
this
.
$patch
({
[
args
[
0
]]:
args
[
1
]
})
}
},
// 配置持久化
persist
:
{
// 调整为兼容多端的API
storage
:
{
setItem
(
key
,
value
)
{
uni
.
setStorageSync
(
key
,
value
)
},
getItem
(
key
)
{
return
uni
.
getStorageSync
(
key
)
}
}
}
persist
:
false
})
export
default
useTechnologyEvaluationStore
src/mocp/store/user.js
View file @
c8706357
...
...
@@ -8,7 +8,7 @@ const menuList = ref([
{
id
:
5
,
name
:
'技术评估'
,
icon
:
'jspg'
,
group
:
'技术支援'
,
count
:
0
,
url
:
'/panel/technology-evaluation/list'
},
{
id
:
6
,
name
:
'运行调查'
,
icon
:
'yxdc'
,
group
:
'维修控制'
,
count
:
0
},
{
id
:
7
,
name
:
'运行决策'
,
icon
:
'yxjc'
,
group
:
'维修控制'
,
count
:
0
,
url
:
'/panel/move-decision/list'
},
{
id
:
8
,
name
:
'布置工作'
,
icon
:
'bzgz'
,
group
:
'维修控制'
,
count
:
0
,
url
:
'/panel/assign-work/
list
'
},
{
id
:
8
,
name
:
'布置工作'
,
icon
:
'bzgz'
,
group
:
'维修控制'
,
count
:
0
,
url
:
'/panel/assign-work/
search
'
},
{
id
:
9
,
name
:
'航站管理'
,
icon
:
'hzgl'
,
group
:
'航站管理'
,
count
:
0
},
{
id
:
10
,
name
:
'协议单位'
,
icon
:
'xydw'
,
group
:
'航站管理'
,
count
:
0
},
{
id
:
11
,
name
:
'不正常事件'
,
icon
:
'bzcsj'
,
group
:
'运行品质'
,
count
:
0
},
...
...
src/pages.json
View file @
c8706357
...
...
@@ -75,12 +75,18 @@
}
},
{
"path"
:
"pages/modules/mocp/panel/appraisal-record/edit"
,
"path"
:
"pages/modules/mocp/panel/appraisal-record/edit
-rqm-opinion
"
,
"style"
:
{
"navigationBarTitleText"
:
""
}
},
{
"path"
:
"pages/modules/mocp/panel/appraisal-record/edit-rqm-data"
,
"style"
:
{
"navigationBarTitleText"
:
"申诉状态"
}
},
{
"path"
:
"pages/modules/mocp/panel/assign-work/list"
,
"style"
:
{
"navigationBarTitleText"
:
"布置工作"
...
...
src/pages/modules/mocp/panel/appraisal-record/constants/edit.compositions.js
deleted
100644 → 0
View file @
e6b4a02d
import
{
reactive
,
ref
}
from
'vue'
export
const
formRef
=
ref
()
export
const
fileList
=
ref
([])
// 校验规则
export
const
rules
=
reactive
({
eventTime
:
[
{
type
:
'number'
,
required
:
true
,
message
:
'请选择日期'
,
trigger
:
[
'blur'
,
'change'
]
}
]
})
// 表单数据
export
const
formData
=
reactive
({
id
:
''
,
ac
:
''
,
acOwn
:
''
,
acType
:
''
,
appealInfo
:
'-1'
,
appraisee
:
'-1'
,
department
:
'-1'
,
dmUid
:
'-1'
,
eventMsg
:
''
,
eventSource
:
''
,
eventTime
:
-
1
,
eventType
:
-
1
,
examineBasis
:
''
,
examineType
:
'-1'
,
onDutyUser
:
''
,
opinionMsg
:
''
,
opinionType
:
-
1
,
score
:
null
,
qmUid
:
''
,
qualityOpinionMsg
:
''
,
qualityOpinionType
:
-
1
,
status
:
''
,
emailSendTime
:
-
1
,
file
:
[]
})
src/pages/modules/mocp/panel/appraisal-record/constants/edit.functionals.js
deleted
100644 → 0
View file @
e6b4a02d
import
{
getAcReduceListApi
}
from
'mocp/api/base'
import
{
formData
}
from
'./edit.compositions'
//切换机号
export
const
changeAc
=
async
()
=>
{
const
res
=
await
getAcReduceListApi
({
ac
:
formData
.
ac
},
{
loading
:
true
})
if
(
res
.
code
==
200
)
{
formData
.
acOwn
=
res
.
data
[
0
]?.
zop3
formData
.
acType
=
res
.
data
[
0
]?.
zstortgc
}
else
{
uni
.
$mocpMessage
.
error
(
res
.
message
)
}
}
src/pages/modules/mocp/panel/appraisal-record/constants/search.compositions.js
deleted
100644 → 0
View file @
e6b4a02d
import
{
ref
}
from
'vue'
export
const
formRef
=
ref
()
// 表单数据
export
const
formData
=
ref
({
status
:
1
,
valid
:
null
,
department
:
''
,
appraisee
:
''
,
ac
:
null
,
acOwn
:
''
,
acType
:
''
,
startTime
:
null
,
stopTime
:
null
,
eventType
:
null
,
examineType
:
''
,
appealInfo
:
null
})
src/pages/modules/mocp/panel/appraisal-record/constants/search.functionals.js
deleted
100644 → 0
View file @
e6b4a02d
import
{
toRaw
}
from
'vue'
import
{
formData
,
formRef
}
from
'./search.compositions'
export
const
handleReset
=
()
=>
{
formData
.
value
=
{
status
:
1
,
valid
:
null
,
department
:
''
,
appraisee
:
''
,
ac
:
null
,
acOwn
:
''
,
acType
:
''
,
startTime
:
null
,
stopTime
:
null
,
eventType
:
null
,
examineType
:
''
,
appealInfo
:
null
}
formRef
.
value
?.
resetFields
()
handleConfirm
()
}
export
const
handleConfirm
=
()
=>
{
uni
.
$mocpJump
.
navigateBack
()
uni
.
$emit
(
'appraisalRecordReload'
,
{
params
:
toRaw
(
formData
.
value
)
})
}
src/pages/modules/mocp/panel/appraisal-record/details.vue
View file @
c8706357
...
...
@@ -53,7 +53,7 @@
<
/view
>
<
/view
>
<
custom
-
card
-
details
title
=
"公司值班
信息
"
title
=
"公司值班
经理意见
"
showfooter
:
idcard
=
"details.dmName"
:
calendar
=
"details.optionSaveTime"
...
...
@@ -68,7 +68,7 @@
<
custom
-
card
-
details
-
item
label
=
"公司值班经理意见描述"
:
value
=
"details.dmMsg || '-'"
><
/custom-card-details-item
>
<
/custom-card-details
>
<
custom
-
card
-
details
title
=
"品质中心
信息
"
title
=
"品质中心
经理意见
"
showfooter
:
idcard
=
"details.qmName"
:
calendar
=
"details.qualitySaveTime"
...
...
@@ -82,7 +82,7 @@
><
/custom-card-details-item
>
<
custom
-
card
-
details
-
item
label
=
"品质中心经理意见描述"
:
value
=
"details.qmMsg || '-'"
><
/custom-card-details-item
>
<
/custom-card-details
>
<
custom
-
card
-
details
title
=
"申诉状态"
titleIcon
=
"email"
>
<
custom
-
card
-
details
title
=
"申诉状态"
titleIcon
=
"email"
edit
@
handleAdd
=
"editRqmData()"
>
<
view
class
=
"appeal-status"
>
{{
useGetDictByValue
(
'ar_appealInfo'
,
details
.
appealInfo
)
}}
<
/view
>
<
global
-
upload
:
fileList
=
"getFileList"
:
showUpload
=
"false"
><
/global-upload
>
<
/custom-card-details
>
...
...
@@ -110,15 +110,16 @@ const handleAdd = (isDuty) => {
let
realName
=
''
if
(
isDuty
==
0
)
{
params
=
{
id
:
details
.
value
.
id
,
isDuty
,
mid
:
details
.
value
.
dmUid
,
opinionType
:
details
.
value
.
opinionType
,
msg
:
details
.
value
.
dmMsg
}
realName
=
details
.
value
.
dmName
}
else
{
params
=
{
id
:
details
.
value
.
id
,
isDuty
,
mid
:
details
.
value
.
qmUid
,
opinionType
:
details
.
value
.
qualityOpinionType
,
msg
:
details
.
value
.
qmMsg
}
realName
=
details
.
value
.
qmName
}
uni
.
$mocpJump
.
navigateTo
(
'/panel/appraisal-record/edit'
).
then
(()
=>
{
uni
.
$emit
(
'appraisalRecordEdit'
,
params
,
realName
)
uni
.
$mocpJump
.
navigateTo
(
'/panel/appraisal-record/edit
-rqm-opinion
'
).
then
(()
=>
{
uni
.
$emit
(
'appraisalRecord
Opinion
Edit'
,
params
,
realName
)
}
)
}
const
editRqmData
=
()
=>
{
uni
.
$mocpJump
.
navigateTo
(
'/panel/appraisal-record/edit-rqm-data'
)
}
<
/script
>
<
style
lang
=
"scss"
scoped
>
@
import
'./constants/details.scss'
;
...
...
src/pages/modules/mocp/panel/appraisal-record/edit-rqm-data.vue
0 → 100644
View file @
c8706357
<
template
>
<global-page
title=
"申诉状态"
showFooterBtn
@
handleFooterClick=
"handleSubmit"
>
<view
class=
"mocp-form"
>
<up-form
labelPosition=
"left"
labelWidth=
"auto"
:model=
"formData"
:rules=
"rules"
ref=
"formRef"
>
<up-form-item
label=
"申诉情况"
:borderBottom=
"true"
>
<global-picker
pickAlign=
"right"
dictkey=
"ar_appealInfo"
v-model=
"formData.appealInfo"
clearable
:emptyValue=
"-1"
></global-picker>
</up-form-item>
<up-form-item
label=
"申诉附件"
:borderBottom=
"true"
labelPosition=
"top"
>
<view
style=
"margin-top: 24rpx"
>
<global-upload
:fileList=
"getFileList"
v-model=
"formData.file"
></global-upload>
</view>
</up-form-item>
</up-form>
</view>
</global-page>
</
template
>
<
script
setup
>
import
{
onShow
}
from
'@dcloudio/uni-app'
import
useAppraisalRecordStore
from
'mocp/store/appraisal-record'
import
{
storeToRefs
}
from
'pinia'
import
{
updateRqmDataApi
}
from
'mocp/api/appraisal-record'
import
{
reactive
}
from
'vue'
import
{
cloneDeep
}
from
'lodash'
const
appraisalRecordStore
=
useAppraisalRecordStore
()
const
{
details
,
getFileList
}
=
storeToRefs
(
appraisalRecordStore
)
// 表单数据
const
formData
=
reactive
({
id
:
''
,
ac
:
''
,
acOwn
:
''
,
acType
:
''
,
appealInfo
:
'-1'
,
appraisee
:
'-1'
,
department
:
'-1'
,
dmUid
:
'-1'
,
eventMsg
:
''
,
eventSource
:
''
,
eventTime
:
-
1
,
eventType
:
-
1
,
examineBasis
:
''
,
examineType
:
'-1'
,
onDutyUser
:
''
,
opinionMsg
:
''
,
opinionType
:
-
1
,
score
:
null
,
qmUid
:
''
,
qualityOpinionMsg
:
''
,
qualityOpinionType
:
-
1
,
status
:
''
,
emailSendTime
:
-
1
,
file
:
[]
})
// 页面初始化
onShow
(()
=>
{
Object
.
assign
(
formData
,
cloneDeep
(
details
.
value
))
})
//提交表单
const
handleSubmit
=
async
()
=>
{
const
params
=
{
...
formData
,
file
:
JSON
.
stringify
(
formData
.
file
)
}
const
res
=
await
updateRqmDataApi
(
params
,
{
loading
:
true
})
if
(
res
.
code
==
200
)
{
uni
.
$mocpJump
.
navigateBack
()
appraisalRecordStore
.
getRqmDetails
()
uni
.
$mocpMessage
.
success
(
res
.
message
)
}
else
{
uni
.
$mocpMessage
.
error
(
res
.
message
)
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.mocp-form
{
background
:
#fff
;
padding
:
0
32
rpx
;
}
</
style
>
src/pages/modules/mocp/panel/appraisal-record/edit.vue
→
src/pages/modules/mocp/panel/appraisal-record/edit
-rqm-opinion
.vue
View file @
c8706357
...
...
@@ -58,7 +58,7 @@ const formData = reactive({
//获取下拉框列表
const
selectList
=
ref
([])
onLoad
(()
=>
{
uni
.
$once
(
'appraisalRecord
Edit'
,
(
data
,
realName
)
=>
{
uni
.
$once
(
'appraisalRecord
OpinionEdit'
,
(
data
)
=>
{
Object
.
assign
(
formData
,
data
)
baseStore
.
getAdminList
().
then
((
res
)
=>
{
selectList
.
value
=
res
...
...
src/pages/modules/mocp/panel/appraisal-record/list.vue
View file @
c8706357
...
...
@@ -4,7 +4,7 @@
isDataList
refresherEnabled
loadingMoreEnabled
:params=
"search
Params
"
:params=
"search
Data
"
:api=
"getRqmListApi"
auto
ref=
"paging"
...
...
@@ -37,6 +37,7 @@ import { ref } from 'vue'
import
{
getRqmListApi
}
from
'mocp/api/appraisal-record'
import
{
onLoad
,
onUnload
}
from
'@dcloudio/uni-app'
import
useAppraisalRecordStore
from
'mocp/store/appraisal-record'
import
{
storeToRefs
}
from
'pinia'
//跳转
const
goDetails
=
(
data
)
=>
{
...
...
@@ -46,6 +47,7 @@ const goDetails = (data) => {
}
//加载下拉框数据
const
appraisalRecordStore
=
useAppraisalRecordStore
()
const
{
searchData
}
=
storeToRefs
(
appraisalRecordStore
)
onLoad
(()
=>
{
appraisalRecordStore
.
getRqmOptions
()
})
...
...
@@ -53,15 +55,8 @@ onLoad(() => {
const
handleRightClick
=
()
=>
{
uni
.
$mocpJump
.
navigateTo
(
'/panel/appraisal-record/search'
)
}
//刷新
const
searchParams
=
ref
({
status
:
1
})
const
paging
=
ref
()
uni
.
$on
(
'appraisalRecordReload'
,
({
params
})
=>
{
if
(
params
)
{
searchParams
.
value
=
params
}
uni
.
$on
(
'appraisalRecordReload'
,
()
=>
{
paging
.
value
?.
reload
()
})
onUnload
(()
=>
{
...
...
src/pages/modules/mocp/panel/appraisal-record/search.vue
View file @
c8706357
<
template
>
<global-page
title=
"筛选"
>
<view
class=
"search-form"
>
<up-form
labelPosition=
"left"
labelWidth=
"auto"
:model=
"formData"
ref=
"formRef"
>
<up-form
labelPosition=
"left"
labelWidth=
"auto"
:model=
"formData"
>
<up-form-item
label=
"状态"
prop=
"status"
:borderBottom=
"true"
>
<global-picker
v-model=
"formData.status"
...
...
@@ -60,17 +60,33 @@
</template>
<
script
setup
>
import
{
formData
,
formRef
}
from
'./constants/search.compositions'
import
useBaseStore
from
'mocp/store/base'
import
useAppraisalRecordStore
from
'mocp/store/appraisal-record'
import
{
handleConfirm
,
handleReset
}
from
'./constants/search.functionals'
import
{
storeToRefs
}
from
'pinia'
import
{
cloneDeep
}
from
'lodash'
import
{
ref
}
from
'vue'
//获取下拉框选项
const
{
selectList
:
{
deviceNumList
}
}
=
useBaseStore
()
const
appraisalRecordStore
=
useAppraisalRecordStore
()
const
{
selectList
:
{
appraisee
,
department
}
}
=
useAppraisalRecordStore
()
}
=
appraisalRecordStore
//获取查询表单数据
const
{
searchData
}
=
storeToRefs
(
appraisalRecordStore
)
const
formData
=
ref
(
cloneDeep
(
searchData
.
value
))
const
handleReset
=
()
=>
{
appraisalRecordStore
.
resetForm
()
uni
.
$mocpJump
.
navigateBack
()
uni
.
$emit
(
'appraisalRecordReload'
)
}
const
handleConfirm
=
()
=>
{
appraisalRecordStore
.
setState
(
'searchData'
,
formData
.
value
)
uni
.
$mocpJump
.
navigateBack
()
uni
.
$emit
(
'appraisalRecordReload'
)
}
</
script
>
<
style
lang=
"scss"
scoped
>
.search-form
{
...
...
src/pages/modules/mocp/panel/assign-work/details.vue
View file @
c8706357
...
...
@@ -19,10 +19,6 @@
</view>
</view>
<view
class=
"details-header-center"
>
<view
class=
"left"
>
<global-icon
icon=
"mind-mapping"
></global-icon>
<global-field
class=
"txt"
label=
"工作台编号:"
:value=
"details.workbench || '-'"
></global-field>
</view>
<view
class=
"right"
>
<text>
{{
details
.
seat
}}
</text>
<text
class=
"txt"
>
{{
baseStore
.
getParamNameByValue
(
'LayoutWorkType'
,
details
.
workType
)
}}
</text>
...
...
src/pages/modules/mocp/panel/assign-work/list.vue
View file @
c8706357
...
...
@@ -6,7 +6,7 @@
loadingMoreEnabled
auto
ref=
"paging"
:params=
"search
Params
"
:params=
"search
Data
"
:api=
"getArrangeWorkListApi"
:padding=
"24"
showNavRight
...
...
@@ -52,6 +52,7 @@ import { getArrangeWorkListApi } from 'mocp/api/assign-work'
import
useAssignWorkStore
from
'mocp/store/assign-work'
import
{
onLoad
,
onUnload
}
from
'@dcloudio/uni-app'
import
{
ref
}
from
'vue'
import
{
storeToRefs
}
from
'pinia'
const
baseStore
=
useBaseStore
()
//加载下拉框数据
...
...
@@ -60,20 +61,17 @@ onLoad(() => {
assignWorkStore
.
getSeatUnit
()
}
)
//跳转
const
{
searchData
}
=
storeToRefs
(
assignWorkStore
)
const
goDetails
=
(
data
)
=>
{
uni
.
$mocpJump
.
navigateTo
(
'/panel/assign-work/details'
,
{
id
:
data
.
id
}
)
}
//筛选
const
handleRightClick
=
()
=>
{
uni
.
$mocpJump
.
navigate
To
(
'/panel/assign-work/search'
)
uni
.
$mocpJump
.
redirect
To
(
'/panel/assign-work/search'
)
}
//刷新
const
searchParams
=
ref
()
const
paging
=
ref
()
uni
.
$on
(
'assignWorkReload'
,
({
params
}
)
=>
{
if
(
params
)
{
searchParams
.
value
=
params
}
uni
.
$on
(
'assignWorkReload'
,
()
=>
{
paging
.
value
?.
reload
()
}
)
onUnload
(()
=>
{
...
...
src/pages/modules/mocp/panel/assign-work/search.vue
View file @
c8706357
...
...
@@ -31,7 +31,6 @@
pickAlign=
"right"
:options=
"baseStore.getParamsByType('LayoutWorkType')"
clearable
filter
></global-picker>
</up-form-item>
<up-form-item
label=
"开始日期"
:borderBottom=
"true"
>
...
...
@@ -58,14 +57,28 @@
</template>
<
script
setup
>
import
{
formData
,
formRef
}
from
'./constants/search.compositions'
import
useBaseStore
from
'mocp/store/base'
import
useAssignWorkStore
from
'mocp/store/assign-work'
import
{
handleConfirm
,
handleReset
}
from
'./constants/search.functionals'
import
{
storeToRefs
}
from
'pinia'
import
{
cloneDeep
}
from
'lodash'
import
{
ref
}
from
'vue'
//获取下拉框选项
const
assignWorkStore
=
useAssignWorkStore
()
const
baseStore
=
useBaseStore
()
//获取查询表单数据
const
{
searchData
}
=
storeToRefs
(
assignWorkStore
)
const
formData
=
ref
(
cloneDeep
(
searchData
.
value
))
const
handleReset
=
()
=>
{
assignWorkStore
.
resetForm
()
uni
.
$mocpJump
.
redirectTo
(
'/panel/assign-work/list'
)
uni
.
$emit
(
'assignWorkReload'
)
}
const
handleConfirm
=
()
=>
{
assignWorkStore
.
setState
(
'searchData'
,
formData
.
value
)
uni
.
$mocpJump
.
redirectTo
(
'/panel/assign-work/list'
)
uni
.
$emit
(
'assignWorkReload'
)
}
</
script
>
<
style
lang=
"scss"
scoped
>
.search-form
{
...
...
src/pages/modules/mocp/panel/move-decision/constants/search.compositions.js
deleted
100644 → 0
View file @
e6b4a02d
import
{
ref
}
from
'vue'
export
const
formRef
=
ref
()
// 表单数据
export
const
formData
=
ref
({
state
:
null
,
presenter
:
''
,
seat
:
''
,
workType
:
null
,
startDateTime
:
null
,
endDateTime
:
null
})
src/pages/modules/mocp/panel/move-decision/constants/search.functionals.js
deleted
100644 → 0
View file @
e6b4a02d
import
{
toRaw
}
from
'vue'
import
{
formData
,
formRef
}
from
'./search.compositions'
export
const
handleReset
=
()
=>
{
formData
.
value
=
{
state
:
null
,
presenter
:
''
,
seat
:
''
,
workType
:
null
,
startTime
:
null
,
stopTime
:
null
}
formRef
.
value
?.
resetFields
()
handleConfirm
()
}
export
const
handleConfirm
=
()
=>
{
uni
.
$mocpJump
.
navigateBack
()
uni
.
$emit
(
'moveDecisionReload'
,
{
params
:
toRaw
(
formData
.
value
)
})
}
src/pages/modules/mocp/panel/move-decision/details.vue
View file @
c8706357
...
...
@@ -63,21 +63,6 @@
</view>
</view>
<custom-card-details
title=
"公司值班经理意见"
showfooter
:idcard=
"details.approverUpdateName"
:calendar=
"details.approverUpdateTime"
edit
@
handleAdd=
"handleAdd('edit-approver')"
>
<custom-card-details-item
label=
"公司值班经理"
:value=
"details.approverName || '-'"
></custom-card-details-item>
<custom-card-details-item
label=
"公司值班经理意见"
:value=
"useGetDictByValue('md_decisionState', details.decisionState) || '-'"
></custom-card-details-item>
<custom-card-details-item
label=
"公司值班经理意见描述"
:value=
"details.decisionOpinion || '-'"
></custom-card-details-item>
</custom-card-details>
<custom-card-details
title=
"MCO主任意见"
showfooter
:idcard=
"details.mcoDirectorUpdateName"
...
...
@@ -92,6 +77,21 @@
></custom-card-details-item>
<custom-card-details-item
label=
"MCO主任意见描述"
:value=
"details.mcoDirectorOpinion || '-'"
></custom-card-details-item>
</custom-card-details>
<custom-card-details
title=
"公司值班经理意见"
showfooter
:idcard=
"details.approverUpdateName"
:calendar=
"details.approverUpdateTime"
edit
@
handleAdd=
"handleAdd('edit-approver')"
>
<custom-card-details-item
label=
"公司值班经理"
:value=
"details.approverName || '-'"
></custom-card-details-item>
<custom-card-details-item
label=
"公司值班经理意见"
:value=
"useGetDictByValue('md_decisionState', details.decisionState) || '-'"
></custom-card-details-item>
<custom-card-details-item
label=
"公司值班经理意见描述"
:value=
"details.decisionOpinion || '-'"
></custom-card-details-item>
</custom-card-details>
<view
class=
"time-list"
>
<view
class=
"time-item"
>
<global-field
label=
"填报人:"
:value=
"details.filledBy"
></global-field>
...
...
src/pages/modules/mocp/panel/move-decision/list.vue
View file @
c8706357
...
...
@@ -6,7 +6,7 @@
loadingMoreEnabled
auto
ref=
"paging"
:params=
"search
Params
"
:params=
"search
Data
"
showNavRight
navRightType=
"icon"
navRightIcon=
"saixuan-01"
...
...
@@ -47,10 +47,12 @@ import { timeStampFormat } from 'mocp/utils/tool'
import
{
getDecisionApi
}
from
'mocp/api/move-decision'
import
{
useGetDictByValue
}
from
'mocp/hooks/use-dict/useDict'
import
useMoveDecisionStore
from
'mocp/store/move-decision'
import
{
storeToRefs
}
from
'pinia'
import
{
onUnload
}
from
'@dcloudio/uni-app'
//跳转
const
moveDecisionStore
=
useMoveDecisionStore
()
const
{
searchData
}
=
storeToRefs
(
moveDecisionStore
)
const
goDetails
=
(
data
)
=>
{
uni
.
$mocpJump
.
navigateTo
(
'/panel/move-decision/details'
,
{
id
:
data
.
id
}
).
then
(()
=>
{
moveDecisionStore
.
setState
(
'details'
,
data
)
...
...
@@ -61,12 +63,8 @@ const handleRightClick = () => {
uni
.
$mocpJump
.
navigateTo
(
'/panel/move-decision/search'
)
}
//刷新
const
searchParams
=
ref
()
const
paging
=
ref
()
uni
.
$on
(
'moveDecisionReload'
,
({
params
}
)
=>
{
if
(
params
)
{
searchParams
.
value
=
params
}
uni
.
$on
(
'moveDecisionReload'
,
()
=>
{
paging
.
value
?.
reload
()
}
)
onUnload
(()
=>
{
...
...
src/pages/modules/mocp/panel/move-decision/search.vue
View file @
c8706357
<
template
>
<global-page
title=
"筛选"
>
<view
class=
"search-form"
>
<up-form
labelPosition=
"left"
labelWidth=
"auto"
:model=
"formData"
ref=
"formRef"
>
<up-form
labelPosition=
"left"
labelWidth=
"auto"
>
<up-form-item
label=
"状态"
prop=
"state"
:borderBottom=
"true"
>
<global-picker
v-model=
"formData.state"
pickAlign=
"right"
clearable
dictkey=
"md_state"
></global-picker>
</up-form-item>
...
...
@@ -72,15 +72,31 @@
</template>
<
script
setup
>
import
{
formData
,
formRef
}
from
'./constants/search.compositions'
import
useBaseStore
from
'mocp/store/base'
import
{
handleConfirm
,
handleReset
}
from
'./constants/search.functionals'
import
useMoveDecisionStore
from
'mocp/store/move-decision'
import
{
storeToRefs
}
from
'pinia'
import
{
cloneDeep
}
from
'lodash'
import
{
ref
}
from
'vue'
//获取下拉框选项
const
baseStore
=
useBaseStore
()
const
{
selectList
:
{
deviceNumList
}
}
=
useBaseStore
()
const
moveDecisionStore
=
useMoveDecisionStore
()
//获取查询表单数据
const
{
searchData
}
=
storeToRefs
(
moveDecisionStore
)
const
formData
=
ref
(
cloneDeep
(
searchData
.
value
))
const
handleReset
=
()
=>
{
moveDecisionStore
.
resetForm
()
uni
.
$mocpJump
.
navigateBack
()
uni
.
$emit
(
'moveDecisionReload'
)
}
const
handleConfirm
=
()
=>
{
moveDecisionStore
.
setState
(
'searchData'
,
formData
.
value
)
uni
.
$mocpJump
.
navigateBack
()
uni
.
$emit
(
'moveDecisionReload'
)
}
</
script
>
<
style
lang=
"scss"
scoped
>
.search-form
{
...
...
src/pages/modules/mocp/panel/technology-evaluation/constants/list.scss
View file @
c8706357
...
...
@@ -22,14 +22,10 @@
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
.label
{
margin-right
:
32rpx
;
.txt
{
margin-left
:
16rpx
;
}
&
:last-child
{
margin-right
:
0
;
}
.txt
{
color
:
$mocp-text-5
;
font-size
:
28rpx
;
margin-left
:
16rpx
;
}
}
}
...
...
src/pages/modules/mocp/panel/technology-evaluation/constants/search.compositions.js
deleted
100644 → 0
View file @
e6b4a02d
import
{
ref
}
from
'vue'
export
const
formRef
=
ref
()
// 表单数据
export
const
formData
=
ref
({
state
:
null
,
ac
:
''
,
model
:
''
,
ata
:
''
,
startDateTime
:
null
,
endDateTime
:
null
})
src/pages/modules/mocp/panel/technology-evaluation/constants/search.functionals.js
deleted
100644 → 0
View file @
e6b4a02d
import
{
toRaw
}
from
'vue'
import
{
formData
,
formRef
}
from
'./search.compositions'
export
const
handleReset
=
()
=>
{
formData
.
value
=
{
state
:
null
,
presenter
:
''
,
seat
:
''
,
workType
:
null
,
startTime
:
null
,
stopTime
:
null
}
formRef
.
value
?.
resetFields
()
handleConfirm
()
}
export
const
handleConfirm
=
()
=>
{
uni
.
$mocpJump
.
navigateBack
()
uni
.
$emit
(
'technologyEvaluationReload'
,
{
params
:
toRaw
(
formData
.
value
)
})
}
src/pages/modules/mocp/panel/technology-evaluation/list.vue
View file @
c8706357
...
...
@@ -6,7 +6,7 @@
loadingMoreEnabled
auto
ref=
"paging"
:params=
"search
Params
"
:params=
"search
Data
"
showNavRight
navRightType=
"icon"
navRightIcon=
"saixuan-01"
...
...
@@ -21,12 +21,11 @@
<custom-state
:value=
"useGetDictByValue('te_state', item.state)"
></custom-state>
</view>
<view
class=
"right"
>
<view
class=
"label"
>
<global-field
class=
"txt"
label=
"机号:"
:value=
"item.ac || '-'"
></global-field>
</view>
<view
class=
"label"
>
<global-field
class=
"txt"
label=
"机型:"
:value=
"item.model || '-'"
></global-field>
</view>
<text
class=
"txt u-line-1"
v-if=
"item.ac"
>
{{
item
.
ac
}}
</text>
<text
class=
"txt u-line-1"
v-if=
"item.model"
>
{{
item
.
model
}}
</text>
<text
class=
"txt u-line-1"
v-if=
"item.aviation"
>
{{
useGetDictByValue
(
''
,
item
.
aviation
,
{
data
:
baseStore
.
getAirlineSelect
}
)
}}
<
/text
>
<
/view
>
<
/view
>
<
view
class
=
"item-content u-line-3"
>
...
...
@@ -50,11 +49,15 @@ import { ref } from 'vue'
import
Day
from
'mocp/utils/dayjs'
import
{
useGetDictByValue
}
from
'mocp/hooks/use-dict/useDict'
import
useTechnologyEvaluationStore
from
'mocp/store/technology-evaluation'
import
useBaseStore
from
'mocp/store/base'
import
{
storeToRefs
}
from
'pinia'
import
{
onUnload
}
from
'@dcloudio/uni-app'
import
{
getTechnicalEvaluationApi
}
from
'mocp/api/technology-evaluation'
const
baseStore
=
useBaseStore
()
//跳转
const
technologyEvaluationStore
=
useTechnologyEvaluationStore
()
const
{
searchData
}
=
storeToRefs
(
technologyEvaluationStore
)
const
goDetails
=
(
data
)
=>
{
uni
.
$mocpJump
.
navigateTo
(
'/panel/technology-evaluation/details'
,
{
id
:
data
.
id
}
).
then
(()
=>
{
technologyEvaluationStore
.
setState
(
'details'
,
data
)
...
...
@@ -65,12 +68,8 @@ const handleRightClick = () => {
uni
.
$mocpJump
.
navigateTo
(
'/panel/technology-evaluation/search'
)
}
//刷新
const
searchParams
=
ref
()
const
paging
=
ref
()
uni
.
$on
(
'technologyEvaluationReload'
,
({
params
})
=>
{
if
(
params
)
{
searchParams
.
value
=
params
}
uni
.
$on
(
'technologyEvaluationReload'
,
()
=>
{
paging
.
value
?.
reload
()
}
)
onUnload
(()
=>
{
...
...
src/pages/modules/mocp/panel/technology-evaluation/search.vue
View file @
c8706357
...
...
@@ -11,6 +11,15 @@
<up-form-item
label=
"机型"
prop=
"model"
:borderBottom=
"true"
>
<global-picker
v-model=
"formData.model"
pickAlign=
"right"
:options=
"baseStore.getTypeSelect"
clearable
filter
></global-picker>
</up-form-item>
<up-form-item
label=
"航司"
prop=
"aviation"
:borderBottom=
"true"
>
<global-picker
v-model=
"formData.aviation"
pickAlign=
"right"
:options=
"baseStore.getAirlineSelect"
clearable
filter
></global-picker>
</up-form-item>
<up-form-item
label=
"ATA章节"
prop=
"ata"
:borderBottom=
"true"
>
<global-picker
v-model=
"formData.ata"
pickAlign=
"right"
:options=
"baseStore.getATASelect"
clearable
filter
></global-picker>
</up-form-item>
...
...
@@ -38,15 +47,31 @@
</template>
<
script
setup
>
import
{
formData
,
formRef
}
from
'./constants/search.compositions'
import
useBaseStore
from
'mocp/store/base'
import
{
handleConfirm
,
handleReset
}
from
'./constants/search.functionals'
import
useTechnologyEvaluationStore
from
'mocp/store/technology-evaluation'
import
{
storeToRefs
}
from
'pinia'
import
{
cloneDeep
}
from
'lodash'
import
{
ref
}
from
'vue'
//获取下拉框选项
const
baseStore
=
useBaseStore
()
const
{
selectList
:
{
deviceNumList
}
}
=
useBaseStore
()
const
technologyEvaluationStore
=
useTechnologyEvaluationStore
()
//获取查询表单数据
const
{
searchData
}
=
storeToRefs
(
technologyEvaluationStore
)
const
formData
=
ref
(
cloneDeep
(
searchData
.
value
))
const
handleReset
=
()
=>
{
technologyEvaluationStore
.
resetForm
()
uni
.
$mocpJump
.
navigateBack
()
uni
.
$emit
(
'technologyEvaluationReload'
)
}
const
handleConfirm
=
()
=>
{
technologyEvaluationStore
.
setState
(
'searchData'
,
formData
.
value
)
uni
.
$mocpJump
.
navigateBack
()
uni
.
$emit
(
'technologyEvaluationReload'
)
}
</
script
>
<
style
lang=
"scss"
scoped
>
.search-form
{
...
...
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