소스 검색

综合分析页面支持将我的标记也一起发送到手机,并核查结果。

DESKTOP-6LTVLN7\Liumouren 2 년 전
부모
커밋
1fc2516cc9
4개의 변경된 파일233개의 추가작업 그리고 337개의 파일을 삭제
  1. 65 17
      src/components/common/BottomForm/PutPhone.vue
  2. 24 8
      src/components/common/BottomForm/VerificationResult.vue
  3. 2 0
      src/store/index.js
  4. 142 312
      src/views/ComprehensiveAnalysis.vue

+ 65 - 17
src/components/common/BottomForm/PutPhone.vue

@@ -17,7 +17,7 @@
       <el-form-item label="任务名称" prop="c_task_name">
         <el-input v-model="createTaskForm.c_task_name" placeholder="请输入任务名称"></el-input>
       </el-form-item>
-      <el-form-item label="关联任务" prop="c_associated_item_ids">
+      <el-form-item label="关联任务">
         <el-select
           v-model="createTaskForm.c_associated_item_ids"
           filterable
@@ -35,14 +35,14 @@
           >
           </el-option>
         </el-select>
-        <el-tooltip
+        <!-- <el-tooltip
           class="item"
           effect="dark"
           content="当发到手机的任务存在该关联任务时,会直接将新选中的疑点直接添加到已存在的任务中,并覆盖任务描述和更新时间。"
           placement="right-start"
         >
           <i class="el-icon-warning-outline putPhoneI"></i>
-        </el-tooltip>
+        </el-tooltip> -->
       </el-form-item>
       <!-- <el-form-item label="所属街道" prop="c_area_code">
         <el-input v-model="c_area_code_str" disabled placeholder="请选择关联任务,自动填入"></el-input>
@@ -50,7 +50,7 @@
       <el-form-item label="任务类型" prop="c_task_type">
         <el-input v-model="c_task_type_str" disabled placeholder="请选择关联任务,自动填入"></el-input>
       </el-form-item> -->
-      <el-form-item label="选择疑点" prop="c_doubtful_points">
+      <el-form-item label="选择疑点">
         <el-cascader
           v-model="createTaskForm.c_doubtful_points"
           :disabled="legendTreeOptionsLoading"
@@ -62,15 +62,17 @@
           clearable
         ></el-cascader>
       </el-form-item>
-      <!-- <el-form-item label="我的标记">
+      <el-form-item label="我的标记">
         <el-cascader
           v-model="createTaskForm.myMarkers"
-          :options="legendTreeOptions"
+          :options="putMyMarkerData()"
           :props="cascaderProps"
+          filterable
+          placeholder=""
           collapse-tags
           clearable
         ></el-cascader>
-      </el-form-item> -->
+      </el-form-item>
       <!-- <el-form-item label="截止时间" prop="c_end_time">
         <el-date-picker v-model="createTaskForm.c_end_time" type="date" placeholder="请选择截止日期"> </el-date-picker>
       </el-form-item> -->
@@ -359,7 +361,6 @@ export default {
                 this.$message.error(error);
               }
             );
-            // 【】
             this.createTaskForm.c_doubtful_points.forEach(item => {
               this.createTaskForm.c_doubtful_points = item[1];
               this.createTaskForm.c_task_id = this.createTaskForm.c_associated_item_ids;
@@ -391,6 +392,37 @@ export default {
                 }
               );
             });
