Эх сурвалжийг харах

离行式自助机构巡检报表修改

jingyuanchao 1 жил өмнө
parent
commit
24c2ff6433

+ 130 - 138
src/views/core/reportForms/serviceBankReport.vue

@@ -1,118 +1,105 @@
 <template>
-    <div class="app-container">
-      <div class="main-search-box">
-          <el-form :model="queryParams" ref="queryForm" size="small"  :inline="true"
-          v-show="showSearch">
+  <div class="app-container">
+    <div class="main-search-box">
+      <el-form :model="queryParams" ref="queryForm" size="small" :inline="true"
+               v-show="showSearch">
+        <el-form-item label="组织机构">
+          <org-tree
+            v-model="queryParams.orgId"
+            @defaultOrg="getDefaultOrg"
+            @checkChange="checkChange"
+            @click="clickTreeNode"
+            hangsheTree
+            ref="orgTree"
+            :showCheckSub="false"
+          ></org-tree>
+        </el-form-item>
 
-            <!-- <el-form-item label="组织机构" prop="orgId" class="formTreeItem">
-            <tree-select
-              v-model="queryParams.orgId"
-              :options="deptOptions"
-              :show-count="true"
-              :normalizer="tenantIdnormalizer"
-              :props="{ checkStrictly: true, label: 'name' }"
-              placeholder="请选择归属机构"
-              clearValueText="清除"
-              :noChildrenText="''"
-              noOptionsText="没有数据"
-              noResultsText="没有搜索结果"
-            />
-          </el-form-item> -->
-          <el-form-item label="组织机构">
-                  <org-tree
-                    v-model="queryParams.orgId"
-                    @defaultOrg="getDefaultOrg"
-                    @checkChange="checkChange"
-                    @click="clickTreeNode"
-                    hangsheTree
-                  ref="orgTree"
-                  :showCheckSub="false"
-                  ></org-tree>
-              </el-form-item>
+        <el-form-item label="时间" prop="searchTime">
+          <el-date-picker value-format='yyyy-MM' v-model="queryParams.searchTime"
+                          align="right" type="month" placeholder="请选择查询时间">
+          </el-date-picker>
+        </el-form-item>
+      </el-form>
 
-              <el-form-item label="时间" prop="searchTime">
-              <el-date-picker   value-format='yyyy-MM' v-model="queryParams.searchTime"
-                                align="right" type="month" placeholder="请选择查询时间">
-                </el-date-picker>
-              </el-form-item>
-          </el-form>
+      <el-row :gutter="10">
+        <el-col :span="1.5">
+          <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        </el-col>
+        <el-col :span="1.5">
+          <el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+        </el-col>
+        <el-col :span="1.5">
+          <el-button type="primary" icon="el-icon-download" size="mini" @click="handleExport"
+                     v-hasPermi="['core:resumptionReport:export']">导出数据
+          </el-button>
+        </el-col>
+        <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+      </el-row>
 
-          <el-row :gutter="10">
-            <el-col :span="1.5">
-              <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-            </el-col>
-            <el-col :span="1.5">
-              <el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
-            </el-col>
-            <el-col :span="1.5">
-              <el-button type="primary" icon="el-icon-download" size="mini" @click="handleExport"
-                         v-hasPermi="['core:resumptionReport:export']">导出数据
-              </el-button>
-            </el-col>
-            <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
-          </el-row>
-
-          </div>
-      <div class="main-search-box" style="margin-bottom: 0;">
-        <h1 style="text-align:center;">{{ this.title}}</h1>
-      </div>
+    </div>
+    <div class="main-search-box" style="margin-bottom: 0;">
+      <h1 style="text-align:center;">{{ this.title }}</h1>
+    </div>
 
-      <el-table
-            border
-            height="616"
-            size="small"
-            v-loading="loading" :data="checkList" @selection-change="handleSelectionChange">
+    <el-table
+      border
+      height="616"
+      size="small"
+      v-loading="loading" :data="checkList" @selection-change="handleSelectionChange">
 
