Browse Source

源数据新增编辑

chenjun 3 years ago
parent
commit
f223d603c9

+ 113 - 71
src/views/systemSettings/views/sourceDataItemManagement/sourceDataItemEdit.vue

@@ -8,7 +8,7 @@
   <div class="dataStoreInfo">
   <div class="dataStoreInfo">
     <!--基本信息-->
     <!--基本信息-->
     <div class="airportInfoDetails-head">
     <div class="airportInfoDetails-head">
-      <Search title="编辑目标数据信息" :isSearch="false">
+      <Search title="编辑数据信息" :isSearch="false">
         <button class="childBtnAn" @click="storagemod">保存</button>
         <button class="childBtnAn" @click="storagemod">保存</button>
       </Search>
       </Search>
       <div class="airportInfoDetails-head-content dialog-public-background">
       <div class="airportInfoDetails-head-content dialog-public-background">
@@ -20,37 +20,27 @@
           class="demo-ruleForm"
           class="demo-ruleForm"
           label-width="140px"
           label-width="140px"
         >
         >
-          <el-form-item label="目标数据名" prop="tdataName">
+          <el-form-item label="源数据名称" prop="dataName">
             <el-input
             <el-input
               size="small"
               size="small"
               maxlength="128"
               maxlength="128"
-              placeholder="请输入目标数据名"
-              v-model="ruleForm.tdataName"
+              placeholder="请输入源数据名称"
+              v-model="ruleForm.dataName"
             ></el-input>
             ></el-input>
           </el-form-item>
           </el-form-item>
-          <el-form-item label="数据类型" prop="datatype">
+          <el-form-item label="数据格式" prop="dataType">
             <el-select
             <el-select
               size="small"
               size="small"
               style="width: 100%"
               style="width: 100%"
-              v-model="ruleForm.datatype"
+              v-model="ruleForm.dataType"
               placeholder="请选择数据类型"
               placeholder="请选择数据类型"
             >
             >
-              <el-option label="字符串" value="1"></el-option>
-              <el-option label="数字" value="2"></el-option>
-              <el-option label="时间" value="3"></el-option>
-              <el-option label="日期" value="4"></el-option>
+              <el-option label="JSON" value="1"></el-option>
+              <el-option label="XML" value="2"></el-option>
+              <el-option label=" REGULA" value="3"></el-option>
             </el-select>
             </el-select>
           </el-form-item>
           </el-form-item>
-          <el-form-item label="目标数据事件标识" prop="eventID">
-            <el-input
-              size="small"
-              maxlength="128"
-              placeholder="请输入目标数据事件标识"
-              v-model="ruleForm.eventID"
-            ></el-input>
-          </el-form-item>
-          <el-row>
-            <el-form-item label="目标数据描述">
+          <el-form-item label="目标数据描述">
               <el-input
               <el-input
                 maxlength="128"
                 maxlength="128"
                 placeholder="请输入描述"
                 placeholder="请输入描述"
@@ -60,6 +50,32 @@
                 style="width: 575px"
                 style="width: 575px"
               ></el-input>
               ></el-input>
             </el-form-item>
             </el-form-item>
+          <el-row>
+            <el-col :span="10.5">
+            <el-form-item label="取值方法">
+              <el-input
+                maxlength="128"
+                placeholder="请输入取值方法"
+                type="textarea"
+                :rows="1"
+                v-model="ruleForm.computingMethod"
+                style="width: 575px"
+              ></el-input>
+            </el-form-item>
+            </el-col>
+            <el-col :span="10.5">
+
+            <el-form-item label="检测方法">
+              <el-input
+                maxlength="128"
+                placeholder="请输入检测方法"
+                type="textarea"
+                :rows="1"
+                v-model="ruleForm.validationExpression"
+                style="width: 575px"
+              ></el-input>
+            </el-form-item>
+            </el-col>
           </el-row>
           </el-row>
         </el-form>
         </el-form>
       </div>
       </div>
