Forráskód Böngészése

频发问题以及法律法规条件查询

Bella 2 éve
szülő
commit
2b3b6b77cc

+ 50 - 64
src/components/popup/LawPopup.vue

@@ -13,8 +13,16 @@
     </div>
     <div class="option">
       <div class="option-left">
-        <el-input class="search-input" placeholder="请输入关键字"></el-input>
-        <div class="search-icon"><i class="el-icon-search"></i></div>
+        <el-input
+          class="search-input"
+          placeholder="请输入关键字"
+          v-model="searchInput"
+          clearable
+        >
+          <div class="search-icon" @click="getTableData(1)" slot="append">
+            <i class="el-icon-search"></i>
+          </div>
+        </el-input>
       </div>
       <div class="option-right">
         <NewSelect class="option-right-item" :placeholder="'排序方式'" />
@@ -59,6 +67,7 @@ export default {
   data() {
     return {
       lawBaseUrl: "/dms",
+      searchInput: "",
       // lawDetailsPopupShow: false,
       sortSelectVal: "土地资源",
       sortOptions: [
@@ -77,16 +86,6 @@ export default {
       timeSelectVal: "",
       timeOptions: [],
       tableData: [],
-      // tableData: [
-      //   {
-      //     name: "浦东新区区级政府投资项目审计监督办法",
-      //     date: "2022.09.25",
-      //   },
-      //   {
-      //     name: "审计法律法规文件1111",
-      //     date: "2022.09.25",
-      //   },
-      // ],
       paginationData: {
         pageSize: 10,
         pagerCount: 5,
@@ -128,16 +127,30 @@ export default {
     },
     // 切换页
     getTableData(val) {
-      console.log(`当前页: ${val}`);
+      // console.log(`当前页: ${val}`);
       this.tableData = [];
 
-      let params = new FormData();
+      let searchParam = [];
+
+      if (this.searchInput) {
+        let paramSearch = {
+          field: "c_name",
+          // 模糊查询
+          searchType: "2",
+          content: {
+            value: this.searchInput,
+          },
+        };
+        searchParam.push(paramSearch);
+      }
 
+      let params = new FormData();
       params = {
         columnId: 58,
         states: 3,
         pageSize: this.currentPageSize,
         page: val - 1,
+        search: JSON.stringify(searchParam),
       };
 
       this.$Post(this.urlsCollection.selectContentList, params).then(
@@ -146,7 +159,7 @@ export default {
           if (res.code === 200 && res.content.data.length > 0) {
             console.log(res.content, "查询到的法律法规相关的数据");
             this.paginationData.currentPage = val;
-            this.paginationData.total = res.content.count
+            this.paginationData.total = res.content.count;
             this.tableData = res.content.data.map((v) => {
               return {
                 id: v.id || "",
@@ -204,52 +217,6 @@ export default {
     height: 100%;
     z-index: 99;
   }
-  // .law-details-popup {
-  //   position: absolute;
-
-  //   display: flex;
-  //   align-items: center;
-  //   justify-content: center;
-  //   background: rgba(0, 39, 77, 0.9);
-  //   border: 1px solid #2fb8ff;
-  //   &-closebtn {
-  //     width: 30px;
-  //     height: 30px;
-  //     position: absolute;
-  //     top: 1px;
-  //     right: 1px;
-  //     background: url("../../assets/image/close.png") no-repeat center;
-  //     cursor: pointer;
-  //   }
-  //   &-inner {
-  //     width: 95%;
-  //     height: 90%;
-  //     .law-inner-title {
-  //       width: 100%;
-  //       height: 20%;
-  //       & > div {
-  //         width: 80%;
-  //         height: 40%;
-  //         margin: 0 auto;
-  //         text-align: center;
-  //         color: #fff;
-  //       }
-  //       & > div:nth-child(1) {
-  //         font-size: 20px;
-  //         font-weight: 500;
-  //       }
-  //       & > div:nth-child(2) {
-  //         color: rgb(192, 196, 204, 0.8);
-  //       }
-  //     }
-  //     .law-inner-content {
-  //       width: 100%;
-  //       height: 80%;
-  //       overflow: auto;
-  //       color: rgb(192, 196, 204, 0.8);
-  //     }
-  //   }
-  // }
   .title {
     margin: 0 auto;
     width: 99%;
@@ -313,15 +280,34 @@ export default {
         left: 5px;
         width: 225px;
       }
+      /deep/.el-input-group__append,
+      .el-input-group__prepend {
+        background-color: #00aaff54;
+        color: #fff;
+        border-left: none;
+        // border: none;
+        // border-radius: 1px;
+      }
+      /deep/.el-input-group--append .el-input__inner,
+      .el-input-group__prepend {
+        border-right: none;
+      }
       /deep/.el-input__inner {
         height: 35px;
       }
+
+      /deep/ .el-input__inner {
+        border-color: #fff !important;
+        color: #fff;
+      }
       .search-icon {
         position: absolute;
-        top: 12px;
-        right: 25px;
-        color: #fff;
+        top: 10px;
+        right: 16px;
         cursor: pointer;
+        display: flex;
+        align-items: center;
+        justify-content: center;
       }
     }
     &-right {

+ 0 - 2
src/views/ComprehensiveAnalysis.vue

@@ -870,8 +870,6 @@ export default {
       background-color: transparent;
       color: #fff;
       border-left: none;
-      // border: none;
-      // border-radius: 1px;
     }
     /deep/.el-input-group--append .el-input__inner,
     .el-input-group__prepend {

+ 124 - 94
src/views/FrequencyView.vue

@@ -7,6 +7,7 @@
           <div>
             <div class="text">类别 :</div>
             <NewSelect
+              ref="auditTypeRef"
               :placeholder="'请选择类别'"
               class="select-input"
               v-model="typeSelectVal"
@@ -17,16 +18,19 @@
           <div>
             <div class="text">被审计街镇 :</div>
             <NewSelect
+              ref="townTypeRef"
               :placeholder="'请选择街镇'"
               class="select-input"
-              v-model="streetSelectVal"
-              :options="streetOptions"
-              :value="streetSelectVal"
+              v-model="townSelectVal"
+              :options="townOptions"
+              :value="townSelectVal"
             />
           </div>
           <div>
             <div class="text">立项年度 :</div>
             <NewSelect
+              ref="timeRef"
+              :placeholder="'立项年度'"
               class="select-input"
               v-model="timeSelectVal"
               :options="timeOptions"
@@ -34,8 +38,8 @@
             />
           </div>
         </div>
+        <div class="query-btn" @click="getTableData(1)">查询</div>
         <div class="reset-btn" @click="resetEvent">重置</div>
-        <div class="query-btn" @click="queryEvent">查询</div>
       </div>
       <div class="center">
         <el-table :data="tableData" style="width: 100%" max-height="600">
@@ -73,7 +77,6 @@
 <script>
 import NewSelect from "@/components/common/NewSelect.vue";
 import Pagination from "@/components/common/Pagination.vue";
-import { street } from "@/config/common";
 /**
  * 频发问题 dialog -- 智能辅助
  * @author: Gao Lu
@@ -84,69 +87,15 @@ export default {
   components: { NewSelect, Pagination },
   data() {
     return {
+      // 数据字典暂存对象
+      classDictMap: {},
       typeSelectVal: "",
-      typeOptions: [
-        {
-          value: "1土地资源审计",
-          label: "1土地资源审计",
-        },
-        {
-          value: "2水资源审计",
-          label: "2水资源审计",
-        },
-        {
-          value: "3林地资源审计",
-          label: "3林地资源审计",
-        },
-        {
-          value: "4生态环境保护政策执行情况审计",
-          label: "4生态环境保护政策执行情况审计",
-        },
-        {
-          value: "5相关镇特色资源审计",
-          label: "5相关镇特色资源审计",
-        },
-      ],
-      streetSelectVal: "全部",
-      streetOptions: [],
-      timeSelectVal: 2019,
+      typeOptions: [],
+      townSelectVal: "",
+      townOptions: [],
+      timeSelectVal: "",
       timeOptions: [],
       tableData: [],
-      // tableData: [
-      //   {
-      //     createYear: "2021",
-      //     auditTown: "周浦",
-      //     type: "1土地资源审计",
-      //     keyPoint: "1-4建设用地减量化实施及腾出土地养护情况",
-      //     problemType: "贯彻执行国家和本市生态文明建设政策规定和决策部署方面",
-      //     problemNature: "环保督察问题整改落实不力",
-      //   },
-      //   {
-      //     createYear: "2021",
-      //     auditTown: "周浦",
-      //     type: "1土地资源审计",
-      //     keyPoint: "1-4建设用地减量化实施及腾出土地养护情况",
-      //     problemType: "贯彻执行国家和本市生态文明建设政策规定和决策部署方面",
-      //     problemNature: "环保督察问题整改落实不力",
-      //   },
-      //   {
-      //     createYear: "2021",
-      //     auditTown: "周浦",
-      //     type: "1土地资源审计",
-      //     keyPoint: "1-4建设用地减量化实施及腾出土地养护情况",
-      //     problemType: "贯彻执行国家和本市生态文明建设政策规定和决策部署方面",
-      //     problemNature: "环保督察问题整改落实不力",
-      //   },
-      //   {
-      //     createYear: "2021",
-      //     auditTown: "周浦",
-      //     type: "1土地资源审计",
-      //     keyPoint: "1-4建设用地减量化实施及腾出土地养护情况",
-      //     problemType: "贯彻执行国家和本市生态文明建设政策规定和决策部署方面",
-      //     problemNature: "环保督察问题整改落实不力",
-      //   },
-      // ],
-      currentPageSize: 5,
       currentPage: 1,
       paginationData: {
         pageSize: 0,
@@ -164,15 +113,16 @@ export default {
     };
   },
   created() {
-    this.streetOptions = [];
+    this.townOptions = [];
     this.timeOptions = [];
+    this.typeOptions = [];
     // 街道下拉框
-    for (let key in street) {
-      this.streetOptions.push({
-        value: street[key],
-        label: street[key],
-      });
-    }
+    // for (let key in town) {
+    //   this.townOptions.push({
+    //     value: town[key],
+    //     label: town[key],
+    //   });
+    // }
     // 时间选择
     for (let i = 1980; i < 2023; i++) {
       this.timeOptions.unshift({
@@ -180,46 +130,126 @@ export default {
         label: i,
       });
     }
+    // 获取数据字典中下拉框数据
+    this.classDictQuery("0", "审计类别", "审计类别");
+    this.classDictQuery("0", "浦东新区行政区划", "浦东新区行政区划");
     this.getTableData(1);
   },
   methods: {
-    queryEvent() {
-      console.log("查询");
+    // 数据字典查询 -- 获取所需类别
+    classDictQuery(type, cName, keyName) {
+      let params = new FormData();
+      params = {
+        type: type,
+        cName: cName,
+      };
+
+      this.$Post(this.urlsCollection.selectByCNameAType, params).then((res) => {
+        if (res.code === 200 && res.content.length > 0) {
+          this.classDictMap[keyName] = new Map();
+          res.content.forEach((v) => {
+            this.classDictMap[keyName].set(v.index + "", v.name);
+          });
+
+          if (keyName === "浦东新区行政区划") {
+            this.classDictMap[keyName].forEach((v, i) => {
+              this.townOptions.push({
+                value: i,
+                label: v,
+              });
+            });
+          }
+
+          if (keyName === "审计类别") {
+            this.classDictMap[keyName].forEach((v, i) => {
+              this.typeOptions.push({
+                value: i,
+                label: v,
+              });
+            });
+          }
+        }
+      });
     },
     resetEvent() {
+      this.typeSelectVal = "";
+      this.townSelectVal = "";
+      this.timeSelectVal = "";
+      this.$refs.auditTypeRef.imgValue = "";
+      this.$refs.townTypeRef.imgValue = "";
+      this.$refs.timeRef.imgValue = "";
+      this.getTableData(1);
       console.log("重置");
     },
     // 切换页
     getTableData(val) {
       this.tableData = [];
       console.log(`当前页: ${val}`);
+
+      let searchParam = [];
+      // 类别
+      if (this.typeSelectVal) {
+        let paramType = {
+          field: "sj_select",
+          // 等值查询
+          searchType: "1",
+          content: {
+            value: this.typeSelectVal,
+          },
+        };
+        searchParam.push(paramType);
+      }
+      // 被审计街镇
+      if (this.townSelectVal) {
+        let paramTown = {
+          field: "bsjz",
+          // 等值查询
+          searchType: "1",
+          content: {
+            value: this.townSelectVal,
+          },
+        };
+        searchParam.push(paramTown);
+      }
+      // 立项年度
+      if (this.timeSelectVal) {
+        let paramTime = {
+          field: "c_years",
+          // 等值查询
+          searchType: "1",
+          content: {
+            value: this.timeSelectVal,
+          },
+        };
+        searchParam.push(paramTime);
+      }
       let params = new FormData();
       params = {
         columnId: 57,
         states: 3,
         pageSize: this.currentPageSize,
         page: val - 1,
+        search: JSON.stringify(searchParam),
       };
 
-      this.$Post(this.urlsCollection.selectContentList, params).then(
-        (res) => {
-          if (res.code === 200 && res.content.data.length > 0) {
-            this.paginationData.currentPage = val;
-            this.paginationData.total = res.content.count
-            this.tableData = res.content.data.map((v) => {
-              return {
-                id: v.id || "--",
-                createYear: v.c_years || "--",
-                auditTown: "--",
-                type: "--",
-                keyPoint: v.c_zdsjsx || "--",
-                problemType: v.c_wtfl || "--",
-                problemNature: v.c_wtdx || "--",
-              };
-            });
-          }
+      this.$Post(this.urlsCollection.selectContentList, params).then((res) => {
+        if (res.code === 200 && res.content.data.length > 0) {
+          this.paginationData.currentPage = val;
+          this.paginationData.total = res.content.count;
+          this.tableData = res.content.data.map((v) => {
+            return {
+              id: v.id || "--",
+              createYear: v.c_years || "--",
+              auditTown:
+                this.classDictMap["浦东新区行政区划"].get(v.bsjz) || "--",
+              type: this.classDictMap["审计类别"].get(v.sj_select) || "--",
+              keyPoint: v.c_zdsjsx || "--",
+              problemType: v.c_wtfl || "--",
+              problemNature: v.c_wtdx || "--",
+            };
+          });
         }
-      );
+      });
     },
     // 切换条数
     handleSizeChange(val) {
@@ -296,11 +326,11 @@ export default {
         top: 15px;
       }
       .reset-btn {
-        right: 110px;
+        right: 30px;
         background: rgba(129, 140, 164, 1);
       }
       .query-btn {
-        right: 30px;
+        right: 110px;
         background-image: linear-gradient(
           to top,
           rgba(79, 172, 254, 1),

+ 76 - 24
src/views/LawView.vue

@@ -13,7 +13,8 @@
           <div>
             <div class="text">类型 :</div>
             <NewSelect
-              :placeholder="'请选择审计法律类别'"
+              ref="lawTypeRef"
+              :placeholder="typePlaceholder"
               class="select-input"
               v-model="typeSelectVal"
               :options="typeOptions"
@@ -23,7 +24,8 @@
           <div>
             <div class="text">年份 :</div>
             <NewSelect
-              :placeholder="'请选择年份'"
+              ref="lawYearRef"
+              :placeholder="timePlaceholder"
               class="select-input"
               v-model="timeSelectVal"
               :options="timeOptions"
@@ -46,8 +48,8 @@
             <el-input class="search-input" v-model="searchInput"> </el-input>
           </div>
         </div>
+        <div class="query-btn" @click="getTableData(1)">查询</div>
         <div class="reset-btn" @click="resetEvent">重置</div>
-        <div class="query-btn" @click="queryEvent">查询</div>
       </div>
       <div class="center">
         <el-table
@@ -85,8 +87,6 @@ import Pagination from "@/components/common/Pagination.vue";
 // 法律法规细节文档弹窗
 import LawDetailsPopup from "@/components/popup/LawDetailsPopup.vue";
 import FilePreview from "@/components/common/FilePreView.vue";
-
-import { lawType } from "@/config/common";
 /**
  * 法律法规 页面 -- 智能辅助,疑点相关的法律法规
  * @author: Gao Lu
@@ -100,8 +100,10 @@ export default {
       // 数据字典暂存对象
       classDictMap: {},
       searchInput: "",
+      typePlaceholder: "请选择审计法律类别",
       typeSelectVal: "",
       typeOptions: [],
+      timePlaceholder: "请选择年份",
       timeSelectVal: "",
       timeOptions: [],
       tableData: [],
@@ -134,15 +136,13 @@ export default {
       });
     }
 
-    for (let key in lawType) {
-      this.typeOptions.unshift({
-        value: key,
-        label: key,
-      });
-    }
+    console.log(this.typeSelectVal, "type");
+    console.log(this.timeSelectVal, "time");
+
     // 审计等级
     this.classDictQuery("0", "sj_class", "审计等级");
-    this.classDictQuery("0", "sh_law_type", "审计类别");
+    // 审计类别
+    this.classDictQuery("0", "sh_law_type", "审计法律类别");
     this.getTableData(1);
   },
   methods: {
@@ -158,8 +158,17 @@ export default {
           if (res.code === 200 && res.content.length > 0) {
             this.classDictMap[keyName] = new Map();
             res.content.forEach((v) => {
-              this.classDictMap[keyName].set(v.index, v.name);
+              this.classDictMap[keyName].set(v.index + "", v.name);
             });
+
+            if (keyName === "审计法律类别") {
+              this.classDictMap[keyName].forEach((v, i) => {
+                this.typeOptions.unshift({
+                  value: i,
+                  label: v,
+                });
+              });
+            }
           }
         },
         (error) => {
@@ -168,39 +177,82 @@ export default {
         }
       );
     },
-    queryEvent() {
-      console.log("查询");
-    },
     resetEvent() {
       console.log("重置");
+      this.typeSelectVal = "";
+      this.timeSelectVal = "";
+      this.searchInput = "";
+      this.$refs.lawTypeRef.imgValue = "";
+      this.$refs.lawYearRef.imgValue = "";
+      this.getTableData(this.currentPage);
+      console.log(this.typeSelectVal, "type");
+      console.log(this.timeSelectVal, "time");
     },
     // 切换页
     getTableData(val) {
-      console.log(`当前页: ${val}`);
+      // console.log(`当前页: ${val}`);
       this.tableData = [];
 
-      let params = new FormData();
+      let searchParam = [];
+      // 类别
+      if (this.typeSelectVal) {
+        let paramType = {
+          field: "type",
+          // 等值查询
+          searchType: "1",
+          content: {
+            value: this.typeSelectVal,
+          },
+        };
+        searchParam.push(paramType);
+      }
 
+      // 年份查询
+      if (this.timeSelectVal) {
+        let paramTime = {
+          field: "c_date",
+          // 模糊查询
+          searchType: "2",
+          content: {
+            value: this.timeSelectVal + "",
+          },
+        };
+        searchParam.push(paramTime);
+      }
+
+      if (this.searchInput) {
+        let paramSearch = {
+          field: "c_name",
+          // 模糊查询
+          searchType: "2",
+          content: {
+            value: this.searchInput,
+          },
+        };
+        searchParam.push(paramSearch);
+      }
+
+      let params = new FormData();
       params = {
         columnId: 58,
         states: 3,
         pageSize: this.currentPageSize,
         page: val - 1,
+        search: JSON.stringify(searchParam),
       };
 
       this.$Post(this.urlsCollection.selectContentList, params).then(
         (res) => {
-          console.log(res, "当前的法律法规");
           if (res.code === 200 && res.content.data.length > 0) {
-            console.log(res.content, "查询到的法律法规相关的数据");
+            // console.log(res.content, "查询到的法律法规相关的数据");
             this.paginationData.currentPage = val;
             this.paginationData.total = res.content.count;
             this.tableData = res.content.data.map((v) => {
               return {
                 id: v.id || "",
                 title: v.c_name || "--",
-                type: v.type || "--",
-                class: v.class || "--",
+                type: this.classDictMap["审计法律类别"].get(v.type) || "--",
+                class: this.classDictMap["审计等级"].get(v.class) || "--",
                 date: v.c_date || "--",
                 address: v.c_pdf || "",
               };
@@ -319,11 +371,11 @@ export default {
         top: 15px;
       }
       .reset-btn {
-        right: 110px;
+        right: 30px;
         background: rgba(129, 140, 164, 1);
       }
       .query-btn {
-        right: 30px;
+        right: 110px;
         background-image: linear-gradient(
           to top,
           rgba(79, 172, 254, 1),