-            <el-table-column label="序号" align="center" min-width="50">
-              <template v-slot:default="scope">
-                <span v-text="getPageIndex(scope.$index)"> </span>
-              </template>
-            </el-table-column>
-            <el-table-column label="地区" align="center" prop="city" />
-            <el-table-column label="单位名称" align="center" prop="orgName" width="340"/>
-            <el-table-column label="网点数量" align="center" prop="networkNumber"/>
-            <el-table-column label="应履职次数" align="center" prop="planNumber"/>
-            <el-table-column label="已履职次数" align="center" prop="realityNumber"/>
-            <el-table-column label="履职完成率" align="center" prop="realityRate"/>
-            <el-table-column label="隐患数量" align="center" prop="abnormalNumber"/>
-            <el-table-column label="已整改数量" align="center" prop="realityRectificationNumber"/>
-            <el-table-column label="整改完成率" align="center" prop="realityRectificationRate"/>
-          </el-table>
-          <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
-                      :limit.sync="queryParams.pageSize"
-                      @pagination="getList"/>
+      <el-table-column label="序号" align="center" min-width="50">
+        <template v-slot:default="scope">
+          <span v-text="getPageIndex(scope.$index)"> </span>
+        </template>
+      </el-table-column>
+      <el-table-column label="地区" align="center" prop="city"/>
+      <el-table-column label="单位名称" align="center" prop="orgName" width="280"/>
+      <el-table-column v-if="!showLhOrgName" label="离行式机构数量" align="center" prop="networkNumber"/>
+      <el-table-column v-if="showLhOrgName" label="离行式机构名称" align="center" prop="lhOrgName"/>
+      <el-table-column label="应履职次数" align="center" prop="planNumber"/>
+      <el-table-column label="已履职次数" align="center" prop="realityNumber"/>
+      <el-table-column label="履职完成率" align="center" prop="realityRate"/>
+      <el-table-column label="隐患数量" align="center" prop="abnormalNumber"/>
+      <el-table-column label="已整改数量" align="center" prop="realityRectificationNumber"/>
+      <el-table-column label="整改完成率" align="center" prop="realityRectificationRate"/>
+    </el-table>
+    <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
+                :limit.sync="queryParams.pageSize"
+                @pagination="getList"/>
 
-    </div>
-  </template>
+  </div>
+</template>
 
-  <script>
-  import {mapGetters} from "vuex";
-    import tableList from '@/mixins/tableList'
-    import {listServiceBankReport} from "@/api/core/reportForms/resumptionReport";
-    import treeselect from '@riophae/vue-treeselect'
-    import "@riophae/vue-treeselect/dist/vue-treeselect.css";
-    import {deptTreeSelect,businessTreeSelect} from "@/api/system/public";
-       //import orgTree from "@/components/orgTree";
+<script>
+import {mapGetters} from "vuex";
+import tableList from '@/mixins/tableList'
+import {listServiceBankReport} from "@/api/core/reportForms/resumptionReport";
+import treeselect from '@riophae/vue-treeselect'
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import {deptTreeSelect, businessTreeSelect} from "@/api/system/public";
+//import orgTree from "@/components/orgTree";
 import OrgTree from "@/components/orgTree/orgQuerySelector.vue";