@@ -97,9 +113,17 @@
             prop="ItemDescribe"
             prop="ItemDescribe"
             label="数据项描述"
             label="数据项描述"
           ></el-table-column>
           ></el-table-column>
+          <el-table-column
+            prop="computingMethod"
+            label="取值方法"
+          ></el-table-column>
           <el-table-column
           <el-table-column
             prop="computingExpression"
             prop="computingExpression"
-            label="数据来源表达式"
+            label="取值表达式"
+          ></el-table-column>
+          <el-table-column
+            prop="outputIdentifier"
+            label="输出标识符"
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             prop="isMustText"
             prop="isMustText"
@@ -167,7 +191,7 @@
       </div>
       </div>
     </Dialog>
     </Dialog>
     <!--新增/编辑存储数据项弹框-->
     <!--新增/编辑存储数据项弹框-->
-    <Dialog width="450px" customClass="dataStoreInfoDialog" :flag="addFlag">
+    <Dialog width="748px" customClass="dataStoreInfoDialog" :flag="addFlag">
       <div class="dialog-public-background">
       <div class="dialog-public-background">
         <div class="flx">
         <div class="flx">
           {{ msgType === 1 ? "新增" : "编辑" }}数据项信息
           {{ msgType === 1 ? "新增" : "编辑" }}数据项信息
@@ -181,7 +205,7 @@
             class="demo-dataForm"
             class="demo-dataForm"
           >
           >
             <el-row :gutter="24">
             <el-row :gutter="24">
-              <el-col :span="24">
+              <el-col :span="12">
                 <el-form-item class="flex1" label="所属数据项" prop="parentID">
                 <el-form-item class="flex1" label="所属数据项" prop="parentID">
                   <el-cascader
                   <el-cascader
                     size="small"
                     size="small"
@@ -196,9 +220,7 @@
                   </el-cascader>
                   </el-cascader>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
-            </el-row>
-            <el-row :gutter="24">
-              <el-col :span="24">
+              <el-col :span="12">
                 <el-form-item class="flex1" label="数据项名称" prop="ItemName">
                 <el-form-item class="flex1" label="数据项名称" prop="ItemName">
                   <el-input
                   <el-input
                     maxlength="128"
                     maxlength="128"
@@ -208,9 +230,7 @@
                   ></el-input>
                   ></el-input>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
-            </el-row>
-            <el-row :gutter="24">
-              <el-col :span="24">
+              <el-col :span="12">
                 <el-form-item class="flex1" label="数据类型" prop="dataType">
                 <el-form-item class="flex1" label="数据类型" prop="dataType">
                   <el-select
                   <el-select
                     size="small"
                     size="small"
@@ -228,56 +248,79 @@
                   </el-select>
                   </el-select>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
-            </el-row>
-            <el-row :gutter="24">
-              <el-col :span="24">
+              <el-col :span="12">
                 <el-form-item
                 <el-form-item
                   class="flex1"
                   class="flex1"
-                  label="数据来源表达式"
-                  prop="computingExpression"
+                  label="输出标识符"
+                  prop="outputIdentifier"
                 >
                 >
                   <el-input
                   <el-input
                     maxlength="128"
                     maxlength="128"
                     size="small"
                     size="small"
-                    placeholder="请输入数据来源表达式"
-                    v-model="dataForm.computingExpression"
+                    placeholder="请输入输出标识符"
+                    v-model="dataForm.outputIdentifier"
+                  ></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item
+                  class="flex1"
+                  label="取值方法"
+                  prop="computingMethod"
+                >
+                  <el-input
+                    maxlength="128"
+                    size="small"
+                    placeholder="请输入取值方法"
+                    v-model="dataForm.computingMethod"
                   ></el-input>
                   ></el-input>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
             </el-row>
             </el-row>
             <el-row :gutter="24">
             <el-row :gutter="24">
               <el-col :span="24">
               <el-col :span="24">