+            this.createTaskForm.myMarkers.forEach(item => {
+              this.createTaskForm.c_doubtful_points = Object.assign({ properties: {} }, item[0]);
+              this.createTaskForm.c_task_id = this.createTaskForm.c_associated_item_ids;
+              this.createTaskForm.c_user_id = localStorage.getItem("USER_ID");
+              this.createTaskForm.c_create_time = parseInt(new Date().getTime() / 1000) * 1000;
+              this.createTaskForm.title = this.createTaskForm.c_task_name;
+              // 开始提交
+              let params = new FormData();
+              params.append("columnId", "1537");
+              params.append("modelId", "909");
+              params.append("content", JSON.stringify(this.createTaskForm));
+              this.$Post(this.urlsCollection.addContent, params).then(
+                res => {
+                  if (res.code === 200) {
+                    this.$message.success(res.message);
+                    this.submitLoading = false;
+                    setTimeout(() => {
+                      // 检验成功后关闭弹窗
+                      this.clearDialogVisible(formName);
+                    }, 0);
+                  } else {
+                    this.submitLoading = false;
+                    this.$message.error(res.message);
+                  }
+                },
+                error => {
+                  this.submitLoading = false;
+                  this.$message.error(error);
+                }
+              );
+            });
           } else {
             this.submitLoading = false;
             this.$message.warning("请先选择疑点后提交!");
@@ -402,6 +434,7 @@ export default {
     },
     getAllLegendData() {
       if (this.legendTree.children.length > 0) {
+        this.legendTreeOptions = [];
         this.legendTreeOptionsLoading = true;
         this.legendTree.children.forEach(item => {
           this.getLegendData(item.columnId, item.label);
@@ -409,6 +442,18 @@ export default {
         this.legendTreeOptionsLoading = false;
       }
     },
+    putMyMarkerData() {
+      let data = [];
+      if (this.$store.state.rightLabelData) {
+        this.$store.state.rightLabelData.forEach(item => {
+          data.push({
+            value: item,
+            label: item.name ? item.name : "疑点名称未定义"
+          });
+        });
+      }
+      return data;
+    },
     getLegendData(columnId, label) {
       let layerParams = new FormData();
       layerParams = {
@@ -419,9 +464,6 @@ export default {
       };
       this.$Post(this.urlsCollection.selectContentList, layerParams).then(
         res => {
-          //   if (res.code === 202 && res.content === "数据不存在") {
-          //     this.$message.info("暂无数据!");
-          //   }
           if (res.code === 200 && res.content.data.length > 0) {
             // 初始化时将请求到的疑点数据中是否疑点全部改为未标记,疑点,非疑点三种状态
             let childrens = res.content.data.map(item => {
@@ -433,12 +475,18 @@ export default {
                 };
               }
             });
-
-            this.legendTreeOptions.push({
-              value: columnId,
-              label: label,
-              children: childrens
-            });
+            if (childrens) {
+              this.legendTreeOptions.push({
+                value: columnId,
+                label: label,
+                children: childrens
+              });
+              // } else {
+              //   this.legendTreeOptions.push({
+              //     value: columnId,
+              //     label: label
+              //   });
+            }
           }
         },
         error => {

+ 24 - 8
src/components/common/BottomForm/VerificationResult.vue

@@ -56,7 +56,7 @@
           <el-table-column type="index" width="50" label="序号"> </el-table-column>
           <el-table-column label="疑点标题">
             <template slot-scope="scope">
-              {{ scope.row.pointsJson["id"] }}
+              {{ scope.row.pointsJson.name || scope.row.pointsJson["id"] }}
             </template>
           </el-table-column>
           <el-table-column prop="c_user_id" label="任务人id"> </el-table-column>
@@ -67,10 +67,16 @@
           </el-table-column>
           <el-table-column label="图斑编号">
             <template slot-scope="scope">
-              {{ scope.row.pointsJson.properties["图斑编号"] }}
+              {{
+                scope.row.pointsJson.name
+                  ? "自定义标记"
+                  : scope.row.pointsJson.properties
+                  ? scope.row.pointsJson.properties["图斑编号"]
+                  : ""
+              }}
             </template>
           </el-table-column>
-          <el-table-column prop="pointsJson.properties.state" label="核查图片" width="220px">
+          <el-table-column label="核查图片" width="220px">
             <template slot-scope="scope">
               <el-image
                 v-if="scope.row.pointsJson.fileUrlLists"
@@ -85,19 +91,25 @@
               </span>
             </template>
           </el-table-column>
-          <el-table-column prop="pointsJson.properties.state" label="核查状态">
+          <el-table-column label="核查状态">
             <template slot-scope="scope">
               <el-tag
                 size="small"
-                :type="scope.row.pointsJson.properties.state == 1 ? 'success' : 'info'"
+                :type="scope.row.pointsJson.properties && scope.row.pointsJson.properties.state == 1 ? 'success' : 'info'"
                 disable-transitions
-                >{{ scope.row.pointsJson.properties.state == 1 ? "已核查" : "未核查" }}</el-tag
+                >{{
+                  scope.row.pointsJson.properties && scope.row.pointsJson.properties.state == 1 ? "已核查" : "未核查"
+                }}</el-tag
               >
             </template>
           </el-table-column>
           <el-table-column label="疑点描述">
             <template slot-scope="scope">
-              {{ scope.row.pointsJson.properties["desc"] }}
+              {{
+                scope.row.pointsJson.properties && scope.row.pointsJson.properties.desc
+                  ? scope.row.pointsJson.properties.desc
+                  : ""
+              }}
             </template>
           </el-table-column>
         </el-table>
@@ -436,7 +448,10 @@ export default {
                     if (resItem.c_doubtful_points) {
                       resItem.pointsJson = JSON.parse(resItem.c_doubtful_points);
                       // 判断是否存在图片并保存到新的对象中;
-                      let fileItemList = resItem.pointsJson.properties.fileList;
+                      let fileItemList =
+                        resItem.pointsJson.properties && resItem.pointsJson.properties.fileList
+                          ? resItem.pointsJson.properties.fileList
+                          : undefined;
                       if (fileItemList != undefined) {
                         resItem.pointsJson.fileUrlLists = [];
                         for (let fileItem in fileItemList) {
@@ -463,6 +478,7 @@ export default {
                 if (resDataNum == this.tableData.length) {
                   // 所有数据加载完成后直接显示
                   setTimeout(() => {
+                    // console.log(this.tableDataList);
                     this.tableInitInfoLoading = false;
                     this.tabsValue = this.tableData[0].title;
                     this.testVIfState = true;

+ 2 - 0
src/store/index.js

@@ -57,6 +57,8 @@ export default new Vuex.Store({
     JLControlRightMapUrl: "",
     // 暂存综合分析左侧图斑列表中的所有图层的某个镇域的所有资源
     legendTree: [],
+    // 我的标记暂存对象
+    rightLabelData: []
   },
   getters: {
     myLabelPointsArr: (state) => state.myLabelPointsArr,

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 142 - 312
src/views/ComprehensiveAnalysis.vue


이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.