瀏覽代碼

规划成果审查乡镇规划统计

lkk 1 周之前
父節點
當前提交
4870600e1f

+ 16 - 0
website/src/api/ghcgysc/cgsbApi.js

@@ -12,6 +12,7 @@ const cgsbApi = {
   getStatus: "/apply/cggl/getStatus",
   getCgStatistics: "/apply/cggl/getCgStatistics",
   getCgFolder: "/apply/cggl/getCgFolder",
+  getTownshipStatistics: "/apply/xzczghcgsb/getTownshipStatistics",
 };
 
 /**
@@ -139,6 +140,21 @@ export function getCgFolder(parameter) {
     },
   });
 }
+/**
+ * 获取旗县统计信息
+ * @param parameter
+ * @returns {*}
+ */
+export function getTownshipStatistics(parameter) {
+  return request({
+    method: "get",
+    url: cgsbApi.getTownshipStatistics,
+    params: parameter,
+    headers: {
+      "Content-Type": "application/json;charset=UTF-8",
+    },
+  });
+}
 
 // /**
 //  * 下载成果包

+ 1 - 1
website/src/views/ghcgscygl/ghcgsb/xxgh/Czgh/Qxyh.vue

@@ -329,7 +329,7 @@
           </el-table-column> -->
           <el-table-column
             prop="sbdstczs"
-            label="上报到省厅村庄数"
+            label="上报到省厅村庄数1"
             align="center"
           >
           </el-table-column>

+ 145 - 4
website/src/views/ghcgscygl/ghcgsb/ztgh/Qxjghcg/Qxyh.vue

@@ -83,6 +83,13 @@
           <el-button type="primary" @click="getlist" style="margin-left: 20px"
             >查询</el-button
           >
+          <el-button
+            type="primary"
+            @click="showTJ"
+            style="margin-left: 20px"
+            v-show="formInline.plantype == '7'"
+            >乡镇规划</el-button
+          >
         </el-form>
       </div>
       <div
@@ -472,6 +479,119 @@
         </el-descriptions-item>
       </el-descriptions>
     </el-dialog>
+
+    <el-dialog
+      v-model="issStat"
+      :title="'上报统计'"
+      width="60%"
+      :before-close="handleClose"
+      :align-center="true"
+      style="white-space: initial"
+    >
+      <div>
+        <el-table
+          :data="treeTableData"
+          :expand-row-keys="defaultExpandedKeys"
+          border
+          row-key="id"
+          :tree-props="{ children: 'children' }"
+          style="width: 100%"
+          highlight-current-row
+          height="calc(100vh - 100px )"
+          v-loading="loading"
+          element-loading-text="正在加载中..."
+          :element-loading-spinner="svg"
+          element-loading-svg-view-box="-10, -10, 50, 50"
+          element-loading-background="rgba(122, 122, 122, 0.8)"
+        >
+          <el-table-column
+            prop="xzqh"
+            label="行政区划"
+            width="240"
+            show-overflow-tooltip
+          >
+          </el-table-column>
+          <el-table-column
+            prop="xzczs"
+            label="行政乡镇总数"
+            width="120"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="ybaczs"
+            label="应备案乡镇数"
+            width="120"
+            align="center"
+          >
+          </el-table-column>
+          <!-- <el-table-column
+            prop="qxysbczs"
+            label="旗县已上报的村庄数"
+            align="center"
+          >
+          </el-table-column> -->
+          <el-table-column
+            prop="sbdstczs"
+            label="上报到省厅村庄数"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="wbscjd"
+            label="文本审查节点(补正)"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="slsjbz"
+            label="矢量数据审查节点(机审)"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="ybas"
+            label="已备案数(用地审查节点)"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="bal"
+            label="备案率(%)(已备案数行政乡镇总数)"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column label="旗县未上报的乡镇数" align="center">
+            <template #default="scope">
+              <el-popover
+                placement="right"
+                :width="200"
+                trigger="click"
+                v-if="scope.row.wsbczs.length > 0"
+              >
+                <template #reference>
+                  <span style="cursor: pointer; color: #409eff">
+                    {{ scope.row.qxwsbczs }}</span
+                  >
+                  <!-- <i style="cursor: pointer" @click="getLayerId(scope.row)">
+                  </i> -->
+                </template>
+                <ul class="moreList">
+                  <li
+                    v-for="(item, i) in scope.row.wsbczs"
+                    :key="i"
+                    @click="clickMore(item, i)"
+                  >
+                    {{ i + 1 + "." + item }}
+                  </li>
+                </ul>
+              </el-popover>
+              <span v-else> {{ scope.row.qxwsbczs }}</span>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
+    </el-dialog>
   </div>
   <errorLog
     v-model:dialogLog="dialogLog"