+                <el-form-item label="取值表达式">
+                  <el-input
+                    v-model="dataForm.computingExpression"
+                    size="medium"
+                    type="textarea"
+                    :rows="2"
+                    placeholder="请输入取值表达式"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="24">
+                <el-form-item label="数据项描述">
+                  <el-input
+                    v-model="dataForm.ItemDescribe"
+                    size="medium"
+                    type="textarea"
+                    :rows="2"
+                    placeholder="请输入数据项描述"
+                  />
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row :gutter="24">
+              <el-col :span="12">
                 <el-form-item class="flexer" label="允许空值">
                 <el-form-item class="flexer" label="允许空值">
                   <el-radio v-model="dataForm.isMust" label="1">是</el-radio>
                   <el-radio v-model="dataForm.isMust" label="1">是</el-radio>
                   <el-radio v-model="dataForm.isMust" label="0">否</el-radio>
                   <el-radio v-model="dataForm.isMust" label="0">否</el-radio>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
-              <el-col :span="24">
+              <el-col :span="12">
                 <el-form-item class="flexer" label="唯一项标志">
                 <el-form-item class="flexer" label="唯一项标志">
                   <el-radio v-model="dataForm.isKey" label="1">是</el-radio>
                   <el-radio v-model="dataForm.isKey" label="1">是</el-radio>
                   <el-radio v-model="dataForm.isKey" label="0">否</el-radio>
                   <el-radio v-model="dataForm.isKey" label="0">否</el-radio>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
-              <el-col :span="24">
+              <el-col :span="12">
                 <el-form-item class="flexer" label="多条拆分">
                 <el-form-item class="flexer" label="多条拆分">
                   <el-radio v-model="dataForm.isSplite" label="1">是</el-radio>
                   <el-radio v-model="dataForm.isSplite" label="1">是</el-radio>
                   <el-radio v-model="dataForm.isSplite" label="0">否</el-radio>
                   <el-radio v-model="dataForm.isSplite" label="0">否</el-radio>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
             </el-row>
             </el-row>
-            <el-row :gutter="24">
-              <el-col :span="24">
-                <el-form-item label="数据项描述">
-                  <el-input
-                    v-model="dataForm.ItemDescribe"
-                    size="medium"
-                    type="textarea"
-                    :rows="2"
-                    placeholder="请输入描述"
-                  />
-                </el-form-item>
-              </el-col>
-            </el-row>
           </el-form>
           </el-form>
         </div>
         </div>
         <div class="foot center" style="padding-right: 35px">
         <div class="foot center" style="padding-right: 35px">
@@ -300,7 +343,6 @@
 <script>
 <script>
 import Search from "@/layout/components/Search/index.vue";
 import Search from "@/layout/components/Search/index.vue";
 import Dialog from "@/layout/components/Dialog/index.vue";
 import Dialog from "@/layout/components/Dialog/index.vue";
-import { anaListmod, storageListadd, storageListdel } from "@/api/acquisition";
 import { Query, GeneralDataReception } from "@/api/dataIntegration";
 import { Query, GeneralDataReception } from "@/api/dataIntegration";
 import { translateDataToTreeAll, findarrays } from "@/utils/validate";
 import { translateDataToTreeAll, findarrays } from "@/utils/validate";
 export default {
 export default {
@@ -340,13 +382,13 @@ export default {
       dataForm: {},
       dataForm: {},
       dataRules: {
       dataRules: {
         //数据项表单验证
         //数据项表单验证
-        name: [
+        ItemName: [
           { required: true, message: "请输入数据项名称", trigger: "blur" },
           { required: true, message: "请输入数据项名称", trigger: "blur" },
         ],
         ],
         code: [
         code: [
           { required: true, message: "请输入数据来源表达式", trigger: "blur" },
           { required: true, message: "请输入数据来源表达式", trigger: "blur" },
         ],
         ],
-        tag: [{ required: true, message: "请选数据类型", trigger: "change" }],
+        dataType: [{ required: true, message: "请选数据类型", trigger: "change" }],
       },
       },
       addFlag: false, //数据项弹框,
       addFlag: false, //数据项弹框,
       dataStoreid: "", //修改id,
       dataStoreid: "", //修改id,
@@ -394,26 +436,26 @@ export default {
       }
       }
     },
     },
     //数据项信息
     //数据项信息
