소스 검색

弃用代理/proxy_dms服务。
头部隐藏我的消息。
全流程管理列表页面添加dms数据模型并联调(创建时间需要调整)。

DESKTOP-6LTVLN7\Liumouren 2 년 전
부모
커밋
56b2689f80
6개의 변경된 파일214개의 추가작업 그리고 200개의 파일을 삭제
  1. 5 2
      src/api/url.js
  2. 4 0
      src/assets/global.css
  3. 37 60
      src/components/common/BottomMenus.vue
  4. 159 129
      src/components/common/WholeProcessManagement.vue
  5. 9 5
      src/components/layout/Header.vue
  6. 0 4
      vue.config.js

+ 5 - 2
src/api/url.js

@@ -6,9 +6,10 @@ export default {
   loginUrl: "/oauth/user/login",
   //   获取用户列表
   getUserInfo: "/oauth/api/user/getUserInfo",
-  //   请求DMS数据列表
+  //   请求DMS数据列表(列表返回)
   selectContentListInfo: "/dms/content/selectContentListInfo",
-  // selectContentListInfo: "/proxy_dms/content/selectContentListInfo",
+  //   请求DMS数据列表(分页总数返回)
+  selectContentList: "/dms/content/selectContentList",
   //   添加标记
   addConllection: "/conllection/conllection/addConllection",
   //   根据用户获取标记
@@ -17,4 +18,6 @@ export default {
   deleteConllection: "/conllection/conllection/deleteConllection",
   //   修改标记
   updateConllection: "/conllection/conllection/updateConllection",
+  //   类别数据请求
+  selectByCNameAType: "/dms/category/selectByCNameAType",
 };

+ 4 - 0
src/assets/global.css

@@ -312,4 +312,8 @@ body iframe {
 }
 .el-empty__description {
   margin: 0;
+}
+/* 时间范围组件 */
+.el-range-separator{
+  color: #ffffff !important;
 }

+ 37 - 60
src/components/common/BottomMenus.vue

@@ -1,24 +1,17 @@
 <template>
   <div id="bottomMenus">
     <!-- 底部菜单动态SVG底座 -->
-    <BottomMenuSvg
-      id="svgBox"
-      @changeShowBottomMenusStatus="changeShowBottomMenusStatus()"
-    />
+    <BottomMenuSvg id="svgBox" @changeShowBottomMenusStatus="changeShowBottomMenusStatus()" />
     <!-- 申请任务弹窗 -->
-    <CreateTaskForm
-      @changeShowBottomMenusStatus="changeShowBottomMenusStatus"
-    />
+    <CreateTaskForm @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
     <!-- 我的任务弹窗 -->
     <MyMission @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
     <!-- 同屏对比弹窗 -->
-    <SameScreenComparison
-      @changeShowBottomMenusStatus="changeShowBottomMenusStatus"
-    />
+    <SameScreenComparison @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
     <!-- 上传数据弹窗 -->
     <UploadingData @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
     <!-- 报告输出弹窗 -->
-    <ReportOutput @changeShowBottomMenusStatus="changeShowBottomMenusStatus"/>
+    <ReportOutput @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
     <!-- 自定义模型 -->
     <CustomModelDialog />
     <!-- 底部菜单主体 -->
@@ -27,7 +20,7 @@
       :style="{
         width: showBottomMenusStatus ? '981px' : '0px',
         height: showBottomMenusStatus ? '200px' : '0px',
-        border: showBottomMenusStatus ? '1px solid #00aaff' : 'none',
+        border: showBottomMenusStatus ? '1px solid #00aaff' : 'none'
       }"
     >
       <!-- 模块遍历渲染也是menus对象的第一层数组 -->
@@ -44,28 +37,16 @@
           <!-- 遍历渲染每个模块下的子菜单,也是menus数组中subMenu数组 -->
           <div
             class="colBtuMenu"
-            @click="
-              changeBottomMenu(item.index, subItem.index, subItem.clickEmit)
-            "
+            @click="changeBottomMenu(item.index, subItem.index, subItem.clickEmit)"
             v-for="(subItem, subIndex) in item.subMenu"
             :key="subIndex"
           >
             <!-- 选中状态的背景高亮(舍弃) -->
-            <div
-              :class="
-                ifMenuIndex(item.index, subItem.index) ? 'colBtuMenuShadow' : ''
-              "
-            ></div>
+            <div :class="ifMenuIndex(item.index, subItem.index) ? 'colBtuMenuShadow' : ''"></div>
 
             <!-- 子菜单图标的选择性渲染 -->
