Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gavel-oa-app
Project
Project
Details
Activity
Releases
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
李苏
gavel-oa-app
Commits
a16a9ee2
Commit
a16a9ee2
authored
Dec 10, 2024
by
李苏
💬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加工作流和节流搜索
parent
ff96ec7c
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
201 additions
and
98 deletions
+201
-98
config.service.js
common/service/config.service.js
+1
-1
index.vue
pages/kqgl/gzrb/gzrbxq/index.vue
+148
-73
index.vue
pages/kqgl/gzrb/index.vue
+37
-16
index.vue
pages/kqgl/gzrb/xjgzrb/index.vue
+13
-6
index.vue
pages/kqgl/gzrb/xzsj/index.vue
+1
-1
index.vue
pages/kqgl/gzrb/xzxm/index.vue
+1
-1
No files found.
common/service/config.service.js
View file @
a16a9ee2
...
...
@@ -2,7 +2,7 @@ let BASE_URL = ''
if
(
process
.
env
.
NODE_ENV
==
'development'
)
{
BASE_URL
=
'http://119.3.92.249:18080/dmg'
/* 开发环境*/
}
else
{
BASE_URL
=
'
/app
'
// 生产环境
BASE_URL
=
'
http://119.3.92.249:18080/dmg
'
// 生产环境
}
let
staticDomainURL
=
BASE_URL
+
'/sys/common/static'
;
...
...
pages/kqgl/gzrb/gzrbxq/index.vue
View file @
a16a9ee2
<
template
>
<view
class=
"bg-white"
>
<!--
退回的意见框
-->
<u-popup
style=
"border-radius: 40px;"
:show=
"show"
mode=
"center"
@
close=
'show=false'
>
<view
class=
"psdoalog"
>
<u-form>
<u-row>
<u-col
span=
"12"
>
<u-form-item
label=
"处理意见"
>
<u-textarea
v-model=
"comment"
></u-textarea>
</u-form-item>
</u-col>
</u-row>
</u-form>
<u-button
type=
"primary"
@
tap=
'clyj'
class=
"psbutton"
text=
"确定"
></u-button>
</view>
</u-popup>
<cu-custom
bgColor=
"bg-gradual-blue"
:isBack=
"true"
>
<block
slot=
"backText"
>
返回
</block>
<block
slot=
"content"
>
{{
$Route
.
meta
.
title
}}
</block>
</cu-custom>
<view
class=
"padding10 bt1"
>
<u-notify
ref=
"uNotify"
></u-notify>
<view
style=
"line-height: 34px;font-size: 17px;font-weight: 800;"
>
日报详情
</view>
...
...
@@ -35,113 +53,159 @@
{{
query
.
qzkhName
||
'无'
}}
</view>
</u-form-item>
<u-form-item
label=
"商机"
borderBottom
>
<u-form-item
label=
"商机
编码
"
borderBottom
>
<view
class=
"common-line"
>
{{
query
.
sjwh
Sjms
||
'无'
}}
{{
query
.
sjwh
Code
||
'无'
}}
</view>
</u-form-item>
<u-form-item
label=
"商机"
borderBottom
>
<u-textarea
autoHeight
disabled
:maxlength=
'1500'
v-model=
"query.sjwhSjms"
></u-textarea>
</u-form-item>
<u-form-item
label=
"工作内容"
borderBottom
>
<u-textarea
autoHeight
disabled
:maxlength=
'1500'
v-model=
"query.gznr"
></u-textarea>
<u-textarea
autoHeight
disabled
:maxlength=
'1500'
v-model=
"query.gznr"
></u-textarea>
</u-form-item>
<u-form-item
label=
"下一步计划"
borderBottom
>
<u-textarea
autoHeight
disabled
:maxlength=
'1500'
v-model=
"query.gzjh"
></u-textarea>
<u-textarea
autoHeight
disabled
:maxlength=
'1500'
v-model=
"query.gzjh"
></u-textarea>
</u-form-item>
</u-form>
<!-- 附件列表 -->
</u-form>
<!-- 附件列表 -->
</view>
<u-divider
text=
"事务操作"
></u-divider>
<!-- 提交退回工作流 -->
<view
class=
"padding10 flex"
>
<u-button
style=
"margin-right: 30px;margin-left: 30px;"
@
tap=
'swcz(1)'
type=
'primary'
text=
"提交"
></u-button>
<u-button
style=
"margin-right: 30px;margin-left: 30px;"
@
tap=
'swcz(2)'
type=
'warning'
text=
"退回"
></u-button>
</view>
</view>
</
template
>
<
script
>
export
default
{
async
onLoad
()
{
export
default
{
async
onLoad
(){
this
.
query
=
this
.
$Route
.
query
this
.
typeMap
=
await
this
.
$match
({
url
:
'kqgl/gzrb/init/type'
})
this
.
query
=
this
.
$Route
.
query
this
.
typeMap
=
await
this
.
$match
({
url
:
'kqgl/gzrb/init/type'
})
},
data
(){
return
{
typeMap
:{},
data
()
{
return
{
show
:
false
,
comment
:
''
,
typeMap
:
{},
onload
:
false
,
onload
:
false
,
/* 传递的信息 */
query
:{
query
:
{
},
/* 完成表单 */
rules
:{
sjwcsj
:[{
required
:
true
,
message
:
'请选择实际完成时间'
,
}],
wxwcjg
:[{
required
:
true
,
message
:
'请选择维修完成结果'
,
}],
sjgz
:[{
required
:
true
,
message
:
'请输入实际故障'
,
}],
wxfy
:[{
required
:
true
,
message
:
'请输入维修费用'
,
}]
rules
:
{
}
}
},
methods
:{
submit
(){
this
.
$refs
.
form
.
validate
().
then
(
res
=>
{
uni
.
showModal
({
title
:
'提示'
,
content
:
'是否继续操作。'
,
success
:
(
res
)
=>
{
if
(
res
.
confirm
)
{
let
attachments
=
[...
this
.
$refs
.
uploadimage
.
getList
(),...
this
.
$refs
.
uploadvideo
.
getList
()]
this
.
$post
(
'device/sbwx/wxysfk/addWxjg'
,
{
attachments
,
data
:
{
...
this
.
form
,
id
:
this
.
query
.
id
}
methods
:
{
async
swcz
(
wfoperate
)
{
uni
.
showModal
({
title
:
'提示'
,
content
:
'是否继续操作。'
,
success
:
async
(
res
)
=>
{
if
(
res
.
confirm
)
{
// 具体操作内容
const
wfdata
=
this
.
query
wfdata
.
wfoperate
=
wfoperate
let
userres
=
await
this
.
$post
(
'kqgl/gzrb/wfnextinfo'
,
wfdata
)
const
tjlist
=
userres
.
data
.
records
[
0
]
this
.
tjlist
=
tjlist
/* 提交 wfoperate=1 */
if
(
wfoperate
==
1
){
this
.
$post
(
'kqgl/gzrb/wfgo'
,
{
nextinfo
:
tjlist
,
records
:
[
wfdata
]
}).
then
(
res
=>
{
if
(
res
.
success
)
{
this
.
$tip
.
toast
(
'提交成功'
)
this
.
$refs
.
uploadimage
.
clearList
()
this
.
$refs
.
uploadvideo
.
clearList
()
/* 重置表单 */
this
.
$refs
.
form
.
resetFields
()
this
.
form
.
sjwcsj
=
new
Date
().
getTime
()
eventBus
.
$emit
(
'save'
);
uni
.
navigateBack
({
delta
:
1
});
this
.
btext
=
'继续提交'
this
.
$refs
.
uNotify
.
show
({
top
:
10
,
type
:
'success'
,
message
:
'操作成功!'
,
duration
:
1000
*
3
,
fontSize
:
14
,
safeAreaInsetTop
:
true
})
setTimeout
(()
=>
{
uni
.
navigateBack
({
delta
:
1
});
},
800
)
}
})
}
/* 2 wfgoback */
else
if
(
wfoperate
==
2
){
/* 弹出意见框 */
this
.
show
=
true
}
}
}
);
}
})
/* 根据wfoperatep判定提交退回 */
},
clyj
(){
if
(
this
.
comment
){
/* 提交退回 */
this
.
show
=
false
const
wfdata
=
this
.
query
const
tjlist
=
this
.
tjlist
tjlist
.
comment
=
this
.
comment
this
.
$post
(
'kqgl/gzrb/wfgoback'
,
{
nextinfo
:
tjlist
,
records
:
[
wfdata
]
}).
then
(
res
=>
{
if
(
res
.
success
)
{
this
.
$refs
.
uNotify
.
show
({
top
:
10
,
type
:
'success'
,
message
:
'操作成功!'
,
duration
:
1000
*
3
,
fontSize
:
14
,
safeAreaInsetTop
:
true
})
}
setTimeout
(()
=>
{
uni
.
navigateBack
({
delta
:
1
});
},
800
)
})
}
else
{
this
.
$tip
.
toast
(
'请输入退回意见'
)
}
}
},
computed
:{
attachmentsQueryParams
(){
computed
:
{
attachmentsQueryParams
()
{
return
{
groupid
:
this
.
query
.
lydjid
groupid
:
this
.
query
.
lydjid
}
}
}
...
...
@@ -150,5 +214,16 @@
}
</
script
>
<
style
lang=
"scss"
scoped
>
</
style
>
<
style
lang=
"scss"
scoped
>
.psdoalog
{
height
:
180px
;
width
:
80vw
;
padding
:
10px
;
padding-top
:
30px
;
position
:
relative
;
border-radius
:
30px
;
}
.psbutton
{
width
:
76px
;
height
:
29px
;
margin-top
:
5px
;
position
:
absolute
;
right
:
20px
;
bottom
:
10px
;
}
</
style
>
\ No newline at end of file
pages/kqgl/gzrb/index.vue
View file @
a16a9ee2
...
...
@@ -15,23 +15,28 @@
<u-form
:labelStyle=
"
<u-form
labelAlign=
'center'
:labelStyle=
"
{
fontSize:'13px'
}
"
labelWidth=
'45px'
>
<u-row>
<u-col
span=
"12"
>
<u-form-item
label=
"单号"
>
<u-input
class=
"ac-border search-input"
v-model=
"dwxQueryParams.djid"
></u-input>
<u-col
span=
"6"
>
<u-form-item
label=
"开始"
>
<ac-timeselect
height=
'25px'
v-model=
"dwxQueryParams.start"
></ac-timeselect>
</u-form-item>
</u-col>
<u-col
span=
"6"
>
<u-form-item
label=
"结束"
>
<ac-timeselect
height=
'25px'
v-model=
"dwxQueryParams.end"
></ac-timeselect>
</u-form-item>
</u-col>
</u-row>
<u-row>
<u-col
span=
"12"
>
<u-form-item
label=
"
状态
"
>
<ac-relselect
height=
'25px'
url=
'
kqgl/gzrb/init/zt'
v-model=
"dwxQueryParams.zt
"
></ac-relselect>
<u-form-item
label=
"
事务
"
>
<ac-relselect
height=
'25px'
url=
'
wf/common/wfstate'
v-model=
"dwxQueryParams.swlx
"
></ac-relselect>
</u-form-item>
</u-col>
</u-row>
...
...
@@ -45,15 +50,18 @@
</u-form-item>
</u-col>
<u-col
span=
"4"
>
<u-button
type=
"primary"
@
tap=
'dwxSearch'
class=
"search-button"
icon=
"search"
<u-button
throttle-time=
'1000'
type=
"primary"
@
tap=
'dwxSearch'
class=
"search-button"
icon=
"search"
text=
"搜索"
></u-button>
</u-col>
</u-row>
</u-form>
<!-- 待维修列表 -->
<view
class=
"padding10"
>
<ac-card
v-for=
"(item) in dwxList"
:key=
"item.id"
:title=
"'汇报单号:'+item.djid"
<ac-card
style=
"position: relative;"
v-for=
"(item) in dwxList"
:key=
"item.id"
:title=
"'汇报单号:'+item.djid"
:bottomLeftText=
"'汇报日期:'+$formatDate(item.ywrq) "
:bottomRightText=
"'创建人:'+item.cjr"
>
<view
style=
"position: absolute;right: 12px;top: 10px;font-size: 15px;font-weight: 700;color: #999;"
class=
"ac-card-value"
>
{{ztMap[item.zt] }}
</view>
<view
class=
"ac-card-item "
>
<view
class=
"ac-card-label"
>
考勤类型
...
...
@@ -70,14 +78,14 @@
{{item.gs}}天
</view>
</view>
<view
class=
"ac-card-item "
>
<!--
<view class="ac-card-item ">
<view class="ac-card-label">
状态
</view>
<view class="ac-card-value">
{{ztMap[item.zt] }}
</view>
</view>
</view>
-->
<
template
#
unique
>
<view
class=
"ac-card-item "
>
<view
class=
"ac-card-label"
>
...
...
@@ -87,6 +95,14 @@
{{
item
.
gcxmName
}}
</view>
</view>
<view
class=
"ac-card-item "
>
<view
class=
"ac-card-label"
>
工作内容
</view>
<view
class=
"ac-card-value"
>
{{
item
.
gznr
}}
</view>
</view>
<view
class=
"ac-card-item "
style=
"text-align: right;padding-right: 10px;padding-top: 0px;"
>
<text
@
tap=
'handleIt(item)'
class=
"tap"
>
详情
...
...
@@ -114,8 +130,10 @@
/* 待维修任务 */
dwxQueryParams
:
{
start
:
''
,
end
:
''
,
djid
:
''
,
zt
:
'
'
,
swlx
:
'W
'
,
pageSize
:
20
,
pageNo
:
1
},
...
...
@@ -153,11 +171,12 @@
})
},
dwxSearch
()
{
this
.
dwxQueryParams
.
pageNo
=
1
;
this
.
dwxList
=
[];
this
.
dwxToltal
=
0
this
.
apiGetDwxList
()
},
dwxLoadmore
()
{
this
.
dwxQueryParams
.
pageNo
++
...
...
@@ -176,12 +195,14 @@
},
},
onShow
()
{
console
.
log
(
uni
.
$u
.
throttle
)
this
.
dwxSearch
()
},
async
onLoad
()
{
uni
.
$on
(
'save'
,
()
=>
{
this
.
dwxSearch
()
})
this
.
apiGetDwxList
()
// this.apiGetDwxList()
this
.
ztMap
=
await
this
.
$match
({
url
:
'kqgl/gzrb/init/zt'
})
...
...
pages/kqgl/gzrb/xjgzrb/index.vue
View file @
a16a9ee2
...
...
@@ -31,14 +31,17 @@
v-model=
"form.qzkhid"
/>
</u-form-item>
<u-form-item
label=
"商机"
prop=
'sjwhid'
>
<u-form-item
label=
"商机
编码
"
prop=
'sjwhid'
>
<u-input
@
tap
.
native=
'xzsj'
readonly
class=
"ac-border"
style=
"height: 33px;"
border=
""
suffixIcon=
"search"
v-model=
"form.sjwhName"
></u-input>
suffixIcon=
"search"
v-model=
"form.sjwhCode"
></u-input>
</u-form-item>
<u-form-item
label=
"商机"
prop=
'sjwhSjms'
>
<u-textarea
disabled
:maxlength=
'1500'
v-model=
"form.sjwhSjms"
placeholder=
"请输入内容"
count
></u-textarea>
</u-form-item>
<u-form-item
label=
"商机描述"
>
<
!--
<
u-form-item
label=
"商机描述"
>
<u-textarea
:maxlength=
'1500'
v-model=
"form.sjwhSjms"
placeholder=
"请输入内容"
count
></u-textarea>
</u-form-item>
</u-form-item>
-->
<u-form-item
required
label=
"工作内容"
prop=
'gznr'
>
<u-textarea
:maxlength=
'1500'
v-model=
"form.gznr"
placeholder=
"请输入内容"
count
></u-textarea>
</u-form-item>
...
...
@@ -73,7 +76,6 @@
uni
.
getStorage
({
key
:
'mobile'
,
success
:
(
res
)
=>
{
console
.
log
(
res
)
this
.
form
.
hbrid
=
res
.
data
.
userid
}
});
...
...
@@ -83,7 +85,8 @@
})
uni
.
$on
(
'xzsj'
,
(
sjxx
)
=>
{
this
.
form
.
sjwhid
=
sjxx
.
id
this
.
form
.
sjwhName
=
sjxx
.
sjms
this
.
form
.
sjwhSjms
=
sjxx
.
sjms
this
.
form
.
sjwhCode
=
sjxx
.
code
})
},
onUnload
()
{
...
...
@@ -95,6 +98,9 @@
btext
:
'提交日报'
,
/* 表单信息 */
form
:
{
/* 退回意见 */
comment
:
''
,
sjwhCode
:
''
,
xmName
:
''
,
sjwhid
:
''
,
sjwhName
:
''
,
...
...
@@ -196,6 +202,7 @@
this
.
form
.
xmid
=
''
this
.
form
.
xmName
=
''
}
})
...
...
pages/kqgl/gzrb/xzsj/index.vue
View file @
a16a9ee2
...
...
@@ -47,7 +47,7 @@
</u-form-item>
</u-col>
<u-col
span=
"4"
>
<u-button
type=
"primary"
@
tap=
'dwxSearch'
class=
"search-button"
icon=
"search"
<u-button
type=
"primary"
throttle-time=
'1000'
@
tap=
'dwxSearch'
class=
"search-button"
icon=
"search"
text=
"搜索"
></u-button>
</u-col>
</u-row>
...
...
pages/kqgl/gzrb/xzxm/index.vue
View file @
a16a9ee2
...
...
@@ -47,7 +47,7 @@
</u-form-item>
</u-col>
<u-col
span=
"4"
>
<u-button
type=
"primary"
@
tap=
'dwxSearch'
class=
"search-button"
icon=
"search"
<u-button
type=
"primary"
throttle-time=
'1000'
@
tap=
'dwxSearch'
class=
"search-button"
icon=
"search"
text=
"搜索"
></u-button>
</u-col>
</u-row>
...
...
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