-    async Dataitem() {
-      let params = {
-        sourceId: this.sourceider,
-      };
-      const result = await anaListmod(params);
-      if (result.code == 0) {
-        this.sourceList = result.returnData;
-        this.tableData = result.returnData;
-      }
-    },
+    // async Dataitem() {
+    //   let params = {
+    //     sourceId: this.sourceider,
+    //   };
+    //   const result = await anaListmod(params);
+    //   if (result.code == 0) {
+    //     this.sourceList = result.returnData;
+    //     this.tableData = result.returnData;
+    //   }
+    // },
     //详情查询
     //详情查询
     async storagedetails() {
     async storagedetails() {
       let params = {
       let params = {
-        id: 17,
+        id: 18,
         dataContent: [this.dataStoreid],
         dataContent: [this.dataStoreid],
       };
       };
       const result = await Query(params);
       const result = await Query(params);
       if (result.code == 0) {
       if (result.code == 0) {
         result.returnData.forEach((element) => {
         result.returnData.forEach((element) => {
-          element.datatype = element.datatype + "";
+          element.dataType = element.dataType + "";
         });
         });
         this.ruleForm = result.returnData[0];
         this.ruleForm = result.returnData[0];
       } else {
       } else {
@@ -426,7 +468,7 @@ export default {
       this.ruleForm["operate"] = "2";
       this.ruleForm["operate"] = "2";
       try {
       try {
         const res = await GeneralDataReception({
         const res = await GeneralDataReception({
-          serviceId: "7",
+          serviceId: "4",
           dataContent: JSON.stringify(this.ruleForm),
           dataContent: JSON.stringify(this.ruleForm),
         });
         });
         if (res.code === "0") {
         if (res.code === "0") {
@@ -440,7 +482,7 @@ export default {
     },
     },
     async getDataList() {
     async getDataList() {
       let params = {
       let params = {
-        id: 15,
+        id: 16,
         dataContent: [this.dataStoreid],
         dataContent: [this.dataStoreid],
       };
       };
       const result = await Query(params);
       const result = await Query(params);
@@ -523,7 +565,7 @@ export default {
       this.rmObj["operate"] = "3";
       this.rmObj["operate"] = "3";
       try {
       try {
         const res = await GeneralDataReception({
         const res = await GeneralDataReception({
-          serviceId: "8",
+          serviceId: "5",
           dataContent:  JSON.stringify(this.rmObj),
           dataContent:  JSON.stringify(this.rmObj),
         });
         });
         if (res.code === "0") {
         if (res.code === "0") {
@@ -571,7 +613,7 @@ export default {
           else{
           else{
             this.dataForm["operate"] = "1";
             this.dataForm["operate"] = "1";
           }
           }
-          this.dataForm["targetdataID"] = this.dataStoreid;
+          this.dataForm["sourceDataID"] = this.dataStoreid;
           this.saveData();
           this.saveData();
         } else {
         } else {
           console.log("error submit!!");
           console.log("error submit!!");
@@ -582,7 +624,7 @@ export default {
     async saveData(){
     async saveData(){
       try {
       try {
             const res =  await GeneralDataReception({
             const res =  await GeneralDataReception({
-              serviceId: "8",
+              serviceId: "5",
               dataContent: JSON.stringify(this.dataForm),
               dataContent: JSON.stringify(this.dataForm),
             });
             });
             if (res.code === "0") {
             if (res.code === "0") {

+ 50 - 33
src/views/systemSettings/views/sourceDataItemManagement/sourceDataItemHome.vue

@@ -31,7 +31,7 @@
                 </div>
                 </div>
                 <i class="el-icon-close icon" @click="showRemoveDialog(item)" />
                 <i class="el-icon-close icon" @click="showRemoveDialog(item)" />
               </div>
               </div>
-              <div class="disc">{{item.dataType}}</div>
+              <div class="disc">{{item.dataTypeText}}</div>
             </div>
             </div>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
@@ -45,37 +45,46 @@
               ref="ruleForm"
               ref="ruleForm"
               :model="ruleForm"
               :model="ruleForm"
               :rules="rules"
               :rules="rules"
-              label-width="140px"
+              label-width="100px"
               class="demo-ruleForm"
               class="demo-ruleForm"
             >
             >
-              <el-form-item label="目标数据名" prop="tdataName">
+              <el-form-item label="源数据名称" prop="dataName">
                 <el-input
                 <el-input
-                  v-model="ruleForm.tdataName"
+                  v-model="ruleForm.dataName"
                   size="small"
                   size="small"
-                  placeholder="请输入目标数据名称"
+                  placeholder="请输入数据名称"
                 />
                 />
               </el-form-item>
               </el-form-item>
-              <el-form-item label="数据类型" prop="datatype">
+              <el-form-item label="数据格式" prop="dataType">
                 <el-select
                 <el-select
-                  v-model="ruleForm.datatype"
+                  v-model="ruleForm.dataType"
                   size="small"
                   size="small"
-                  placeholder="请选择数据类型"
+                  placeholder="请选择数据格式"
                 >
                 >
-                  <el-option label="字符串" value="1"></el-option>
-                  <el-option label="数字" value="2"></el-option>
-                  <el-option label="时间" value="3"></el-option>
-                  <el-option label="日期" value="4"></el-option>
+                  <el-option label="JSON" value="1"></el-option>
+                  <el-option label="XML" value="2"></el-option>
+                  <el-option label=" REGULA" value="3"></el-option>
                 </el-select>
                 </el-select>
               </el-form-item>
               </el-form-item>
-              <el-form-item label="目标数据事件标识" prop="eventID">
+              <el-form-item label="取值方法">
                 <el-input
                 <el-input
-                  v-model="ruleForm.eventID"
+                  v-model="ruleForm.computingMethod"
                   size="small"
                   size="small"
-                  placeholder="请输入目标数据事件标识"
+                  type="textarea"
+                  :rows="2"
+                  placeholder="请输入取值方法"
                 />
                 />
               </el-form-item>
               </el-form-item>
-
-              <el-form-item label="目标数据描述">
+              <el-form-item label="检测方法">
+                <el-input
+                  v-model="ruleForm.validationExpression"
+                  size="small"
+                  type="textarea"
+                  :rows="2"
+                  placeholder="请输入检测方法"
+                />
+              </el-form-item>
+              <el-form-item label="源数据描述">
                 <el-input
                 <el-input
                   v-model="ruleForm.dataDescribe"
                   v-model="ruleForm.dataDescribe"
                   size="small"
                   size="small"
@@ -133,25 +142,19 @@ export default {
       editDialogTitle:"目标数据新增",
       editDialogTitle:"目标数据新增",
       ruleForm: {
       ruleForm: {
         // 信息表单
         // 信息表单
-        tdataName: "",
+        dataName: "",
         dataDescribe: "",
         dataDescribe: "",
-        eventID: "",
-        datatype: "",
+        computingMethod: "",
+        validationExpression:"",
+        dataType: "",
       },
       },
       rules: {
       rules: {
         // 机器信息表单验证
         // 机器信息表单验证
-        tdataName: [
-          { required: true, message: "请输入目标数据名称", trigger: "blur" },
+        dataName: [
+          { required: true, message: "请输入数据名称", trigger: "blur" },
         ],
         ],
-        eventID: [
-          {
-            required: true,
-            message: "请输入目标数据事件标识",
-            trigger: "blur",
-          },
-        ],
-        datatype: [
-          { required: true, message: "请选择数据类型", trigger: "blur" },
+        dataType: [
+          { required: true, message: "请选择数据格式", trigger: "blur" },
         ],
         ],
       },
       },
     };
     };
@@ -167,6 +170,20 @@ export default {
           dataContent: []
           dataContent: []
         });
         });
         if (res.code === "0") {
         if (res.code === "0") {
+          res.returnData.forEach(element => {
+            if(element.dataType==1){
+              element['dataTypeText'] = "JSON"
+            }
+            else if(element.dataType==2){
+              element['dataTypeText'] = "XML"
+            }
+            else if(element.dataType==3){
+              element['dataTypeText'] = "REGULA"
+            }
+            else{
+              element['dataTypeText'] = "其他"
+            }
+          });
             this.dataList = res.returnData
             this.dataList = res.returnData
         } else {
         } else {
           this.$message.error(res.message ?? "失败");
           this.$message.error(res.message ?? "失败");
@@ -182,7 +199,7 @@ export default {
     },
     },
     // 编辑-跳转
     // 编辑-跳转
     showEditDialog (item) {
     showEditDialog (item) {
-      this.$router.push('/systemSettings/sourceDataItemEdit')
+      this.$router.push({path:'/systemSettings/sourceDataItemEdit',query:{id:item.sourceDataID}})
     },
     },
     // 新增/编辑-确认
     // 新增/编辑-确认
     submitClickHandler() {
     submitClickHandler() {
@@ -197,7 +214,7 @@ export default {
       this.ruleForm["operate"] = "1";
       this.ruleForm["operate"] = "1";
       try {
       try {
         const res = await GeneralDataReception({
         const res = await GeneralDataReception({
-          serviceId: "7",
+          serviceId: "4",
           dataContent: JSON.stringify(this.ruleForm),
           dataContent: JSON.stringify(this.ruleForm),
         });
         });
         if (res.code === "0") {
         if (res.code === "0") {

+ 11 - 12
src/views/systemSettings/views/targetDataManagement/targetDataEdit.vue

@@ -300,7 +300,6 @@
 <script>
 <script>
 import Search from "@/layout/components/Search/index.vue";
 import Search from "@/layout/components/Search/index.vue";
 import Dialog from "@/layout/components/Dialog/index.vue";
 import Dialog from "@/layout/components/Dialog/index.vue";
-import { anaListmod, storageListadd, storageListdel } from "@/api/acquisition";
 import { Query, GeneralDataReception } from "@/api/dataIntegration";
 import { Query, GeneralDataReception } from "@/api/dataIntegration";
 import { translateDataToTreeAll, findarrays } from "@/utils/validate";
 import { translateDataToTreeAll, findarrays } from "@/utils/validate";
 export default {
 export default {
@@ -394,16 +393,16 @@ export default {
       }
       }
     },
     },
     //数据项信息
     //数据项信息
-    async Dataitem() {
-      let params = {
-        sourceId: this.sourceider,
-      };
-      const result = await anaListmod(params);
-      if (result.code == 0) {
-        this.sourceList = result.returnData;
-        this.tableData = result.returnData;
-      }
-    },
+    // async Dataitem() {
+    //   let params = {
+    //     sourceId: this.sourceider,
+    //   };
+    //   const result = await anaListmod(params);
+    //   if (result.code == 0) {
+    //     this.sourceList = result.returnData;
+    //     this.tableData = result.returnData;
+    //   }
+    // },
     //详情查询
     //详情查询
     async storagedetails() {
     async storagedetails() {
       let params = {
       let params = {
@@ -501,7 +500,7 @@ export default {
       let that = this;
       let that = this;
       that.storagedetails().then(function (data) {
       that.storagedetails().then(function (data) {
         if (val) {
         if (val) {
-          that.posArr = findarrays(that.posArr, "itemName", val);
+          that.posArr = findarrays(that.posArr, "ItemName", val);
         } else {
         } else {
           that.storagedetails();
           that.storagedetails();
         }
         }