@@ -493,7 +613,12 @@ import SbjdDialog from "@/components/ghcgscygl/ghcgsb/ztgh/sbjdDialog.vue";
 import request from "@/utils/request.js";
 import { GetXzqList, GetXzq } from "@/api/homeApi.js";
 import { scmxlist, startcgsc } from "@/api/ghcgysc/cggl.js";
-import { cgInfoList, cgDelete, updateCgInfo } from "@/api/ghcgysc/cgsbApi.js";
+import {
+  cgInfoList,
+  cgDelete,
+  updateCgInfo,
+  getTownshipStatistics,
+} from "@/api/ghcgysc/cgsbApi.js";
 import errorLog from "@/components/ghfxpj/wtsbztyy/errorLog.vue";
 import { ElMessage } from "element-plus";
 export default {
@@ -519,7 +644,7 @@ export default {
         nextTick(() => {
           qxyh.getXzqdm();
         });
-      },
+      }
     );
     const qxyh = reactive({
       cascader: ref(null),
@@ -609,6 +734,10 @@ export default {
       editStatus: "",
       editId: "",
       name: "",
+      issStat: false,
+      treeTableData: [],
+      defaultExpandedKeys: [],
+      loading: true, //加载状态
       xmDetail(detail) {
         try {
           let info = JSON.parse(detail);
@@ -622,6 +751,18 @@ export default {
           });
         }
       },
+      showTJ() {
+        qxyh.issStat = true;
+        getTownshipStatistics().then((res) => {
+          qxyh.treeTableData = res.data;
+          qxyh.defaultExpandedKeys = qxyh.treeTableData.map((item) => {
+            if (item.level == 0) {
+              return item.id;
+            }
+          });
+          qxyh.loading = false;
+        });
+      },
       getPlantype(plantype) {
         for (let i = 0; i < qxyh.plantypeoptions.length; i++) {
           if (qxyh.plantypeoptions[i].value == plantype) {
@@ -848,14 +989,14 @@ export default {
       // 下载
       downLoadCgFile(id) {
         window.open(
-          request.defaults.baseURL + "/apply/cggl/cgDownload?id=" + id,
+          request.defaults.baseURL + "/apply/cggl/cgDownload?id=" + id
         );
       },
       // 获取行政区数据
       getXzqdm() {
         GetXzqList().then((res) => {
           const xzq = res.data.find(
-            (item) => item.label === store.getters.user.dept.deptName,
+            (item) => item.label === store.getters.user.dept.deptName
           );
           qxyh.formInline.xzqdm = !xzq ? "" : xzq.value;
           qxyh.getlist();

+ 136 - 1
website/src/views/ghcgscygl/ghcgsb/ztgh/Sjghcg.vue

@@ -81,6 +81,13 @@
           <el-button type="primary" @click="getlist" style="margin-left: 20px"
             >查询</el-button
           >
+          <el-button
+            type="primary"
+            @click="showTJ"
+            style="margin-left: 20px"
+            v-show="formInline.plantype == '7'"
+            >乡镇规划</el-button
+          >
         </el-form>
       </div>
       <div class="margin-right-20">
@@ -463,6 +470,118 @@
         </el-descriptions-item>
       </el-descriptions>
     </el-dialog>
+    <el-dialog
+      v-model="issStat"
+      :title="'上报统计'"
+      width="60%"
+      :before-close="handleClose"
+      :align-center="true"
+      style="white-space: initial"
+    >
+      <div>
+        <el-table
+          :data="treeTableData"
+          :expand-row-keys="defaultExpandedKeys"
+          border
+          row-key="id"
+          :tree-props="{ children: 'children' }"
+          style="width: 100%"
+          highlight-current-row
+          height="calc(100vh - 100px )"
+          v-loading="loading2"
+          element-loading-text="正在加载中..."
+          :element-loading-spinner="svg"
+          element-loading-svg-view-box="-10, -10, 50, 50"
+          element-loading-background="rgba(122, 122, 122, 0.8)"
+        >
+          <el-table-column
+            prop="xzqh"
+            label="行政区划"
+            width="240"
+            show-overflow-tooltip
+          >
+          </el-table-column>
+          <el-table-column
+            prop="xzczs"
+            label="行政乡镇总数"
+            width="120"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="ybaczs"
+            label="应备案乡镇数"
+            width="120"
+            align="center"
+          >
+          </el-table-column>
+          <!-- <el-table-column
+            prop="qxysbczs"
+            label="旗县已上报的村庄数"
+            align="center"
+          >
+          </el-table-column> -->
+          <el-table-column
+            prop="sbdstczs"
+            label="上报到省厅村庄数"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="wbscjd"
+            label="文本审查节点(补正)"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="slsjbz"
+            label="矢量数据审查节点(机审)"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="ybas"
+            label="已备案数(用地审查节点)"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="bal"
+            label="备案率(%)(已备案数行政乡镇总数)"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column label="旗县未上报的乡镇数" align="center">
+            <template #default="scope">
+              <el-popover
+                placement="right"
+                :width="200"
+                trigger="click"
+                v-if="scope.row.wsbczs.length > 0"
+              >
+                <template #reference>
+                  <span style="cursor: pointer; color: #409eff">
+                    {{ scope.row.qxwsbczs }}</span
+                  >
+                  <!-- <i style="cursor: pointer" @click="getLayerId(scope.row)">
+                  </i> -->
+                </template>
+                <ul class="moreList">
+                  <li
+                    v-for="(item, i) in scope.row.wsbczs"
+                    :key="i"
+                    @click="clickMore(item, i)"
+                  >
+                    {{ i + 1 + "." + item }}
+                  </li>
+                </ul>
+              </el-popover>
+              <span v-else> {{ scope.row.qxwsbczs }}</span>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
+    </el-dialog>
   </div>
   <Scjg
     v-model:showTypeInfo="showTypeInfo"
@@ -490,7 +609,7 @@ import RkDialog from "@/components/ghcgscygl/ghcgsb/ztgh/rkDialog.vue";
 import request from "@/utils/request.js";
 import { scmxlist, startcgsc } from "@/api/ghcgysc/cggl.js";
 import { GetXzqList, GetXzq } from "@/api/homeApi.js";
-import { cgInfoList, cgDelete, updateCgInfo } from "@/api/ghcgysc/cgsbApi.js";
+import { cgInfoList, cgDelete, updateCgInfo ,getTownshipStatistics,} from "@/api/ghcgysc/cgsbApi.js";
 import { ElMessage, ElMessageBox, ElLoading } from "element-plus";
 import errorLog from "@/components/ghfxpj/wtsbztyy/errorLog.vue";
 import Scjg from "@/components/ghcgscygl/sccg/xmscjgCommon.vue";
@@ -603,6 +722,10 @@ export default {
       editId: "",
       name: "",
       loading: {},
+      issStat: false,
+      treeTableData: [],
+      defaultExpandedKeys: [],
+      loading2: true, //加载状态
       xmDetail(detail) {
         try {
           let info = JSON.parse(detail);
@@ -616,6 +739,18 @@ export default {
           });
         }
       },
+      showTJ() {
+        sjghcg.issStat = true;
+        getTownshipStatistics().then((res) => {
+          sjghcg.treeTableData = res.data;
+          sjghcg.defaultExpandedKeys = sjghcg.treeTableData.map((item) => {
+            if (item.level == 0) {
+              return item.id;
+            }
+          });
+          sjghcg.loading2 = false;
+        });
+      },
       getPlantype(plantype) {
         for (let i = 0; i < sjghcg.plantypeoptions.length; i++) {
           if (sjghcg.plantypeoptions[i].value == plantype) {