From 0c44876514ecfb4907e2251a403d8db81a0b60b5 Mon Sep 17 00:00:00 2001
From: "wu.jian2" <distantmtn@gmail.com>
Date: Wed, 27 Sep 2023 14:02:56 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20http=E6=95=B0=E6=8D=AE=E9=9B=86?=
 =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=A1=A8=E5=8D=95=E7=9A=84=E9=80=89=E6=8B=A9?=
 =?UTF-8?q?=E5=88=86=E7=BB=84=E6=B7=BB=E5=8A=A0=E5=BF=85=E5=A1=AB=E6=A0=A1?=
 =?UTF-8?q?=E9=AA=8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../DataSetManagement/src/HttpEditForm.vue    | 88 +++++++++++--------
 1 file changed, 52 insertions(+), 36 deletions(-)

diff --git a/data-room-ui/packages/DataSetManagement/src/HttpEditForm.vue b/data-room-ui/packages/DataSetManagement/src/HttpEditForm.vue
index d43ad30a..98281544 100644
--- a/data-room-ui/packages/DataSetManagement/src/HttpEditForm.vue
+++ b/data-room-ui/packages/DataSetManagement/src/HttpEditForm.vue
@@ -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;