-            <el-image
-              class="BtuMenu_hover"
-              :src="returnBgImage(subItem.bgImage + '-a')"
-            ></el-image>
-            <el-image
-              class="BtuMenu"
-              :src="returnBgImage(subItem.bgImage)"
-            ></el-image>
+            <el-image class="BtuMenu_hover" :src="returnBgImage(subItem.bgImage + '-a')"></el-image>
+            <el-image class="BtuMenu" :src="returnBgImage(subItem.bgImage)"></el-image>
             <!-- 子菜单标题 -->
             <div class="BtuMenu_title">
               {{ subItem.title }}
@@ -115,8 +96,8 @@ export default {
           title: "任务申请",
           subMenu: [
             { index: 0, title: "申请任务", bgImage: "sqrw", clickEmit: "sqrw" },
-            { index: 1, title: "我的任务", bgImage: "wdrw", clickEmit: "wdrw" },
-          ],
+            { index: 1, title: "我的任务", bgImage: "wdrw", clickEmit: "wdrw" }
+          ]
         },
         {
           index: 1,
@@ -127,59 +108,63 @@ export default {
               index: 0,
               title: "疑点审计",
               bgImage: "ydsj",
-              clickEmit: "caseAuditEvent",
+              clickEmit: "caseAuditEvent"
             },
             {
               index: 1,
               title: "标记疑点",
               bgImage: "bjyd",
-              clickEmit: "labelCaseEvent",
+              clickEmit: "labelCaseEvent"
             },
             { index: 2, title: "同屏对比", bgImage: "tpdb", clickEmit: "tpdb" },
             {
               index: 3,
               title: "卷帘对比",
               bgImage: "jldb",
-              clickEmit: "JLControl",
+              clickEmit: "JLControl"
             },
             { index: 4, title: "上传数据", bgImage: "scsj", clickEmit: "scsj" },
             {
               index: 5,
               title: "自定义模型",
               bgImage: "zdymx",
-              clickEmit: "customModelEvent",
-            },
-          ],
+              clickEmit: "customModelEvent"
+            }
+          ]
         },
         {
           index: 2,
           width: "94px",
           title: "疑点报告",
-          subMenu: [{ index: 0, title: "报告输出", bgImage: "bgsc",clickEmit: "ReportOutput" }],
+          subMenu: [{ index: 0, title: "报告输出", bgImage: "bgsc", clickEmit: "ReportOutput" }]
         },
         {
           index: 3,
           width: "94px",
           title: "现场勘查",
-          subMenu: [{ index: 0, title: "发到手机", bgImage: "fdsj" }],
+          subMenu: [{ index: 0, title: "发到手机", bgImage: "fdsj", clickEmit: "notFound" }]
         }
-      ],
+      ]
     };
   },
