Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
data-collect
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wenyi.chen
data-collect
Commits
3f78e4f1
Commit
3f78e4f1
authored
Apr 03, 2024
by
wenyi.chen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
0403需求变动1
parent
79b410f6
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
279 additions
and
20 deletions
+279
-20
src/utils/request.js
+1
-0
src/views/claimTasks/user/approved/index.vue
+3
-6
src/views/claimTasks/user/list/index.vue
+4
-2
src/views/norm/list/details.vue
+2
-2
src/views/norm/list/dialog.vue
+2
-2
src/views/norm/list/impor.vue
+248
-0
src/views/norm/list/index.vue
+16
-5
src/views/taskPackage/list/index.vue
+2
-2
vite.config.js
+1
-1
No files found.
src/utils/request.js
View file @
3f78e4f1
...
...
@@ -77,6 +77,7 @@ service.interceptors.response.use(
}
}
if
(
error
.
response
.
status
==
500
){
// alert(error.response.data.message)
if
(
error
.
response
.
data
.
message
){
ElMessageBox
.
alert
(
error
.
response
.
data
.
message
,
'提示'
,
{})
}
else
{
...
...
src/views/claimTasks/user/approved/index.vue
View file @
3f78e4f1
...
...
@@ -10,7 +10,7 @@
<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-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>
...
...
@@ -18,10 +18,6 @@
<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>
...
...
@@ -33,6 +29,8 @@
<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=
"taskInfo.name"
label=
"任务名称"
show-overflow-tooltip
align=
"center"
></el-table-column>
<el-table-column
prop=
"normInfo.name"
label=
"子任务名称"
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"
>
...
...
@@ -126,7 +124,6 @@ const state = reactive({
apiListParam
:
{
page
:
1
,
limit
:
10
,
name
:
''
,
status
:
'2,3'
,
task_id
:
''
,
order
:
'asc'
,
...
...
src/views/claimTasks/user/list/index.vue
View file @
3f78e4f1
...
...
@@ -10,11 +10,11 @@
<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-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-input
class=
"search-item"
placeholder=
"输入
指标
名称"
v-model=
"state.apiListParam.name"
size=
"default"
<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>
...
...
@@ -31,6 +31,8 @@
<el-table-column
label=
"序号"
type=
"index"
width=
"100"
show-overflow-tooltip
align=
"center"
></el-table-column>
<el-table-column
prop=
"taskPackageInfo.name"
label=
"任务名称1"
show-overflow-tooltip
align=
"center"
>
</el-table-column>
<el-table-column
prop=
"normInfo.name"
label=
"子任务名称"
show-overflow-tooltip
align=
"center"
>
</el-table-column>
<el-table-column
prop=
"name"
label=
"指标名称"
show-overflow-tooltip
align=
"center"
>
</el-table-column>
<el-table-column
prop=
"price"
label=
"单价"
show-overflow-tooltip
align=
"center"
>
...
...
src/views/norm/list/details.vue
View file @
3f78e4f1
...
...
@@ -3,7 +3,7 @@
<el-dialog
:title=
"state.dialog.title"
v-model=
"state.dialog.isShowDialog"
width=
"60%"
@
close=
"closeDialog"
:close-on-click-modal=
"false"
>
<el-form
ref=
"dialogFormRef"
:model=
"state.formItem.addItem"
:rules=
"state.rules"
size=
"default"
label-width=
"100px"
v-loading=
"state.dataLoading"
label-position=
"right"
style=
"width: 90%;text-align: center;"
>
<el-form-item
label=
"
指标
名称"
prop=
"name"
>
<el-form-item
label=
"
子任务
名称"
prop=
"name"
>
<el-input
type=
"textarea"
v-model=
"state.formItem.addItem.name"
placeholder=
"请输入指标名称"
clearable
:disabled=
"true"
></el-input>
</el-form-item>
<el-form-item
label=
"难度等级"
>
...
...
@@ -141,7 +141,7 @@ const state = reactive({
// 打开弹窗
const
openDialog
=
(
norm_id
)
=>
{
state
.
dialog
.
isShowDialog
=
true
;
state
.
dialog
.
title
=
'
指标
详情'
;
state
.
dialog
.
title
=
'
子任务
详情'
;
state
.
apiData
.
id
=
norm_id
;
// 清空数据
state
.
formItem
.
addItem
.
name
=
''
;
...
...
src/views/norm/list/dialog.vue
View file @
3f78e4f1
...
...
@@ -3,7 +3,7 @@
<el-dialog
:title=
"state.dialog.title"
v-model=
"state.dialog.isShowDialog"
width=
"40%"
@
close=
"closeDialog"
:close-on-click-modal=
"false"
>
<el-form
ref=
"dialogFormRef"
:model=
"state.formItem.addItem"
:rules=
"state.rules"
size=
"default"
label-width=
"100px"
v-loading=
"state.dataLoading"
label-position=
"right"
style=
"width: 90%;text-align: center;"
>
<el-form-item
label=
"
指标
名称"
prop=
"name"
>
<el-form-item
label=
"
子任务
名称"
prop=
"name"
>
<el-input
type=
"textarea"
v-model=
"state.formItem.addItem.name"
placeholder=
"请输入指标名称"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"难度等级"
>
...
...
@@ -138,7 +138,7 @@ const state = reactive({
const
openDialog
=
()
=>
{
finalData
();
state
.
dialog
.
isShowDialog
=
true
;
state
.
dialog
.
title
=
'发布
指标
'
;
state
.
dialog
.
title
=
'发布
子任务
'
;
};
...
...
src/views/norm/list/impor.vue
0 → 100644
View file @
3f78e4f1
<
template
>
<div
class=
"system-role-dialog-container"
>
<el-dialog
:title=
"state.dialog.title"
v-model=
"state.dialog.isShowDialog"
width=
"60%"
@
close=
"closeDialog"
:close-on-click-modal=
"false"
>
<el-form
ref=
"dialogFormRef"
:model=
"state.formItem.addItem"
:rules=
"state.rules"
size=
"default"
label-width=
"100px"
v-loading=
"state.dataLoading"
label-position=
"right"
style=
"width: 90%;text-align: center;"
>
<el-form-item
label=
"指标名称"
prop=
"name"
>
<el-input
type=
"textarea"
v-model=
"state.formItem.addItem.name"
placeholder=
"请输入指标名称"
clearable
:disabled=
"true"
></el-input>
</el-form-item>
<el-form-item
label=
"难度等级"
>
<el-select
v-model=
"state.formItem.addItem.level"
:disabled=
"true"
placeholder=
"请选择难度等级"
>
<el-option
label=
"1"
value=
"1"
></el-option>
<el-option
label=
"2"
value=
"2"
></el-option>
<el-option
label=
"3"
value=
"3"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"优先级"
>
<el-select
v-model=
"state.formItem.addItem.sort"
:disabled=
"true"
placeholder=
"请选择优先级"
>
<el-option
label=
"低"
value=
"1"
></el-option>
<el-option
label=
"中"
value=
"2"
></el-option>
<el-option
label=
"高"
value=
"3"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"参考信源"
prop=
"refer"
>
<el-input
type=
"textarea"
v-model=
"state.formItem.addItem.refer"
placeholder=
"请输入参考信源"
clearable
:disabled=
"true"
></el-input>
</el-form-item>
<el-form-item
label=
"price"
prop=
"price"
>
<el-input
v-model=
"state.formItem.addItem.price"
placeholder=
"请输入单价"
clearable
:disabled=
"true"
></el-input>
</el-form-item>
<el-form-item
label=
"参考指南"
prop=
"guide"
>
<el-input
type=
"textarea"
v-model=
"state.formItem.addItem.guide"
placeholder=
"请输入参考指南"
clearable
:disabled=
"true"
></el-input>
</el-form-item>
</el-form>
</el-dialog>
</div>
</
template
>
<
script
setup
name=
"systemRoleDialog"
>
import
{
normApi
}
from
'/@/api/norm'
import
{
ElMessage
}
from
'element-plus'
;
import
{
toolsApi
}
from
'/@/api/tools'
// 定义子组件向父组件传值/事件
const
emit
=
defineEmits
([
'refresh'
]);
// 定义变量内容
const
dialogFormRef
=
ref
();
const
router
=
useRouter
();
const
state
=
reactive
({
userId
:
null
,
index
:
0
,
userIndex
:
0
,
apiData
:
{
id
:
''
,
},
rules
:
{
},
dialog
:
{
isShowDialog
:
false
,
title
:
''
,
submitTxt
:
''
,
},
tableData
:[
],
columns
:[
],
collectsTableData
:[],
collectsColumns
:[],
dataLoading
:
false
,
btnLoading
:
false
,
// 填写内容及自定义文本框
formItem
:
{
addItem
:{
name
:
''
,
level
:
''
,
sort
:
''
,
refer
:
''
,
price
:
''
,
task_id
:
''
,
},
dynamicItem
:
[
//默认显示一条
// {
// name: '',
// value:''
// }
],
userFilled
:
[
//默认显示一条
// {
// name: '',
// radio:'1',
// }
]
}
});
// 打开弹窗
const
openDialog
=
(
norm_id
)
=>
{
state
.
dialog
.
isShowDialog
=
true
;
state
.
dialog
.
title
=
'指标详情'
;
state
.
apiData
.
id
=
norm_id
;
// 清空数据
state
.
formItem
.
addItem
.
name
=
''
;
state
.
formItem
.
addItem
.
level
=
''
;
state
.
formItem
.
addItem
.
sort
=
''
;
state
.
formItem
.
addItem
.
refer
=
''
;
state
.
formItem
.
addItem
.
price
=
''
;
state
.
formItem
.
addItem
.
task_id
=
''
;
state
.
formItem
.
addItem
.
guide
=
''
;
state
.
formItem
.
dynamicItem
=
[];
state
.
formItem
.
userFilled
=
[];
state
.
tableData
=
[];
state
.
columns
=
[];
state
.
collectsTableData
=
[];
state
.
collectsColumns
=
[];
normApi
().
normDetail
(
state
.
apiData
).
then
(
res
=>
{
let
addItem
=
res
.
data
.
addItem
;
let
custom
=
res
.
data
.
custom
;
// 数据详情
state
.
formItem
.
addItem
.
name
=
addItem
.
name
;
state
.
formItem
.
addItem
.
level
=
addItem
.
level
;
state
.
formItem
.
addItem
.
sort
=
addItem
.
sort
+
''
;
state
.
formItem
.
addItem
.
refer
=
addItem
.
refer
;
state
.
formItem
.
addItem
.
price
=
addItem
.
price
;
state
.
formItem
.
addItem
.
task_id
=
addItem
.
task_id
state
.
formItem
.
addItem
.
guide
=
addItem
.
guide
state
.
userIndex
=
0
;
state
.
index
=
0
;
custom
.
forEach
(
item
=>
{
if
(
item
.
user_filled
==
1
){
state
.
formItem
.
userFilled
.
push
({
name
:
item
.
extend_name
,
radio
:
item
.
required
+
""
,
remarks
:
item
.
extend_remarks
});
state
.
userIndex
++
}
else
{
state
.
formItem
.
dynamicItem
.
push
({
name
:
item
.
extend_name
,
value
:
item
.
extend_value
});
state
.
index
++
}
});
//领取列表
let
receivesList
=
res
.
data
.
receivesList
if
(
receivesList
){
let
arr
=
[
{
label
:
'序号'
,
prop
:
'index'
,
width
:
'80px'
},
// { label:'ID', prop: 'id'},
{
label
:
'用户名称'
,
prop
:
'userInfo.name'
,
width
:
120
},
{
label
:
'任务名称'
,
prop
:
'task_info.name'
,
width
:
180
},
{
label
:
'指标名称'
,
prop
:
'norm_list_info.name'
,
width
:
180
},
];
state
.
columns
=
arr
;
receivesList
.
forEach
(
function
(
item
,
index
,
arr
)
{
let
list
=
{
'index'
:
index
+
1
,
// 'id':item.id,
'userInfo.name'
:
item
.
userInfo
.
name
,
'task_info.name'
:
item
.
task_info
.
name
,
'norm_list_info.name'
:
item
.
norm_list_info
.
name
,
'receives_status'
:
item
.
receives_status
,
'completion_status'
:
item
.
completion_status
,
'not_collectible_remarks'
:
item
.
not_collectible_remarks
?
item
.
not_collectible_remarks
:
"是"
,
}
state
.
tableData
.
push
(
list
);
item
.
norm_list_extend
.
forEach
(
function
(
items
,
indexs
,
arrs
)
{
if
(
state
.
columns
.
length
>
0
){
state
.
columns
.
forEach
(
function
(
itemss
,
indexss
,
arrss
)
{
let
vlues
=
state
.
columns
.
map
(
itemsss
=>
itemsss
.
prop
).
indexOf
(
'extend_value'
+
indexs
)
if
(
vlues
==
-
1
){
state
.
columns
.
push
(
{
label
:
items
.
extend_name
,
prop
:
'extend_value'
+
indexs
,
width
:
180
})
}
});
}
else
{
state
.
columns
.
push
(
{
label
:
items
.
extend_name
,
prop
:
'extend_value'
+
indexs
,
width
:
180
})
}
list
[
'extend_value'
+
indexs
]
=
items
.
extend_value
;
});
});
state
.
columns
.
push
(
{
label
:
'领取状态'
,
prop
:
'receives_status'
,
width
:
100
})
state
.
columns
.
push
(
{
label
:
'完成状态'
,
prop
:
'completion_status'
,
width
:
100
})
state
.
columns
.
push
(
{
label
:
'是否可采集'
,
prop
:
'not_collectible_remarks'
,
width
:
200
})
}
}).
catch
(()
=>
{
})
};
// 关闭弹窗
const
closeDialog
=
()
=>
{
dialogFormRef
.
value
.
resetFields
();
state
.
dialog
.
isShowDialog
=
false
;
};
// 暴露变量
defineExpose
({
openDialog
,
});
onMounted
(()
=>
{
if
(
router
.
currentRoute
.
value
.
query
.
task_id
){
state
.
formItem
.
addItem
.
task_id
=
router
.
currentRoute
.
value
.
query
.
task_id
}
});
</
script
>
<
style
scoped
lang=
"scss"
>
.el-dialog__body
{
display
:
flex
;
justify-content
:
center
;
align-content
:
center
;
}
.el-input.is-disabled
{
background
:
#fff
!important
;
color
:
var
(
--el-radio-text-color
)
!important
;
-webkit-text-fill-color
:
var
(
--el-radio-text-color
)
!important
;
}
:deep
(
.el-input
.el-input__inner
)
{
background
:
#fff
!important
;
color
:
var
(
--el-radio-text-color
)
!important
;
-webkit-text-fill-color
:
var
(
--el-radio-text-color
)
!important
;
}
:deep
(
.el-input
.el-input__wrapper
)
{
background
:
#fff
!important
;
color
:
var
(
--el-radio-text-color
)
!important
;
-webkit-text-fill-color
:
var
(
--el-radio-text-color
)
!important
;
}
.el-textarea.is-disabled
{
background
:
#fff
!important
;
color
:
var
(
--el-radio-text-color
)
!important
;
-webkit-text-fill-color
:
var
(
--el-radio-text-color
)
!important
;
}
:deep
(
.el-textarea
.el-textarea__inner
)
{
background
:
#fff
!important
;
color
:
var
(
--el-radio-text-color
)
!important
;
-webkit-text-fill-color
:
var
(
--el-radio-text-color
)
!important
;
}
:deep
(
.el-textarea
.el-textarea__wrapper
)
{
background
:
#fff
!important
;
color
:
var
(
--el-radio-text-color
)
!important
;
-webkit-text-fill-color
:
var
(
--el-radio-text-color
)
!important
;
}
</
style
>
src/views/norm/list/index.vue
View file @
3f78e4f1
...
...
@@ -10,14 +10,14 @@
<el-option
v-for=
"(item, index) in state.taskList"
:key=
"index"
:label=
"item.name"
:value=
"item.id"
></el-option>
</el-select>
<el-input
class=
"search-item"
placeholder=
"请输入
指标
名称"
v-model=
"state.apiData.name"
size=
"default"
<el-input
class=
"search-item"
placeholder=
"请输入
子任务
名称"
v-model=
"state.apiData.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>
<el-button
size=
"default"
type=
"primary"
@
click=
"release()"
v-if=
"state.isHide"
>
发布
指标
</el-button>
<el-button
size=
"default"
type=
"primary"
@
click=
"release()"
v-if=
"state.isHide"
>
发布
子任务
</el-button>
<el-button
@
click=
"backToPreviousPage"
>
返回页面
</el-button>
</div>
</div>
...
...
@@ -34,7 +34,7 @@
</
template
>
</el-table-column>
<el-table-column
prop=
"taskPackageInfo.unit"
label=
"单位名称"
show-overflow-tooltip
align=
"center"
></el-table-column>
<el-table-column
prop=
"name"
label=
"
指标
名称"
show-overflow-tooltip
align=
"center"
>
<el-table-column
prop=
"name"
label=
"
子任务
名称"
show-overflow-tooltip
align=
"center"
>
<
template
#
default=
"scope"
>
<span
@
click=
"details(scope.row.id)"
>
{{
scope
.
row
.
name
}}
</span>
</
template
>
...
...
@@ -57,7 +57,8 @@
<el-table-column
label=
"操作"
width=
"380"
fixed=
"right"
align=
"center"
>
<
template
#
default=
"scope"
>
<el-button
size=
"small"
type=
"primary"
@
click=
"details(scope.row.id)"
>
查看详情
</el-button>
<el-button
size=
"small"
type=
"danger"
@
click=
"edit(scope.row.id)"
>
修改指标
</el-button>
<el-button
size=
"small"
@
click=
"edit(scope.row.id)"
>
修改子任务
</el-button>
<el-button
size=
"small"
type=
"danger"
@
click=
"importFile(scope.row.id)"
>
导入数据
</el-button>
<el-button
size=
"small"
type=
"warning"
@
click=
"exportFile(scope.row.id)"
>
导出数据
</el-button>
</
template
>
</el-table-column>
...
...
@@ -73,6 +74,7 @@
<DetailDialog
ref=
"DetailDialogRef"
@
refresh=
"getList()"
/>
<AddDialog
ref=
"AddDialogRef"
@
refresh=
"getList()"
/>
<EditDialog
ref=
"EditDialogRef"
@
refresh=
"getList()"
/>
<ImporDialog
ref=
"ImporDialogRef"
@
refresh=
"getList()"
/>
</el-card>
</div>
</div>
...
...
@@ -90,12 +92,14 @@ const Breadcrumb = defineAsyncComponent(() => import('/@/layout/navBars/breadcru
const
AddDialog
=
defineAsyncComponent
(()
=>
import
(
'/@/views/norm/list/dialog.vue'
));
const
DetailDialog
=
defineAsyncComponent
(()
=>
import
(
'/@/views/norm/list/details.vue'
));
const
EditDialog
=
defineAsyncComponent
(()
=>
import
(
'/@/views/norm/list/edit.vue'
));
const
ImporDialog
=
defineAsyncComponent
(()
=>
import
(
'/@/views/norm/list/impor.vue'
));
const
router
=
useRouter
();
// 定义变量内容
const
AddDialogRef
=
ref
()
const
DetailDialogRef
=
ref
()
const
EditDialogRef
=
ref
()
const
ImporDialogRef
=
ref
()
const
state
=
reactive
({
apiData
:
{
...
...
@@ -193,6 +197,12 @@ const details= (norm_id) => {
const
edit
=
(
norm_id
)
=>
{
EditDialogRef
.
value
.
openDialog
(
norm_id
);
}
// 导入数据窗口
const
importFile
=
(
norm_id
)
=>
{
ImporDialogRef
.
value
.
openDialog
(
norm_id
);
}
// 导出文件
const
exportFile
=
(
id
)
=>
{
let
query
=
{
id
:
id
}
...
...
@@ -213,6 +223,7 @@ const exportFile= (id) => {
}).
catch
(()
=>
{
})
}
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
src/views/taskPackage/list/index.vue
View file @
3f78e4f1
...
...
@@ -40,10 +40,10 @@
<span
style=
"color:#F56C6C"
>
{{
scope
.
row
.
collectsQuantity
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
width=
"
3
50"
fixed=
"right"
align=
"center"
>
<el-table-column
label=
"操作"
width=
"
4
50"
fixed=
"right"
align=
"center"
>
<
template
#
default=
"scope"
>
<!--
<el-button
size=
"small"
link
type=
"primary"
@
click=
"details(scope.row.id)"
>
发布指标
</el-button>
-->
<el-button
size=
"small"
type=
"primary"
@
click=
"details(scope.row.id)"
>
详情与发布
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"details(scope.row.id)"
>
发布子任务
</el-button>
<el-button
size=
"small"
type=
"danger"
@
click=
"edit(scope.row)"
>
修改任务
</el-button>
<el-button
size=
"small"
type=
"warning"
@
click=
"exportFile(scope.row.id)"
>
导出数据
</el-button>
</
template
>
...
...
vite.config.js
View file @
3f78e4f1
...
...
@@ -37,7 +37,7 @@ const viteConfig = defineConfig((mode) => {
hmr
:
true
,
proxy
:
{
'/dev'
:
{
target
:
'http://gcspider.raisound.com:81/data-collect-api'
,
target
:
'http://gcspider.raisound.com:81/data-collect-api
-dev
'
,
// target: 'https://data-collect.raisound.com/smart-detection',
// target: 'http://192.168.10.168/data-collect-api',
ws
:
true
,
...
...
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