-    import { defineComponent } from 'vue';
+import {defineComponent} from 'vue';
+
 export default {
-  dicts: ['sys_normal_disable','sys_org_type','repot_cycle'],
+  dicts: ['sys_normal_disable', 'sys_org_type', 'repot_cycle'],
   name: "Check",
 
   /** 引入基础minxins*/
   mixins: [tableList],
 
-  components: {treeselect,OrgTree},
+  components: {treeselect, OrgTree},
 
   data() {
     return {
-        startDatepickerOptions: {
-    disabledDate(time) {
-      const date = new Date();
-      date.setTime(date.getTime());
-      return time.getTime() < date;
-    },
-  },
+      startDatepickerOptions: {
+        disabledDate(time) {
+          const date = new Date();
+          date.setTime(date.getTime());
+          return time.getTime() < date;
+        },
+      },
       // 遮罩层
       loading: true,
       // 选中数组
@@ -128,10 +115,8 @@ export default {
       showSearch: true,
       //区域
       roleOptions: [],
-       //全部检查机构
-  orgOptions: [],
-      //搜索tree
-      deptName: null,
+      //全部检查机构
+      orgOptions: [],
       // 部门树选项
       deptOptions: [],
       // 总条数
@@ -144,6 +129,7 @@ export default {
       title: "",
       // 是否显示弹出层
       open: false,
+      showLhOrgName: false,
       // 查询参数
       queryParams: {
         pageNum: 1,
@@ -151,15 +137,12 @@ export default {
         checkName: null,
         areaId: null,
         orgId: null,
-        searchTime:new Date()
+        searchTime: new Date()
       },
-      orgName:null,
+      orgName: null,
       // 表单参数
       form: {},
       // 表单校验
-      checkList: [],
-      roleOptions: [],
-      defaultKeys: [],
       //是否关联下级
       checked: false,
       defaultProps: {
@@ -191,8 +174,7 @@ export default {
   },
 
   created() {
-   // this.getDeptTree();
-  this. getList();
+    this.getList();
   },
   computed: {
     ...mapGetters(["orgId"]),
@@ -201,35 +183,46 @@ export default {
     getDefaultOrg(node) {
       this.queryParams.orgId = node.id;
       this.selectedOrgName = node.shortName;
+      this.checkIsShowOrgName(node);
       this.getList();
     },
-        //单选框状态改变
-        checkChange(state) {
+    //单选框状态改变
+    checkChange(state) {
       this.queryParams.checkSub = state;
       this.getList();
     },
-            // 节点单击事件
-            clickTreeNode(data) {
-      if(data==null){
+    // 节点单击事件
+    clickTreeNode(data) {
+      if (data == null) {
         return;
       }
+      this.checkIsShowOrgName(data);
       this.queryParams.orgId = data.id;
       this.selectedOrgName = data.shortName;
       this.getList();
     },
+    //根据选中机构来决定列表展示机构名称还是机构数量
+    checkIsShowOrgName(org) {
+      if (org.type < 3 || org.type == 9) {
+        this.showLhOrgName = false;
+      }
+      if (org.type == 3) {
+        this.showLhOrgName = true;
+      }
+    },
 
 
     /** treeSelect组件自定义数据*/
     tenantIdnormalizer(node, instanceId) {
-  if (node.children && !node.children.length) {
-    delete node.children;
-  }
-  return {
-    id: node.id,
-    label: node.shortName,
-    children: node.children,
-  };
-},
+      if (node.children && !node.children.length) {
+        delete node.children;
+      }
+      return {
+        id: node.id,
+        label: node.shortName,
+        children: node.children,
+      };
+    },
     getPageIndex($index) {
       //表格序号
       return (
@@ -237,26 +230,26 @@ export default {
       );
     },
     handleExport() {
-  this.download('core/resumptionReport/serviceBankExport', {
-    ...this.queryParams
-  }, `${this.orgName+'-离行式自助银行巡检情况表-'+this.formatTime(new Date(),'YYYYMMDD')}.xlsx`)
-},
+      this.download('core/resumptionReport/serviceBankExport', {
+        ...this.queryParams
+      }, `${this.orgName + '-离行式自助银行巡检情况表-' + this.formatTime(new Date(), 'YYYYMMDD')}.xlsx`)
+    },
 
 
     getList() {
       this.loading = true;
       listServiceBankReport(this.queryParams).then(response => {
         this.checkList = response.data;
-        this.title=response.title;
-        this.orgName=response.orgName;
+        this.title = response.title;
+        this.orgName = response.orgName;
         this.loading = false;
       });
     },
     getAllOrg() {
       selectAllOrg().then(response => {
-    this.orgOptions = response.data;
-  })
-},
+        this.orgOptions = response.data;
+      })
+    },
 
 
     // 取消按钮
@@ -288,9 +281,8 @@ export default {
     /** 重置按钮操作 */
     resetQuery() {
       this.resetForm("queryForm");
-      this.queryParams.orgId=this.orgId;
+      this.queryParams.orgId = this.orgId;
       this.handleQuery();
-    //  this.getDeptTree();
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
@@ -305,9 +297,9 @@ export default {
 </script>
 
 <style lang="scss" scoped>
-  ::v-deep.formTreeItem {
-    .el-form-item__content {
-      width: 264px;
-    }
+::v-deep.formTreeItem {
+  .el-form-item__content {
+    width: 264px;
   }
-  </style>
+}
+</style>