Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
data-collect
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wenyi.chen
data-collect
Commits
5d00424c
Commit
5d00424c
authored
Apr 02, 2024
by
cwy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
0402
parent
c349df84
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
1170 additions
and
3 deletions
+1170
-3
src/layout/navBars/tagsView/tagsView.vue
src/layout/navBars/tagsView/tagsView.vue
+1
-1
src/router/index.js
src/router/index.js
+1
-1
src/views/claimTasks/user/approved/details.vue
src/views/claimTasks/user/approved/details.vue
+310
-0
src/views/claimTasks/user/approved/index.vue
src/views/claimTasks/user/approved/index.vue
+267
-0
src/views/claimTasks/user/approved/modify.vue
src/views/claimTasks/user/approved/modify.vue
+432
-0
src/views/claimTasks/user/completed/index.vue
src/views/claimTasks/user/completed/index.vue
+1
-1
src/views/claimTasks/user/list/index.vue
src/views/claimTasks/user/list/index.vue
+3
-0
src/views/claimTasks/user/settled/index.vue
src/views/claimTasks/user/settled/index.vue
+155
-0
No files found.
src/layout/navBars/tagsView/tagsView.vue
View file @
5d00424c
...
...
@@ -531,7 +531,7 @@ onBeforeMount(() => {
// 监听布局配置开启 TagsView 共用,为了演示还原默认值
mittBus.on('openShareTagsView', () => {
if (getThemeConfig.value.isShareTagsView) {
router.push('/
home
');
router.push('/
claimTasks
');
state.tagsViewList = [];
state.tagsViewRoutesList.map((v) => {
if (v.meta?.isAffix && !v.meta.isHide) {
...
...
src/router/index.js
View file @
5d00424c
...
...
@@ -103,7 +103,7 @@ router.beforeEach(async (to, from, next) => {
Session
.
clear
();
NProgress
.
done
();
}
else
if
(
token
&&
to
.
path
===
'
/login
'
)
{
next
(
'
/
home
'
);
next
(
'
/
claimTasks
'
);
NProgress
.
done
();
}
else
{
const
storesRoutesList
=
useRoutesList
(
pinia
);
...
...
src/views/claimTasks/user/approved/details.vue
0 → 100644
View file @
5d00424c
This diff is collapsed.
Click to expand it.
src/views/claimTasks/user/approved/index.vue
0 → 100644
View file @
5d00424c
<
template
>
<div
class=
"system-menu-container"
>
<div
class=
"breadcrumb-box"
>
<Breadcrumb
/>
</div>
<div
class=
"header-search flex space-between"
>
<div>
<el-select
v-model=
"state.apiListParam.task_id"
placeholder=
"请选择任务"
size=
"default"
@
change=
"searchChange"
clearable
filterable
style=
"width:200px;margin-right: 20px;"
>
<el-option
v-for=
"(item, index) in state.taskList"
:key=
"index"
:label=
"item.name"
:value=
"item.id"
></el-option>
</el-select>
<el-select
v-model=
"state.apiListParam.norm_id"
placeholder=
"请选择指标"
size=
"default"
@
change=
"searchChange"
clearable
filterable
style=
"width:300px;margin-right: 20px;"
>
<el-option
v-for=
"(item, index) in state.normList"
:key=
"index"
:label=
"item.name"
:value=
"item.id"
></el-option>
</el-select>
<el-select
v-model=
"state.apiListParam.statusSelect"
placeholder=
"请选择状态"
size=
"default"
@
change=
"searchChange"
clearable
filterable
style=
"width:300px;margin-right: 20px;"
>
<el-option
v-for=
"(item, index) in state.statusList"
:key=
"index"
:label=
"item.name"
:value=
"item.value"
></el-option>
</el-select>
<el-input
class=
"search-item"
placeholder=
"输入指标名称"
v-model=
"state.apiListParam.name"
size=
"default"
style=
"width: 220px;"
clearable
@
change=
"searchChange()"
>
</el-input>
<el-button
size=
"default"
type=
"primary"
@
click=
"searchChange()"
>
查询
</el-button>
<el-button
size=
"default"
@
click=
"reset()"
>
重置
</el-button>
</div>
</div>
<div
class=
"page-main"
v-loading=
"state.tableData.loading"
ref=
"pageMain"
>
<el-card
shadow=
"hover"
style=
"height:100%;"
>
<el-table
:data=
"state.tableData.data"
style=
"width: 100%"
:height=
"state.tableHeight"
ref=
"multipleTableRef"
>
<el-table-column
label=
"序号"
type=
"index"
width=
"80"
show-overflow-tooltip
align=
"center"
></el-table-column>
<el-table-column
prop=
"norm_list_info.name"
label=
"指标名称"
show-overflow-tooltip
align=
"center"
>
</el-table-column>
<el-table-column
prop=
"norm_list_info.sort"
width=
"80"
label=
"优先级"
show-overflow-tooltip
align=
"center"
>
<template
#default
="
scope
"
>
<span
style=
"color: #909399;"
v-if=
"scope.row.norm_list_info.sort=='1'"
>
低
</span>
<span
style=
"color: #409EFF;"
v-if=
"scope.row.norm_list_info.sort=='2'"
>
中
</span>
<span
style=
"color: #F56C6C;"
v-if=
"scope.row.norm_list_info.sort=='3'"
>
高
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"norm_list_info.level"
width=
"100"
label=
"难度等级"
show-overflow-tooltip
align=
"center"
></el-table-column>
<el-table-column
prop=
"norm_list_info.refer"
label=
"信源"
show-overflow-tooltip
align=
"center"
>
<
template
#default=
"scope"
>
<el-link
type=
"danger"
v-if=
"checkUrl(scope.row.norm_list_info.refer)"
:href=
"scope.row.norm_list_info.refer"
target =
"_blank"
>
点击查看
</el-link>
<span
v-else
>
{{
scope
.
row
.
norm_list_info
.
refer
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"norm_list_info.price"
width=
"80"
label=
"单价"
show-overflow-tooltip
align=
"center"
></el-table-column>
<el-table-column
prop=
"status"
label=
"完成情况"
show-overflow-tooltip
align=
"center"
>
<
template
#default=
"scope"
>
<el-tag
type=
'warning'
v-if=
"scope.row.status==0"
effect=
"plain"
size=
"small"
>
已领取未填写
</el-tag>
<el-tag
type=
'success'
v-if=
"scope.row.status==1"
effect=
"plain"
size=
"small"
>
已完成未审核
</el-tag>
<el-tag
type=
'danger'
v-if=
"scope.row.status==2"
effect=
"plain"
size=
"small"
>
审核未通过
</el-tag>
<el-tag
type=
'warning'
v-if=
"scope.row.status==3"
effect=
"plain"
size=
"small"
>
已通过未结算
</el-tag>
<el-tag
type=
'info'
v-if=
"scope.row.status==4"
effect=
"plain"
size=
"small"
>
已结算
</el-tag>
</
template
>
</el-table-column>
<el-table-column
prop=
"not_collectible"
label=
"是否可采集"
show-overflow-tooltip
align=
"center"
>
<
template
#default=
"scope"
>
<span
style=
"color: #F56C6C"
v-if=
"scope.row.not_collectible==1"
effect=
"plain"
size=
"small"
>
{{
scope
.
row
.
not_collectible_remarks
}}
</span>
<span
style=
"color: #909399"
v-else
effect=
"plain"
size=
"small"
>
是
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"review_remarks"
label=
"审核备注"
show-overflow-tooltip
align=
"center"
>
<
template
#default=
"scope"
>
<span
style=
"color: #409EFF;"
effect=
"plain"
size=
"small"
>
{{
scope
.
row
.
review_remarks
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"review_time"
width=
"180"
label=
"审核时间"
show-overflow-tooltip
align=
"center"
>
<
template
#default=
"scope"
>
<span
effect=
"plain"
size=
"small"
>
{{
scope
.
row
.
review_time
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
width=
"350"
fixed=
"right"
align=
"center"
>
<
template
#default=
"scope"
>
<div
v-if=
"scope.row.status == 0 || scope.row.status == 1 || scope.row.status == 2"
>
<el-button
size=
"small"
@
click=
"modify(scope.row)"
type=
"primary"
>
修改信息
</el-button>
<el-button
size=
"small"
@
click=
"details(scope.row)"
>
查看信息
</el-button>
<el-button
size=
"small"
@
click=
"receive(scope.row.id)"
type=
"danger"
>
退回领取
</el-button>
</div>
<div
v-if=
"scope.row.status == 3 || scope.row.status == 4"
>
<el-button
size=
"small"
@
click=
"details(scope.row)"
>
查看信息
</el-button>
</div>
</
template
>
</el-table-column>
</el-table>
<div
class=
"pagination-box"
>
<el-pagination
@
size-change=
"onHandleSizeChange"
@
current-change=
"onHandleCurrentChange"
class=
"mt15"
:pager-count=
"5"
:page-sizes=
"[10, 20, 30]"
v-model:current-page=
"state.apiListParam.page"
background
v-model:page-size=
"state.apiListParam.limit"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"state.tableData.total"
>
</el-pagination>
</div>
</el-card>
</div>
<ModifyDialog
ref=
"ModifyDialogRef"
@
refresh=
"getList()"
/>
<DetailDialog
ref=
"DetailDialogRef"
@
refresh=
"getList()"
/>
</div>
</template>
<
script
setup
name=
"taskPackage-list"
>
import
{
getCurrentInstance
}
from
'
vue
'
;
import
{
claimTasksApi
}
from
'
/@/api/claimTasks/index
'
;
import
{
taskPackageApi
}
from
'
/@/api/taskPackage/index
'
;
import
{
normApi
}
from
'
/@/api/norm/index
'
;
import
{
ElMessageBox
,
ElMessage
}
from
'
element-plus
'
;
import
{
Session
}
from
'
/@/utils/storage
'
;
// 引入组件
const
Breadcrumb
=
defineAsyncComponent
(()
=>
import
(
'
/@/layout/navBars/breadcrumb/breadcrumb.vue
'
));
const
DetailDialog
=
defineAsyncComponent
(()
=>
import
(
'
/@/views/claimTasks/user/approved/details.vue
'
));
const
ModifyDialog
=
defineAsyncComponent
(()
=>
import
(
'
/@/views/claimTasks/user/approved/modify.vue
'
));
// 定义变量内容
const
DetailDialogRef
=
ref
()
// 定义变量内容
const
ModifyDialogRef
=
ref
()
const
state
=
reactive
({
// 查询列表参数
apiListParam
:
{
page
:
1
,
limit
:
10
,
name
:
''
,
status
:
'
2,3
'
,
task_id
:
''
,
order
:
'
asc
'
,
norm_id
:
''
,
statusSelect
:
''
,
},
// 任务领取参数
apiReceiveParam
:
{
id
:
''
,
},
tableData
:
{
data
:
[],
loading
:
false
,
total
:
0
},
tableHeight
:
'
30vh
'
,
normListExtend
:[],
testIndex
:
0
,
taskList
:[],
normList
:[],
statusList
:[{
name
:
'
审核通过
'
,
value
:
'
3
'
},{
name
:
'
审核不通过
'
,
value
:
'
2
'
}]
});
// 获取任务列表
const
getTaskList
=
()
=>
{
taskPackageApi
().
taskPackageList
({
page
:
-
1
,
limit
:
-
1
}).
then
(
res
=>
{
state
.
taskList
=
res
.
data
})
}
// 获取指标列表
const
getNormList
=
()
=>
{
normApi
().
normList
({
page
:
-
1
,
limit
:
-
1
}).
then
(
res
=>
{
state
.
normList
=
res
.
data
})
}
// 页面加载时
onMounted
(()
=>
{
getTaskList
()
getNormList
()
getList
()
state
.
tableHeight
=
getCurrentInstance
().
refs
.
pageMain
.
offsetHeight
-
130
-
52
+
"
px
"
;
});
//校验链接
const
checkUrl
=
(
vlaue
)
=>
{
if
(
/^https
?
:
\/\/
/
.
test
(
vlaue
))
{
return
true
;
}
else
{
return
false
;
}
}
/**
* 搜索按钮
*/
const
test
=
()
=>
{
return
state
.
testIndex
+
1
;
}
/**
* 搜索按钮
*/
const
searchChange
=
()
=>
{
state
.
apiListParam
.
page
=
1
getList
()
}
/**
* 重置按钮
*/
const
reset
=
()
=>
{
state
.
apiListParam
.
page
=
1
state
.
apiListParam
.
name
=
''
;
state
.
apiListParam
.
statusSelect
=
''
state
.
apiListParam
.
task_id
=
''
;
state
.
apiListParam
.
norm_id
=
''
;
getList
()
}
// 分页改变
const
onHandleSizeChange
=
(
val
)
=>
{
state
.
apiListParam
.
limit
=
val
;
getList
();
};
const
onHandleCurrentChange
=
(
val
)
=>
{
state
.
apiListParam
.
page
=
val
;
getList
();
};
// 获取列表
const
getList
=
()
=>
{
state
.
tableData
.
loading
=
true
claimTasksApi
().
normReceivesList
(
state
.
apiListParam
).
then
(
res
=>
{
state
.
tableData
.
loading
=
false
let
data
=
res
.
data
.
data
;
state
.
tableData
.
data
=
res
.
data
.
data
state
.
tableData
.
total
=
res
.
data
.
total
}).
catch
(()
=>
{
state
.
tableData
.
loading
=
false
})
}
/**
* 点击退回任务
*/
const
receive
=
(
id
)
=>
{
state
.
apiReceiveParam
.
id
=
id
claimTasksApi
().
normReceivesRevoke
(
state
.
apiReceiveParam
).
then
(
res
=>
{
ElMessage
.
success
(
'
任务退回成功!
'
);
getList
();
}).
catch
(()
=>
{
state
.
tableData
.
loading
=
false
getList
();
})
}
/**
* 修改任务
*/
const
details
=
(
data
)
=>
{
DetailDialogRef
.
value
.
openDialog
(
data
);
}
/**
* 修改任务
*/
const
modify
=
(
data
)
=>
{
ModifyDialogRef
.
value
.
openDialog
(
data
);
}
</
script
>
<
style
lang=
"scss"
scoped
>
.page-main
{
height
:
calc
(
100vh
-
50px
-
106px
);
}
</
style
>
src/views/claimTasks/user/approved/modify.vue
0 → 100644
View file @
5d00424c
This diff is collapsed.
Click to expand it.
src/views/claimTasks/user/completed/index.vue
View file @
5d00424c
...
...
@@ -109,7 +109,7 @@ const state = reactive({
page
:
1
,
limit
:
10
,
name
:
''
,
status
:
'
1
,2,3
'
,
status
:
'
1
'
,
task_id
:
''
,
order
:
'
asc
'
},
...
...
src/views/claimTasks/user/list/index.vue
View file @
5d00424c
...
...
@@ -114,6 +114,7 @@ const state = reactive({
// 结算任务
claimTasksParam
:[],
taskList
:[],
normList
:[],
});
// 获取任务列表
const
getTaskList
=
()
=>
{
...
...
@@ -189,6 +190,8 @@ const searchChange = () => {
const
reset
=
()
=>
{
state
.
apiListParam
.
page
=
1
state
.
apiListParam
.
name
=
''
;
state
.
apiListParam
.
task_id
=
''
;
state
.
apiListParam
.
norm_id
=
''
;
getList
()
}
...
...
src/views/claimTasks/user/settled/index.vue
0 → 100644
View file @
5d00424c
<
template
>
<div
class=
"system-menu-container"
>
<div
class=
"breadcrumb-box"
>
<Breadcrumb
/>
</div>
<div
class=
"page-main"
v-loading=
"state.tableData.loading"
ref=
"pageMain"
>
<el-card
shadow=
"hover"
style=
"height:100%;"
>
<el-table
:data=
"state.tableData.data"
border
style=
"width: 100%"
:height=
"state.tableHeight"
ref=
"multipleTableRef"
>
<el-table-column
label=
"序号"
type=
"index"
width=
"100"
show-overflow-tooltip
align=
"center"
></el-table-column>
<el-table-column
prop=
"userInfo.name"
label=
"用户名称"
show-overflow-tooltip
align=
"center"
>
<template
#default
="
scope
"
>
<span
style=
"color: #409EFF;"
>
{{
scope
.
row
.
userInfo
.
name
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"time"
label=
"结算时间"
show-overflow-tooltip
align=
"center"
>
<
template
#default=
"scope"
>
<span>
{{
scope
.
row
.
time
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"num"
label=
"数量"
show-overflow-tooltip
align=
"center"
></el-table-column>
<el-table-column
prop=
"amount"
label=
"总金额"
show-overflow-tooltip
align=
"center"
>
</el-table-column>
<el-table-column
prop=
"status"
label=
"状态"
show-overflow-tooltip
align=
"center"
>
<
template
#default=
"scope"
>
<span
style=
"color: #909399;"
v-if=
"scope.row.status=='0'"
>
未确认
</span>
<span
style=
"color: #409EFF;"
v-if=
"scope.row.status=='1'"
>
已确认
</span>
<span
style=
"color: #F56C6C;"
v-if=
"scope.row.status=='2'"
>
确认收款
</span>
</
template
>
</el-table-column>
<!-- <el-table-column label="操作" width="300" fixed="right" align="center">
<template #default="scope">
<el-button size="small" @click="details(scope.row.id)">查看详情</el-button>
</template>
</el-table-column> -->
</el-table>
<div
class=
"pagination-box"
>
<el-pagination
@
size-change=
"onHandleSizeChange"
@
current-change=
"onHandleCurrentChange"
class=
"mt15"
:pager-count=
"5"
:page-sizes=
"[10, 20, 30]"
v-model:current-page=
"state.apiListParam.page"
background
v-model:page-size=
"state.apiListParam.limit"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"state.tableData.total"
>
</el-pagination>
</div>
</el-card>
</div>
</div>
</template>
<
script
setup
name=
"taskPackage-list"
>
import
{
getCurrentInstance
}
from
'
vue
'
;
import
{
normOrdersApi
}
from
'
/@/api/normOrders/index
'
;
import
{
ElMessageBox
,
ElMessage
}
from
'
element-plus
'
;
import
{
Session
}
from
'
/@/utils/storage
'
;
// 引入组件
const
Breadcrumb
=
defineAsyncComponent
(()
=>
import
(
'
/@/layout/navBars/breadcrumb/breadcrumb.vue
'
));
const
router
=
useRouter
();
// 定义变量内容
const
DetailDialogRef
=
ref
()
const
state
=
reactive
({
// 查询列表参数
apiListParam
:
{
page
:
1
,
limit
:
10
,
name
:
''
,
user_id
:
''
,
},
tableData
:
{
data
:
[],
loading
:
false
,
total
:
0
},
tableHeight
:
'
30vh
'
,
normListExtend
:[],
testIndex
:
0
,
taskList
:[],
});
// 页面加载时
onMounted
(()
=>
{
getList
()
state
.
tableHeight
=
getCurrentInstance
().
refs
.
pageMain
.
offsetHeight
-
130
-
52
+
"
px
"
;
});
/**
* 搜索按钮
*/
const
test
=
()
=>
{
return
state
.
testIndex
+
1
;
}
/**
* 搜索按钮
*/
const
searchChange
=
()
=>
{
state
.
apiListParam
.
page
=
1
getList
()
}
/**
* 重置按钮
*/
const
reset
=
()
=>
{
state
.
apiListParam
.
page
=
1
state
.
apiListParam
.
name
=
''
;
getList
()
}
// 分页改变
const
onHandleSizeChange
=
(
val
)
=>
{
state
.
apiListParam
.
limit
=
val
;
getList
();
};
const
onHandleCurrentChange
=
(
val
)
=>
{
state
.
apiListParam
.
page
=
val
;
getList
();
};
// 获取列表
const
getList
=
()
=>
{
state
.
tableData
.
loading
=
true
state
.
apiListParam
.
user_id
=
Session
.
get
(
'
userInfo
'
).
id
normOrdersApi
().
normOrdersList
(
state
.
apiListParam
).
then
(
res
=>
{
state
.
tableData
.
loading
=
false
let
data
=
res
.
data
.
data
;
state
.
tableData
.
data
=
res
.
data
.
data
state
.
tableData
.
total
=
res
.
data
.
total
}).
catch
(()
=>
{
state
.
tableData
.
loading
=
false
})
}
/**
* 点击查看
*/
const
details
=
(
id
)
=>
{
// this.$router.push('/target')
router
.
push
({
path
:
'
/balance/settlementList/details
'
,
query
:
{
id
:
id
}
});
}
</
script
>
<
style
lang=
"scss"
scoped
>
.page-main
{
height
:
calc
(
100vh
-
50px
-
106px
);
}
</
style
>
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