-  mounted() {},
-  destroy() {},
+  mounted() {
+    // 报告输出事件监听
+    this.$bus.$on("notFound", () => {
+      this.$message.info("页面开发中,敬请期待!");
+    });
+  },
+  destroy() {
+    // 当容器销毁时,需要停止监听该事件
+    this.$bus.$off("notFound");
+  },
   props: [],
   methods: {
     // 根据菜单父级index和子菜单index,判断全局变量已选中底部菜单的index对比,返回状态。
     ifMenuIndex(index, subIndex) {
       if (index == 1) {
-        if (subIndex === 0 || subIndex === 1 || subIndex ===3) {
-          return (
-            this.$store.state.bottomMenuIndexs.index == index &&
-            this.$store.state.bottomMenuIndexs.subIndex == subIndex
-          );
+        if (subIndex === 0 || subIndex === 1 || subIndex === 3) {
+          return this.$store.state.bottomMenuIndexs.index == index && this.$store.state.bottomMenuIndexs.subIndex == subIndex;
         }
-
       }
     },
     // 根据菜单父级index和子菜单index,更新全局变量。
@@ -187,7 +172,7 @@ export default {
       // 该逻辑可能会舍弃
       this.$store.commit("changeBottomMenu", {
         index: index,
-        subIndex: subIndex,
+        subIndex: subIndex
       });
       if (clickEvent) {
         // 调用全局事件总线中的指定事件
@@ -196,10 +181,7 @@ export default {
     },
     // 根据菜单参数bgImage,菜单父级index和子菜单index,判断全局变量已选中底部菜单的index对比,返回不同状态下的icon图标地址。
     returnBgImage(bgImage, index, subIndex) {
-      if (
-        this.$store.state.bottomMenuIndexs.index == index &&
-        this.$store.state.bottomMenuIndexs.subIndex == subIndex
-      ) {
+      if (this.$store.state.bottomMenuIndexs.index == index && this.$store.state.bottomMenuIndexs.subIndex == subIndex) {
         return "/static/images/bottomMenuIcon/" + bgImage + "-a.png";
       } else {
         return "/static/images/bottomMenuIcon/" + bgImage + ".png";
@@ -217,9 +199,9 @@ export default {
         // 否则直接切换底部菜单显示隐藏状态
         this.showBottomMenusStatus = !this.showBottomMenusStatus;
       }
-    },
+    }
   },
-  watch: {},
+  watch: {}
 };
 </script>
 
@@ -307,12 +289,7 @@ export default {
       display: flex;
       justify-content: center;
       align-items: center;
-      background-image: linear-gradient(
-        to left,
-        @topTitleMinLeft,
-        @borderColor,
-        @topTitleMinLeft
-      );
+      background-image: linear-gradient(to left, @topTitleMinLeft, @borderColor, @topTitleMinLeft);
       font-size: 16px;
       font-family: pingfangSC;
       font-weight: 300;

+ 159 - 129
src/components/common/WholeProcessManagement.vue

@@ -2,24 +2,37 @@
   <!-- 全流程管理列表组件 -->
   <div id="WholeProcessManagement">
     <el-form :inline="true" ref="myTaskForm" :model="formInline" style="padding: 10px">
-      <el-form-item label="任务类型">
-        <el-select size="mini" v-model="formInline.taskType" placeholder="任务类型">
-          <el-option-group v-for="group in taskTypeOptions" :key="group.label" :label="group.label">
-            <el-option v-for="item in group.options" :key="item.value" :label="item.label" :value="item.value"> </el-option>
-          </el-option-group>
+      <el-form-item label="项目类型">
+        <el-select size="mini" v-model="formInline.c_task_type" placeholder="项目类型" clearable filterable>
+          <el-option
+            v-for="item in selectSelectDataMap['projectType']"
+            :key="item.index"
+            :label="item.name"
+            :value="item.index"
+          ></el-option>
         </el-select>
       </el-form-item>
-      <el-form-item label="关联项目">
-        <el-select size="mini" v-model="formInline.associatedItems" placeholder="关联项目">
-          <el-option v-for="item in associatedItemsOptions" :key="item.value" :label="item.label" :value="item.value">
+      <el-form-item label="所属街镇">
+        <el-select size="mini" v-model="formInline.c_owning_street_town" placeholder="所属街镇" clearable filterable>
+          <el-option
+            v-for="item in selectSelectDataMap['associatedItems']"
+            :key="item.index"
+            :label="item.name"
+            :value="item.index"
+          >
           </el-option>
         </el-select>
       </el-form-item>
-      <el-form-item label="审计状态">
-        <el-select size="mini" v-model="formInline.auditStatus" placeholder="审计状态">
-          <el-option label="已审核" value="ReviewedAndApproved"></el-option>
-          <el-option label="未审核" value="NotReviewed"></el-option>
-        </el-select>
+      <el-form-item label="创建时间">
+        <el-date-picker
+          size="mini"
+          v-model="formInline.c_create_date"
+          type="daterange"
+          range-separator="至"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期"
+        >
+        </el-date-picker>
       </el-form-item>
       <el-form-item style="float: right">
         <el-button type="primary" @click="onSubmit">查询</el-button>
@@ -27,6 +40,7 @@
       </el-form-item>
     </el-form>
     <el-table
+      v-loading="tableInitLoading"
       :data="tableData"
       style="width: calc(100% - 20px); padding: 0 10px"
       height="calc(80vh - 400px)"
@@ -35,15 +49,23 @@
       @row-click="rowClick"
     >
       <el-table-column type="index" width="50"> </el-table-column>
-      <el-table-column prop="taskId" label="任务编号"> </el-table-column>
-      <el-table-column prop="taskName" label="任务名称"> </el-table-column>
-      <el-table-column prop="createDate" label="创建时间"> </el-table-column>
-      <el-table-column prop="state" label="状态">
+      <el-table-column prop="c_project_id" label="项目编号"> </el-table-column>
+      <el-table-column prop="c_project_name" label="项目名称"> </el-table-column>
+      <el-table-column prop="c_task_type" label="项目类型">
         <template slot-scope="scope">
-          <el-tag :type="scope.row.state === '已审核' ? 'success' : 'info'" disable-transitions>{{ scope.row.state }}</el-tag>
+          {{ getSelectByIndex("projectType", scope.row.c_task_type) }}
+        </template>
+      </el-table-column>
+      <el-table-column prop="c_owning_street_town" label="所属街镇">
+        <template slot-scope="scope">
+          {{ getSelectByIndex("associatedItems", scope.row.c_owning_street_town) }}
+        </template>
+      </el-table-column>
+      <el-table-column prop="c_create_date" label="创建时间">
+        <template slot-scope="scope">
+          {{ $dayjs(scope.row.c_create_date).format("YYYY-MM-DD HH:mm:ss") }}
         </template>
       </el-table-column>
-      <el-table-column prop="taskType" label="任务类型"> </el-table-column>
     </el-table>
     <div id="WholeProcessManagement-footer">
       <Pagination :paginationData="paginationData" />
@@ -65,118 +87,26 @@ export default {
   components: { StepsMyBox, Pagination },
   data() {
     return {
+      tableInitLoading: true,
+      // 数据字典暂存对象
+      selectSelectDataMap: {
+        projectType: [],
+        associatedItems: []
+      },
       StepsMyBoxShowState: false,
       //   查询条件
       formInline: {
-        taskType: "",
-        associatedItems: "",
-        auditStatus: ""
+        c_task_type: "",
+        c_owning_street_town: "",
+        c_create_date: ""
       },
-      // 任务类型options
-      taskTypeOptions: [
-        {
-          label: "全部类型",
-          options: [
-            {
-              value: "all",
-              label: "全部类型"
-            }
-          ]
-        },
-        {
-          label: "基本类型",
-          options: [
-            {
-              value: "landResources",
-              label: "土地资源"
-            },
-            {
-              value: "ecologicalResources",
-              label: "生态资源"
-            },
-            {
-              value: "forestLandResources",
-              label: "林地资源"
-            },
-            {
-              value: "waterResources",
-              label: "水资源"
-            },
-            {
-              value: "townAreaTopic",
-              label: "镇域专题"
-            }
-          ]
-        },
-        {
-          label: "土地资源",
-          options: [
-            {
-              value: "lr_bfm",
-              label: "基本农田监控"
-            },
-            {
-              value: "lr_soclr",
-              label: "建设用地减量化监管"
-            }
-          ]
-        }
-      ],
-      // 关联项目options
-      associatedItemsOptions: [
-        {
-          value: "1",
-          label: "项目1"
-        },
-        {
-          value: "2",
-          label: "项目2"
-        }
-      ],
       // 我的任务form表单
-      tableData: [
-        {
-          createDate: "2016-05-03",
-          taskName: "任务名称",
-          taskId: "任务编号",
-          state: "已审核",
-          taskType: "土地资源"
-        },
-        {
-          createDate: "2016-05-03",
-          taskName: "任务名称",
-          taskId: "任务编号",
-          state: "未审核",
-          taskType: "土地资源"
-        },
-        {
-          createDate: "2016-05-03",
-          taskName: "任务名称",
-          taskId: "任务编号",
-          state: "已审核",
-          taskType: "土地资源"
-        },
-        {
-          createDate: "2016-05-03",
-          taskName: "任务名称",
-          taskId: "任务编号",
-          state: "已审核",
-          taskType: "土地资源"
-        },
-        {
-          createDate: "2016-05-03",
-          taskName: "任务名称",
-          taskId: "任务编号",
-          state: "已审核",
-          taskType: "土地资源"
-        }
-      ],
+      tableData: [],
       paginationData: {
-        pageSize: 0,
-        pagerCount: 5,
+        pageSize: 5,
         currentPage: 1,
         pageSizes: [5, 10, 20, 50],
-        total: 200,
+        total: 0,
         currentChange: val => {
           this.handleCurrentChange(val);
         },
@@ -187,28 +117,128 @@ export default {
     };
   },
   props: {},
-  mounted() {},
+  mounted() {
+    // 首先获取数据字典中的下拉框数据
+    this.selectSelectData("0", "审计类别", "projectType");
+    this.selectSelectData("0", "浦东新区行政区划", "associatedItems");
+    this.onSubmit();
+  },
   watch: {},
   methods: {
+    // 数据字典查询
+    selectSelectData(type, cName, keyName) {
+      let params = new FormData();
+      params.append("type", type);
+      params.append("cName", cName);
+      this.$Post(this.urlsCollection.selectByCNameAType, params).then(
+        res => {
+          if (res.code === 200 && res.content.length > 0) {
+            this.selectSelectDataMap[keyName] = res.content;
+          }
+        },
+        error => {
+          this.$message.error(error);
+          console.log(error);
+        }
+      );
+    },
+    // 数据字典对照显示
+    getSelectByIndex(selectName, index) {
+      let slotValue = "";
+      if (this.selectSelectDataMap[selectName] && this.selectSelectDataMap[selectName].length > 0) {
+        this.selectSelectDataMap[selectName].forEach(item => {
+          if (item.index == index) {
+            slotValue = item.name;
+          }
+        });
+      }
+      return slotValue;
+    },
     // 切换条数
     handleSizeChange(val) {
       console.log(`每页 ${val} 条`);
-      this.paginationData.currentPage = val;
+      this.paginationData.pageSize = val;
+      this.onSubmit();
     },
     //   切换页
     handleCurrentChange(val) {
       console.log(`当前页: ${val}`);
+      this.paginationData.currentPage = val;
+      this.onSubmit();
     },
     // 查询事件
     onSubmit() {
-      console.log("submit!");
+      if(!this.tableInitLoading){
+        this.tableInitLoading = true;
+      }
+      let params = new FormData();
+      params.append("columnId", "60");
+      params.append("states", "3");
+      params.append("pageSize", this.paginationData.pageSize);
+      params.append("page", this.paginationData.currentPage - 1);
+      let searchParam = [];
+      if (this.formInline.c_task_type) {
+        let param1 = {
+          field: "c_task_type",
+          searchType: "1",
+          content: {
+            value: this.formInline.c_task_type
+          }
+        };
+        searchParam.push(param1);
+      }
+      if (this.formInline.c_owning_street_town) {
+        let param1 = {
+          field: "c_owning_street_town",
+          searchType: "1",
+          content: {
+            value: this.formInline.c_owning_street_town
+          }
+        };
+        searchParam.push(param1);
+      }
+      if (this.formInline.c_create_date) {
+        let param1 = {
+          field: "c_create_date",
+          searchType: "3",
+          content: {
+            start: this.formInline.c_create_date[0],
+            end: this.formInline.c_create_date[0]
+          }
+        };
+        searchParam.push(param1);
+      }
+      params.append("search", JSON.stringify(searchParam));
+      this.$Post(this.urlsCollection.selectContentList, params).then(
+        res => {
+          if (res.code === 200 && res.content.count > 0) {
+            this.paginationData.total = res.content.count;
+            console.log("请求到的总条数为:", res.content.count, this.paginationData.total);
+          }
+        },
+        error => {
+          console.log(error);
+        }
+      );
+      this.$Post(this.urlsCollection.selectContentListInfo, params).then(
+        res => {
+          if (res.code === 200 && res.content.length > 0) {
+            this.tableData = res.content;
+            this.tableInitLoading = false;
+          }
+        },
+        error => {
+          this.tableInitLoading = false;
+          console.log(error);
+        }
+      );
     },
     // 查询条件重置
     resetForm() {
       this.formInline = {
-        taskType: "",
-        associatedItems: "",
-        auditStatus: ""
+        c_task_type: "",
+        c_owning_street_town: "",
+        c_create_date: ""
       };
       this.onSubmit();
     },

+ 9 - 5
src/components/layout/Header.vue

@@ -55,9 +55,9 @@
         <div class="user">
           <!-- 我的任务快捷菜单 -->
           <div class="manage-icon" @click="goToMyMission()"></div>
-          <div class="alert-icon">
+          <!-- <div class="alert-icon">
             <div class="alert-info">12</div>
-          </div>
+          </div> -->
           <div class="inner-user">
             <el-dropdown @command="handleCommand">
               <span class="el-dropdown-link">
@@ -309,12 +309,16 @@ export default {
   width: 95%;
   height: 100%;
   position: relative;
+  display: flex;
+  flex-direction: row;
+  flex-wrap: nowrap;
+  align-content: center;
+  justify-content: space-around;
+  align-items: center;
   .manage-icon {
     width: 28px;
     height: 28px;
-    position: absolute;
-    left: 20px;
-    top: 14px;
+    padding: 15px;
     background: url("../../assets/home/header_manage.png") no-repeat center;
   }
   .alert-icon {

+ 0 - 4
vue.config.js

@@ -40,10 +40,6 @@ module.exports = {
         target: "http://121.43.55.7:10081",
         changeOrigin: true, // 允许跨域
       },
-      // "/proxy_dms": {
-      //   target: "http://121.43.55.7:2101",
-      //   changeOrigin: true, // 允许跨域
-      // },
       "/conllection": {
         target: "http://121.43.55.7:10088",
         changeOrigin: true, // 允许跨域