feat: http数据集新增表单的选择分组添加必填校验

main
wu.jian2 2 years ago
parent aaac5c8df9
commit 0c44876514

@ -63,6 +63,7 @@
<el-col :span="12">
<el-form-item
label="分组"
prop="typeId"
>
<el-select
ref="selectParentName"
@ -190,7 +191,7 @@
<LabelSelect
:dataset-id="datasetId"
:id-list="dataForm.labelIds"
@commit="(ids) =>{dataForm.labelIds = ids}"
@commit="(ids) => { dataForm.labelIds = ids }"
/>
</el-form-item>
</el-col>
@ -239,7 +240,7 @@
label-width="0px"
>
<el-row
v-for="(item,index) in dataForm.config.headers"
v-for="(item, index) in dataForm.config.headers"
:key="index"
:gutter="10"
:span="24"
@ -247,7 +248,7 @@
<el-col :span="11">
<el-form-item
label="键"
:prop="'config.headers.'+index+'.key'"
:prop="'config.headers.' + index + '.key'"
label-width="50px"
:rules="rules.key"
>
@ -263,7 +264,7 @@
<el-col :span="11">
<el-form-item
label="值"
:prop="'config.headers.'+index+'.value'"
:prop="'config.headers.' + index + '.value'"
label-width="50px"
:rules="rules.value"
>
@ -310,10 +311,10 @@
<el-form-item
prop="config.params"
label-width="0px"
:rules="dataForm.config.method==='get'?rules.params:[{ required: false}]"
:rules="dataForm.config.method === 'get' ? rules.params : [{ required: false }]"
>
<el-row
v-for="(item,index) in dataForm.config.params"
v-for="(item, index) in dataForm.config.params"
:key="index"
:gutter="10"
:span="24"
@ -322,7 +323,7 @@
<el-col :span="11">
<el-form-item
label="键"
:prop="'config.params.'+index+'.key'"
:prop="'config.params.' + index + '.key'"
label-width="50px"
:rules="rules.key"
>
@ -338,7 +339,7 @@
<el-col :span="11">
<el-form-item
label="值"
:prop="'config.params.'+index+'.value'"
:prop="'config.params.' + index + '.value'"
label-width="50px"
:rules="rules.value"
>
@ -391,11 +392,13 @@
v-model="dataForm.config.body"
class="bs-el-input"
type="textarea"
:autosize="{ minRows: 10, maxRows: 10}"
:autosize="{ minRows: 10, maxRows: 10 }"
clearable
/>
<div class="bs-codemirror-bottom-text">
<strong>请求体设置规则 请在脚本中直接输入请求体内容如涉及变量请按照${XX}格式进行设置<br> 例如<span style="color: red;">{"name":${name}}</span>
<strong>请求体设置规则 请在脚本中直接输入请求体内容如涉及变量请按照${XX}格式进行设置<br> 例如<span
style="color: red;"
>{"name":${name}}</span>
</strong>
</div>
</el-form-item>
@ -409,19 +412,25 @@
label-width="0px"
>
<codemirror
v-if="activeName==='reqScript'"
v-if="activeName === 'reqScript'"
v-model.trim="dataForm.config.requestScript"
:options="codemirrorOption"
class="code"
/>
<div
class="bs-codemirror-bottom-text"
>
<div class="bs-codemirror-bottom-text">
<strong>请求脚本设置规则 请求脚本已经内置参数req可参考下面的示例进行配置:
<br> 如修改请求地址中对应参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: red;">req.url.age=17</span>
<br> 如修改请求头中对应参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: red;">req.headers.name='tom'</span>
<br> 如修改请求参数中对应参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: red;">req.params.age=17</span>
<br> 如修改请求体中对应参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: red;">req.data='{"name":"223"}'</span>
<br> 如修改请求地址中对应参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span
style="color: red;"
>req.url.age=17</span>
<br> 如修改请求头中对应参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span
style="color: red;"
>req.headers.name='tom'</span>
<br> 如修改请求参数中对应参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span
style="color: red;"
>req.params.age=17</span>
<br> 如修改请求体中对应参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span
style="color: red;"
>req.data='{"name":"223"}'</span>
</strong>
</div>
</el-form-item>
@ -435,7 +444,7 @@
label-width="0px"
>
<codemirror
v-if="activeName==='respScript'"
v-if="activeName === 'respScript'"
v-model.trim="dataForm.config.responseScript"
:options="codemirrorOption"
class="code"
@ -444,7 +453,8 @@
v-if="dataForm.config.requestType === 'frontend'"
class="bs-codemirror-bottom-text"
>
<strong>响应脚本设置规则 接口返回数据已经内置到参数resp中可直接使用但是必须要返回设置后的数据<br> 例如<span style="color: red;">return resp.data</span>
<strong>响应脚本设置规则 接口返回数据已经内置到参数resp中可直接使用但是必须要返回设置后的数据<br> 例如<span style="color: red;">return
resp.data</span>
</strong>
</div>
<div
@ -503,9 +513,9 @@
@click="openParamsSetDialog(false)"
>
<span>{{ param.name }}</span>&nbsp;<span
v-show="param.remark"
style="color: #909399;"
>
v-show="param.remark"
style="color: #909399;"
>
({{ param.remark }})
</span>
<el-button
@ -530,9 +540,7 @@
配置
</el-button>
</div>
<div
class="field-wrap bs-field-wrap bs-scrollbar"
>
<div class="field-wrap bs-field-wrap bs-scrollbar">
<div
v-for="(field, key) in outputFieldList"
:key="key"
@ -597,9 +605,7 @@
v-if="!isEdit"
class="dataPreView"
>
<el-tabs
v-model="activeName"
>
<el-tabs v-model="activeName">
<el-tab-pane
v-loading="tableLoading"
label="数据预览"
@ -804,6 +810,9 @@ export default {
{ required: true, message: '请输入数据集名称', trigger: 'blur' },
{ validator: validateName, trigger: 'blur' }
],
typeId: [
{ required: true, message: '请选择分组', trigger: 'blur' }
],
'config.requestType': [
{ required: true, message: '请选择调用方式', trigger: 'change' }
],
@ -1384,28 +1393,34 @@ export default {
.tree-box {
padding: 0;
}
.tabs-box{
.tabs-box {
margin-left: 45px;
}
.add-btn{
.add-btn {
width: 100%;
text-align: center;
border: 1px dashed #696A6E;
color: #fff;
&:hover{
&:hover {
cursor: pointer;
border: 1px dashed var(--bs-el-color-primary);
color: var(--bs-el-color-primary);
}
}
.delete-btn{
.delete-btn {
color: rgb(228, 116, 112);
&:hover{
&:hover {
cursor: pointer;
}
}
.preview-table{
max-height: 300px!important;
.preview-table {
max-height: 300px !important;
}
/*滚动条样式*/
@ -1414,6 +1429,7 @@ export default {
border-radius: 4px;
height: 4px;
}
::v-deep ::-webkit-scrollbar-thumb {
background: #fff !important;
border-radius: 10px;

Loading…
Cancel
Save