Browse Source

新home组件库

Shannon_mu 3 years ago
parent
commit
a7708ee6ed
19 changed files with 207 additions and 192 deletions
  1. 1 0
      operationSupport/src/components/common/Home.vue
  2. 8 2
      operationSupport/src/store/store.js
  3. 57 8
      operationSupport/src/views/assetManagement/shopManagement/details.vue
  4. 5 4
      operationSupport/src/views/businessManagement/contractManagement/index.vue
  5. 23 4
      operationSupport/src/views/businessManagement/enterpriseManagement/stepPage/details.vue
  6. 53 7
      operationSupport/src/views/businessManagement/rentalAndSale/details.vue
  7. 11 51
      operationSupport/src/views/newWorkBench/components/collectionRate.vue
  8. 0 19
      operationSupport/src/views/newWorkBench/components/complaintsAndSuggestions.vue
  9. 0 19
      operationSupport/src/views/newWorkBench/components/complaintsSuggestions.vue
  10. 0 8
      operationSupport/src/views/newWorkBench/components/discount.vue
  11. 2 12
      operationSupport/src/views/newWorkBench/components/equipmentStatistics.vue
  12. 0 9
      operationSupport/src/views/newWorkBench/components/householdGender.vue
  13. 10 11
      operationSupport/src/views/newWorkBench/components/householdIdentity.vue
  14. 0 5
      operationSupport/src/views/newWorkBench/components/ownerApproval.vue
  15. 0 5
      operationSupport/src/views/newWorkBench/components/pendingComplaints.vue
  16. 10 1
      operationSupport/src/views/newWorkBench/components/permissionComponent.js
  17. 0 8
      operationSupport/src/views/newWorkBench/components/rentalAndSaleRate.vue
  18. 0 19
      operationSupport/src/views/newWorkBench/components/satisfaction.vue
  19. 27 0
      operationSupport/src/views/newWorkBench/index.vue

+ 1 - 0
operationSupport/src/components/common/Home.vue

@@ -119,5 +119,6 @@ export default {
 .newWorkBench {
 .newWorkBench {
     background-color: #2c354a;
     background-color: #2c354a;
     overflow: hidden;
     overflow: hidden;
+    padding-top: 0;
 }
 }
 </style>
 </style>

+ 8 - 2
operationSupport/src/store/store.js

@@ -50,7 +50,8 @@ const store = new Vuex.Store({
         communityArray: [],
         communityArray: [],
         // 当前缩放比
         // 当前缩放比
         scale: document.body.clientWidth / 1920,
         scale: document.body.clientWidth / 1920,
-        dragItemData: {}
+        dragItemData: {},
+        homeCommunityAll: ''
     },
     },
     getters: {
     getters: {
         getTheme(state) {
         getTheme(state) {
@@ -120,6 +121,9 @@ const store = new Vuex.Store({
         getDragItem(state, data) {
         getDragItem(state, data) {
             return state.dragItemData;
             return state.dragItemData;
         },
         },
+        getHomeCommunityAll(state) {
+            return state.homeCommunityAll
+        }
     },
     },
     mutations: {
     mutations: {
         setSearchPointInfo(state, data) {
         setSearchPointInfo(state, data) {
@@ -191,7 +195,9 @@ const store = new Vuex.Store({
         setDragItem(state, data) {
         setDragItem(state, data) {
             state.dragItemData = data;
             state.dragItemData = data;
         },
         },
-
+        setHomeCommunityAll(state, data) {
+            state.homeCommunityAll = data;
+        }
     },
     },
     actions: {
     actions: {
         tags(ctx, data) {
         tags(ctx, data) {

+ 57 - 8
operationSupport/src/views/assetManagement/shopManagement/details.vue

@@ -37,7 +37,23 @@
                 </zz-table>
                 </zz-table>
             </div>
             </div>
             <div class="content-item" v-show="tabsIndex === 3">
             <div class="content-item" v-show="tabsIndex === 3">
-                <zz-table :cols="cols1" :data="mixins_list" :pageset="mixins_pageset" :settings="{ stripe: true }"> </zz-table>
+                <zz-table
+                    :cols="cols1"
+                    :settings="{ showIndex: true, stripe: true }"
+                    :loading="mixins_onQuery"
+                    :data="mixins_list"
+                    :pageset="mixins_pageset"
+                    @page-change="pageChange"
+                    @selection-change="selectionChange"
+                >
+                    <template slot-scope="scope" slot="opt">
+                        <div class="opt">
+                            <el-tooltip effect="light" placement="bottom" content="详情">
+                                <i class="zoniot_font zoniot-icon-xiangqing" @click="lookDetail(scope.row)"></i>
+                            </el-tooltip>
+                        </div>
+                    </template>
+                </zz-table>
             </div>
             </div>
         </div>
         </div>
     </div>
     </div>
@@ -292,27 +308,32 @@ export default {
             cols1: [
             cols1: [
                 {
                 {
                     label: '合同名称',
                     label: '合同名称',
-                    prop: 'communityName'
+                    prop: 'contractName'
                 },
                 },
                 {
                 {
                     label: '合同类型',
                     label: '合同类型',
-                    prop: 'buildingName'
+                    prop: 'contractType',
+                    format(val) {
+                        if (val == 0) {
+                            return '租赁合同';
+                        }
+                    }
                 },
                 },
                 {
                 {
                     label: '签订时间',
                     label: '签订时间',
-                    prop: 'buildingName'
+                    prop: 'signTime'
                 },
                 },
                 {
                 {
                     label: '到期时间',
                     label: '到期时间',
-                    prop: 'buildingName'
+                    prop: 'endTime'
                 },
                 },
                 {
                 {
                     label: '租赁方',
                     label: '租赁方',
-                    prop: 'buildingName'
+                    prop: 'userName'
                 },
                 },
                 {
                 {
                     label: '备注',
                     label: '备注',
-                    prop: 'buildingName'
+                    prop: 'remark'
                 },
                 },
                 {
                 {
                     label: '操作',
                     label: '操作',
@@ -343,6 +364,7 @@ export default {
         this.id = this.$route.query.id;
         this.id = this.$route.query.id;
         this.getDetails();
         this.getDetails();
         this.getMember();
         this.getMember();
+        this.getContract();
     },
     },
     methods: {
     methods: {
         toggleTab(index) {
         toggleTab(index) {
@@ -379,7 +401,7 @@ export default {
             this.$http
             this.$http
                 .get('/sc-community/assets/house/find/house?houseId=' + this.id)
                 .get('/sc-community/assets/house/find/house?houseId=' + this.id)
                 .then((res) => {
                 .then((res) => {
-                     if (!!res) {
+                    if (!!res) {
                         this.detailsData = res;
                         this.detailsData = res;
                         if (!!res.residentId) {
                         if (!!res.residentId) {
                             this.getHouse(res.residentId);
                             this.getHouse(res.residentId);
@@ -427,6 +449,33 @@ export default {
                 showConfirmButton: true,
                 showConfirmButton: true,
                 title: '成员信息'
                 title: '成员信息'
             });
             });
+        },
+        getContract() {
+            this.mixins_query = {
+                houseName: this.detailsData.roomNumber
+            };
+            this.mixins_dataUrl = '/sc-community/contract/page';
+
+            this.mixins_search();
+        },
+        lookDetail(row) {
+            new Promise((resolve) => {
+                this.$store.dispatch('addPopup', {
+                    url: '/businessManagement/contractManagement/stepPage/details.vue',
+                    width: '850px',
+                    height: '600px',
+                    props: {
+                        row,
+                        callback: resolve
+                    },
+                    title: '合同详情',
+                    hideStar: true,
+                    showCancelButton: true,
+                    showConfirmButton: true
+                });
+            }).then(() => {
+                this.mixins_search();
+            });
         }
         }
     }
     }
 };
 };

+ 5 - 4
operationSupport/src/views/businessManagement/contractManagement/index.vue

@@ -1,6 +1,6 @@
 <template>
 <template>
     <div class="main">
     <div class="main">
-        <div class="search">
+        <div class="search" v-if="!condition">
             <el-input placeholder="请输入合同编号/名称" class="search-input" clearable v-model="mixins_query.contractName"></el-input>
             <el-input placeholder="请输入合同编号/名称" class="search-input" clearable v-model="mixins_query.contractName"></el-input>
             <el-select placeholder="合同状态" v-model="mixins_query.adStatus" clearable>
             <el-select placeholder="合同状态" v-model="mixins_query.adStatus" clearable>
                 <el-option v-for="(item, index) in advertisingStatus" :key="index" :label="item.label" :value="item.status">{{
                 <el-option v-for="(item, index) in advertisingStatus" :key="index" :label="item.label" :value="item.status">{{
@@ -21,9 +21,6 @@
                 <el-tooltip class="item" effect="light" placement="bottom" content="新增">
                 <el-tooltip class="item" effect="light" placement="bottom" content="新增">
                     <i class="zoniot_font zoniot-icon-tianjia2" @click="addOrEdit('add')"></i>
                     <i class="zoniot_font zoniot-icon-tianjia2" @click="addOrEdit('add')"></i>
                 </el-tooltip>
                 </el-tooltip>
-                <!-- <el-tooltip class="item" effect="light" placement="bottom" content="导出">
-                    <i class="zoniot_font zoniot-icon-daochu2" @click="exportExcel"></i>
-                </el-tooltip> -->
             </div>
             </div>
         </div>
         </div>
         <div class="roles-wrap">
         <div class="roles-wrap">
@@ -165,9 +162,13 @@ export default {
             CommunityTree: []
             CommunityTree: []
         };
         };
     },
     },
+    props: ['condition'],
     created() {
     created() {
         this.getorgTree();
         this.getorgTree();
         this.getCommunityArr();
         this.getCommunityArr();
+        if (!!this.condition) {
+            this.mixins_query = this.condition;
+        }
         this.mixins_dataUrl = '/sc-community/contract/page';
         this.mixins_dataUrl = '/sc-community/contract/page';
         this.mixins_search();
         this.mixins_search();
     },
     },

+ 23 - 4
operationSupport/src/views/businessManagement/enterpriseManagement/stepPage/details.vue

@@ -1,7 +1,7 @@
 <template>
 <template>
     <div class="scheduling">
     <div class="scheduling">
         <div class="search">
         <div class="search">
-            <div class="titleHade">{{fromData.name}}</div>
+            <div class="titleHade">{{ fromData.name }}</div>
             <div class="search-icon">
             <div class="search-icon">
                 <el-tooltip effect="light" placement="bottom" content="返回">
                 <el-tooltip effect="light" placement="bottom" content="返回">
                     <i class="zoniot_font zoniot-icon-fanhui" @click="goback()"></i>
                     <i class="zoniot_font zoniot-icon-fanhui" @click="goback()"></i>
@@ -21,6 +21,12 @@
                     <household-table :tableName="tableArr.left" :tabData="fromData"></household-table>
                     <household-table :tableName="tableArr.left" :tabData="fromData"></household-table>
                     <household-table :tableName="tableArr.right" :tabData="fromData"></household-table>
                     <household-table :tableName="tableArr.right" :tabData="fromData"></household-table>
                 </div>
                 </div>
+                <div class="businessLicense">
+                    <span>营业执照</span>
+
+                    <el-image :src="fromData.businessLicense" :preview-src-list="[fromData.businessLicense]"> </el-image>
+                </div>
+
                 <div class="formContent-item_title">联系人信息</div>
                 <div class="formContent-item_title">联系人信息</div>
                 <div class="widthFlex">
                 <div class="widthFlex">
                     <household-table :tableName="tableArrBottom.left" :tabData="fromData"></household-table>
                     <household-table :tableName="tableArrBottom.left" :tabData="fromData"></household-table>
@@ -29,14 +35,16 @@
             </div>
             </div>
             <div class="content-item" v-show="tabsIndex == 1">
             <div class="content-item" v-show="tabsIndex == 1">
                 <div class="formContent-item_title">合同列表</div>
                 <div class="formContent-item_title">合同列表</div>
+                <contract-management :condition="{ companyId: $parent.objRow.id }"></contract-management>
             </div>
             </div>
         </div>
         </div>
     </div>
     </div>
 </template>
 </template>
 <script>
 <script>
 import householdTable from './householdTable.vue';
 import householdTable from './householdTable.vue';
+import contractManagement from '@views/businessManagement/contractManagement/index';
 export default {
 export default {
-    components: { householdTable },
+    components: { householdTable, contractManagement },
     data() {
     data() {
         var _this = this;
         var _this = this;
         return {
         return {
@@ -147,11 +155,22 @@ export default {
 </script>
 </script>
 <style scoped lang='scss'>
 <style scoped lang='scss'>
 @import './style.scss';
 @import './style.scss';
-.titleHade{
+.titleHade {
     line-height: rem(30);
     line-height: rem(30);
-    display:inline-block;
+    display: inline-block;
     font-size: 24px;
     font-size: 24px;
     font-weight: 600;
     font-weight: 600;
     color: #424656;
     color: #424656;
 }
 }
+.businessLicense {
+    height: 60px;
+    line-height: 60px;
+    margin-bottom: 20px;
+   /deep/ .el-image {
+        width: 80px;
+        height: 100%;
+        vertical-align: bottom;
+        margin-left: 20px;
+    }
+}
 </style>
 </style>

+ 53 - 7
operationSupport/src/views/businessManagement/rentalAndSale/details.vue

@@ -1,6 +1,7 @@
 <template>
 <template>
     <div class="">
     <div class="">
         <div class="search">
         <div class="search">
+            <div class="search-title">{{ CheckChinese(prData.communityName, '社区') }}{{ CheckChinese(prData.buildingName, '栋') }}</div>
             <el-input placeholder="输入房间号" class="search-input" clearable v-model="mixins_query.roomNumber"></el-input>
             <el-input placeholder="输入房间号" class="search-input" clearable v-model="mixins_query.roomNumber"></el-input>
             <el-select v-model="mixins_query.salesStatus" placeholder="请选择租售状态">
             <el-select v-model="mixins_query.salesStatus" placeholder="请选择租售状态">
                 <el-option label="未租售" :value="0"></el-option>
                 <el-option label="未租售" :value="0"></el-option>
@@ -23,6 +24,14 @@
                 @page-change="pageChange"
                 @page-change="pageChange"
                 @selection-change="selectionChange"
                 @selection-change="selectionChange"
             >
             >
+                <template slot-scope="scope" slot="roomNumber">
+                    {{
+                        `${CheckChinese(scope.row.communityName, '社区')}${CheckChinese(scope.row.buildingName, '栋')}${CheckChinese(
+                            scope.row.unitName,
+                            '单元'
+                        )}${scope.row.roomNumber}`
+                    }}
+                </template>
             </zz-table>
             </zz-table>
         </div>
         </div>
     </div>
     </div>
@@ -38,6 +47,7 @@ export default {
         lookDetails
         lookDetails
     },
     },
     data() {
     data() {
+        let _this = this;
         return {
         return {
             isLook: false,
             isLook: false,
             thisObj: {},
             thisObj: {},
@@ -45,23 +55,40 @@ export default {
             cols: [
             cols: [
                 {
                 {
                     label: '房屋名称',
                     label: '房屋名称',
-                    prop: 'buildingName'
+                    prop: 'roomNumber',
+                    slot: 'roomNumber'
                 },
                 },
                 {
                 {
                     label: '建筑面积(㎡)',
                     label: '建筑面积(㎡)',
-                    prop: 'unitNumber'
+                    prop: 'buildingArea',
+                    format(val) {
+                        if (!!val) {
+                            return val + '㎡';
+                        } else {
+                            return '-';
+                        }
+                    }
                 },
                 },
                 {
                 {
                     label: '租售状态',
                     label: '租售状态',
-                    prop: 'floorsNumber'
+                    prop: 'salesStatus',
+                    format(val) {
+                        if (val == 0) {
+                            return '未租售';
+                        } else if (val == 1) {
+                            return '已售';
+                        } else if (val == 2) {
+                            return '已租';
+                        }
+                    }
                 },
                 },
                 {
                 {
                     label: '客户/业主名称',
                     label: '客户/业主名称',
-                    prop: 'houseNumber'
+                    prop: 'userName'
                 },
                 },
                 {
                 {
                     label: '到期时间',
                     label: '到期时间',
-                    slot: 'SaleNums'
+                    prop: 'endTime'
                 }
                 }
             ],
             ],
             mixins_post: 'post'
             mixins_post: 'post'
@@ -72,13 +99,21 @@ export default {
         this.mixins_dataUrl = '/sc-community/rentalSales/detail';
         this.mixins_dataUrl = '/sc-community/rentalSales/detail';
         this.mixins_query = {
         this.mixins_query = {
             communityId: this.prData.communityId,
             communityId: this.prData.communityId,
-            buildingName: this.prData.buildingName
+            buildingId: this.prData.buildingId
         };
         };
 
 
         this.mixins_search();
         this.mixins_search();
     },
     },
     mounted() {},
     mounted() {},
     methods: {
     methods: {
+        CheckChinese(val, name) {
+            var reg = new RegExp('[\\u4E00-\\u9FFF]+', 'g');
+            let newVal = val;
+            if (!reg.test(val) && !!val) {
+                newVal = val + name;
+            }
+            return newVal;
+        },
         lookDetail(row) {
         lookDetail(row) {
             this.thisObj = row;
             this.thisObj = row;
             this.isLook = !this.isLook;
             this.isLook = !this.isLook;
@@ -108,4 +143,15 @@ export default {
         }
         }
     }
     }
 };
 };
-</script>
+</script>
+<style lang="scss" scoped>
+.search-title {
+    display: inline-block;
+    font-size: 24px;
+    font-weight: 600;
+    color: #424656;
+    vertical-align: bottom;
+    line-height: 32px;
+    margin-right: 20px;
+}
+</style>

+ 11 - 51
operationSupport/src/views/newWorkBench/components/collectionRate.vue

@@ -14,31 +14,15 @@
                         :clearable="false"
                         :clearable="false"
                     >
                     >
                     </el-date-picker>
                     </el-date-picker>
-                    <div style="display: flex; justify-content: space-between">
-                        <el-select
-                            v-model="mixins_query.communityId"
-                            placeholder="所有社区"
-                            clearable
-                            class="saveColumn-select"
-                            @change="getData"
-                        >
-                            <el-option
-                                v-for="(item, index) in communityList"
-                                :label="item.communityName"
-                                :value="item.id"
-                                :key="index"
-                            ></el-option>
-                        </el-select>
-                        <el-select
-                            v-model="mixins_query.chargeType"
-                            placeholder="所有费用"
-                            clearable
-                            class="saveColumn-select"
-                            @change="getData"
-                        >
-                            <el-option v-for="(item, index) in amountType" :label="item.name" :value="item.value" :key="index"></el-option>
-                        </el-select>
-                    </div>
+                    <el-select
+                        v-model="mixins_query.chargeType"
+                        placeholder="所有费用"
+                        clearable
+                        class="saveColumn-select"
+                        @change="getData"
+                    >
+                        <el-option v-for="(item, index) in amountType" :label="item.name" :value="item.value" :key="index"></el-option>
+                    </el-select>
                 </div>
                 </div>
             </div>
             </div>
             <div class="model-content">
             <div class="model-content">
@@ -128,11 +112,7 @@ export default {
             }
             }
         };
         };
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
+
     methods: {
     methods: {
         getData() {
         getData() {
             this.$http.get('/sc-community/statisticsCollectionRate', this.mixins_query).then(({ data, msg, status }) => {
             this.$http.get('/sc-community/statisticsCollectionRate', this.mixins_query).then(({ data, msg, status }) => {
@@ -173,30 +153,10 @@ export default {
         height: calc(100% - #{rem(80)});
         height: calc(100% - #{rem(80)});
     }
     }
     .model-title {
     .model-title {
-        .saveColumn-select {
-            width: calc(50% - 10px);
-        }
-        .saveColumn-select-time {
-            width: 100%;
-            margin-bottom: rem(5);
-        }
+      
     }
     }
 }
 }
-.model-title-right {
-    width: calc(100% - #{rem(100)});
-}
-// .indexWorkbench {
-//     .modelBlock {
-//         .model-title {
-//             .saveColumn-select {
 
 
-//                 /deep/ .el-input__inner{
-//                     padding: 0 rem(5);
-//                 }
-//             }
-//         }
-//     }
-// }
 .model-title {
 .model-title {
     .model-title-right {
     .model-title-right {
         .saveColumn-select {
         .saveColumn-select {

+ 0 - 19
operationSupport/src/views/newWorkBench/components/complaintsAndSuggestions.vue

@@ -5,20 +5,6 @@
             <div class="model-title">
             <div class="model-title">
                 <div class="model-title-text">投诉建议数量趋势</div>
                 <div class="model-title-text">投诉建议数量趋势</div>
                 <div class="model-title-right">
                 <div class="model-title-right">
-                    <el-select
-                        v-model="mixins_query.communityId"
-                        placeholder="所有社区"
-                        clearable
-                        class="saveColumn-select"
-                        @change="getData"
-                    >
-                        <el-option
-                            v-for="(item, index) in communityList"
-                            :label="item.communityName"
-                            :value="item.id"
-                            :key="index"
-                        ></el-option>
-                    </el-select>
                     <el-date-picker
                     <el-date-picker
                         value-format="yyyy-MM"
                         value-format="yyyy-MM"
                         v-model="date"
                         v-model="date"
@@ -97,11 +83,6 @@ export default {
         this.date = this.$moment().format('YYYY-MM');
         this.date = this.$moment().format('YYYY-MM');
         this.getData();
         this.getData();
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
     methods: {
     methods: {
         getData() {
         getData() {
             this.$http
             this.$http

+ 0 - 19
operationSupport/src/views/newWorkBench/components/complaintsSuggestions.vue

@@ -4,20 +4,6 @@
             <div class="model-title">
             <div class="model-title">
                 <div class="model-title-text">投诉建议类型</div>
                 <div class="model-title-text">投诉建议类型</div>
                 <div class="model-title-right">
                 <div class="model-title-right">
-                    <el-select
-                        v-model="mixins_query.communityId"
-                        placeholder="全部社区"
-                        clearable
-                        class="saveColumn-select"
-                        @change="getData"
-                    >
-                        <el-option
-                            v-for="(item, index) in communityList"
-                            :label="item.communityName"
-                            :value="item.id"
-                            :key="index"
-                        ></el-option>
-                    </el-select>
                     <el-date-picker
                     <el-date-picker
                         value-format="yyyy-MM"
                         value-format="yyyy-MM"
                         v-model="date"
                         v-model="date"
@@ -70,11 +56,6 @@ export default {
             )
             )
         };
         };
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
     methods: {
     methods: {
         getData() {
         getData() {
             this.$http.get('/sc-community/statisticComplaint', this.mixins_query).then(({ data, msg, status }) => {
             this.$http.get('/sc-community/statisticComplaint', this.mixins_query).then(({ data, msg, status }) => {

+ 0 - 8
operationSupport/src/views/newWorkBench/components/discount.vue

@@ -3,9 +3,6 @@
         <template v-if="permissionFiltering">
         <template v-if="permissionFiltering">
             <div class="model-title">
             <div class="model-title">
                 <div class="model-title-text">设备告警趋势(近一个月)</div>
                 <div class="model-title-text">设备告警趋势(近一个月)</div>
-                <el-select v-model="mixins_query.communityId" placeholder="所有社区" clearable class="saveColumn-select" @change="getData">
-                    <el-option v-for="(item, index) in communityList" :label="item.communityName" :value="item.id" :key="index"></el-option>
-                </el-select>
             </div>
             </div>
             <div class="model-content">
             <div class="model-content">
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
@@ -68,11 +65,6 @@ export default {
     created() {
     created() {
         this.getData();
         this.getData();
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
     methods: {
     methods: {
         getData() {
         getData() {
             this.$http
             this.$http

+ 2 - 12
operationSupport/src/views/newWorkBench/components/equipmentStatistics.vue

@@ -3,9 +3,6 @@
         <template v-if="permissionFiltering">
         <template v-if="permissionFiltering">
             <div class="model-title">
             <div class="model-title">
                 <div class="model-title-text">设备设施统计</div>
                 <div class="model-title-text">设备设施统计</div>
-                <el-select v-model="mixins_query.communityId" placeholder="所有社区" clearable class="saveColumn-select">
-                    <el-option v-for="(item, index) in communityList" :label="item.communityName" :value="item.id" :key="index"></el-option>
-                </el-select>
             </div>
             </div>
             <div class="model-content">
             <div class="model-content">
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
@@ -27,7 +24,6 @@ export default {
                 permissUrl: '15',
                 permissUrl: '15',
                 titleName: '设备管理'
                 titleName: '设备管理'
             },
             },
-            communityList: [],
             mixins_query: {
             mixins_query: {
                 communityId: ''
                 communityId: ''
             },
             },
@@ -35,18 +31,12 @@ export default {
         };
         };
     },
     },
     created() {
     created() {
-        this.communityNameList();
+      
     },
     },
     mounted() {},
     mounted() {},
     computed: {},
     computed: {},
     methods: {
     methods: {
-        communityNameList() {
-            this.$http.get('/sc-community/assets/community/list').then(({ data, msg, status }) => {
-                if (status == 0) {
-                    this.communityList = data;
-                }
-            });
-        }
+
     }
     }
 };
 };
 </script>
 </script>

+ 0 - 9
operationSupport/src/views/newWorkBench/components/householdGender.vue

@@ -3,9 +3,6 @@
         <template v-if="permissionFiltering">
         <template v-if="permissionFiltering">
             <div class="model-title">
             <div class="model-title">
                 <div class="model-title-text">住户性别占比</div>
                 <div class="model-title-text">住户性别占比</div>
-                <el-select v-model="mixins_query.communityId" placeholder="所有社区" clearable class="saveColumn-select" @change="getData">
-                    <el-option v-for="(item, index) in communityList" :label="item.communityName" :value="item.id" :key="index"></el-option>
-                </el-select>
             </div>
             </div>
             <div class="model-content">
             <div class="model-content">
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
@@ -44,11 +41,6 @@ export default {
             )
             )
         };
         };
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
     methods: {
     methods: {
         getData() {
         getData() {
             this.$http.get('/sc-community/statisticUserGender', this.mixins_query).then(({ data, msg, status }) => {
             this.$http.get('/sc-community/statisticUserGender', this.mixins_query).then(({ data, msg, status }) => {
@@ -70,7 +62,6 @@ export default {
         eachartObj(data) {
         eachartObj(data) {
             this.total = data.total;
             this.total = data.total;
             let typeName = {
             let typeName = {
-                0: '其他',
                 1: '男',
                 1: '男',
                 2: '女'
                 2: '女'
             };
             };

+ 10 - 11
operationSupport/src/views/newWorkBench/components/householdIdentity.vue

@@ -3,9 +3,6 @@
         <template v-if="permissionFiltering">
         <template v-if="permissionFiltering">
             <div class="model-title">
             <div class="model-title">
                 <div class="model-title-text">住户身份占比</div>
                 <div class="model-title-text">住户身份占比</div>
-                <el-select v-model="mixins_query.communityId" placeholder="所有社区" clearable class="saveColumn-select" @change="getData">
-                    <el-option v-for="(item, index) in communityList" :label="item.communityName" :value="item.id" :key="index"></el-option>
-                </el-select>
             </div>
             </div>
             <div class="model-content">
             <div class="model-content">
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
@@ -19,6 +16,7 @@
     </div>
     </div>
 </template>
 </template>
 <script>
 <script>
+import { mapState } from 'vuex';
 import { GradualChange, ringType } from './indexOptionChart';
 import { GradualChange, ringType } from './indexOptionChart';
 import permissionComponent from './permissionComponent';
 import permissionComponent from './permissionComponent';
 const colors = [
 const colors = [
@@ -45,7 +43,9 @@ export default {
                 [
                 [
                     { value: 0, name: '业主' },
                     { value: 0, name: '业主' },
                     { value: 0, name: '亲属' },
                     { value: 0, name: '亲属' },
-                    { value: 0, name: '租客' }
+                    { value: 0, name: '租客' },
+                    { value: 0, name: '租户管理员' },
+                    { value: 0, name: '普通员工' }
                 ],
                 ],
                 {},
                 {},
                 { type: 'number', total: 0 }
                 { type: 'number', total: 0 }
@@ -63,7 +63,9 @@ export default {
                         [
                         [
                             { value: 0, name: '业主' },
                             { value: 0, name: '业主' },
                             { value: 0, name: '亲属' },
                             { value: 0, name: '亲属' },
-                            { value: 0, name: '租客' }
+                            { value: 0, name: '租客' },
+                            { value: 0, name: '租户管理员' },
+                            { value: 0, name: '普通员工' }
                         ],
                         ],
                         {},
                         {},
                         { type: 'number', total: 0 }
                         { type: 'number', total: 0 }
@@ -76,7 +78,9 @@ export default {
             let typeName = {
             let typeName = {
                 1: '业主',
                 1: '业主',
                 2: '亲属',
                 2: '亲属',
-                3: '租客'
+                3: '租客',
+                4: '租户管理员',
+                5: '普通员工'
             };
             };
             let newData = [];
             let newData = [];
             for (let a in data.datas) {
             for (let a in data.datas) {
@@ -88,11 +92,6 @@ export default {
             return newData;
             return newData;
         }
         }
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
     created() {
     created() {
         this.getData();
         this.getData();
     }
     }

+ 0 - 5
operationSupport/src/views/newWorkBench/components/ownerApproval.vue

@@ -48,11 +48,6 @@ export default {
     created() {
     created() {
         this.getData();
         this.getData();
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
     methods: {
     methods: {
         getData() {
         getData() {
             this.$http
             this.$http

+ 0 - 5
operationSupport/src/views/newWorkBench/components/pendingComplaints.vue

@@ -47,11 +47,6 @@ export default {
     created() {
     created() {
         this.getData();
         this.getData();
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
     methods: {
     methods: {
         getData() {
         getData() {
             this.$http
             this.$http

+ 10 - 1
operationSupport/src/views/newWorkBench/components/permissionComponent.js

@@ -1,6 +1,6 @@
 import modularLoading from '@views/newWorkBench/template/modularLoading.vue';
 import modularLoading from '@views/newWorkBench/template/modularLoading.vue';
 import noPermission from '@views/newWorkBench/template/noPermission.vue';
 import noPermission from '@views/newWorkBench/template/noPermission.vue';
-
+import { mapState } from 'vuex';
 export default {
 export default {
   components: {
   components: {
     //默认加载
     //默认加载
@@ -18,6 +18,8 @@ export default {
     }
     }
   },
   },
   computed: {
   computed: {
+    //全局社区
+    ...mapState(['homeCommunityAll']),
     // 定义模块显示隐藏
     // 定义模块显示隐藏
     permissionFiltering() {
     permissionFiltering() {
       let arr = this.$store.getters['getMenuList'] || [];
       let arr = this.$store.getters['getMenuList'] || [];
@@ -32,6 +34,13 @@ export default {
       }
       }
     }
     }
   },
   },
+  watch: {
+    //全局社区接口调用
+    homeCommunityAll(val) {
+      this.mixins_query.communityId = val;
+      this.getData();
+    }
+  },
   methods: {
   methods: {
     // 需要什么权限才能查看
     // 需要什么权限才能查看
     filterFuntion(arr, nameTitle, linkPaths) {
     filterFuntion(arr, nameTitle, linkPaths) {

+ 0 - 8
operationSupport/src/views/newWorkBench/components/rentalAndSaleRate.vue

@@ -3,9 +3,6 @@
         <template v-if="permissionFiltering">
         <template v-if="permissionFiltering">
             <div class="model-title">
             <div class="model-title">
                 <div class="model-title-text">房屋租售率</div>
                 <div class="model-title-text">房屋租售率</div>
-                <el-select v-model="mixins_query.communityId" placeholder="所有社区" clearable class="saveColumn-select" @change="getData">
-                    <el-option v-for="(item, index) in communityList" :label="item.communityName" :value="item.id" :key="index"></el-option>
-                </el-select>
             </div>
             </div>
             <div class="model-content">
             <div class="model-content">
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
                 <zz-echart :option="clientOptions" class="chart"></zz-echart>
@@ -92,11 +89,6 @@ export default {
             )
             )
         };
         };
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
     methods: {
     methods: {
         getData() {
         getData() {
             this.$http.get('/sc-community/statisticsaleRate', this.mixins_query).then(({ data, msg, status }) => {
             this.$http.get('/sc-community/statisticsaleRate', this.mixins_query).then(({ data, msg, status }) => {

+ 0 - 19
operationSupport/src/views/newWorkBench/components/satisfaction.vue

@@ -4,20 +4,6 @@
             <div class="model-title">
             <div class="model-title">
                 <div class="model-title-text">服务满意度趋势</div>
                 <div class="model-title-text">服务满意度趋势</div>
                 <div class="model-title-right">
                 <div class="model-title-right">
-                    <el-select
-                        v-model="mixins_query.communityId"
-                        placeholder="所有社区"
-                        clearable
-                        class="saveColumn-select"
-                        @change="getData"
-                    >
-                        <el-option
-                            v-for="(item, index) in communityList"
-                            :label="item.communityName"
-                            :value="item.id"
-                            :key="index"
-                        ></el-option>
-                    </el-select>
                     <el-select v-model="mixins_query.type" placeholder="所有服务" clearable class="saveColumn-select" @change="getData">
                     <el-select v-model="mixins_query.type" placeholder="所有服务" clearable class="saveColumn-select" @change="getData">
                         <el-option label="投诉建议" :value="1"></el-option>
                         <el-option label="投诉建议" :value="1"></el-option>
                         <el-option label="运维工单" :value="2"></el-option>
                         <el-option label="运维工单" :value="2"></el-option>
@@ -62,11 +48,6 @@ export default {
             clientOptions: columnOptionsChart('(分)', [], [{ data: dataArr, name: '服务满意度' }], [], 10)
             clientOptions: columnOptionsChart('(分)', [], [{ data: dataArr, name: '服务满意度' }], [], 10)
         };
         };
     },
     },
-    computed: {
-        communityList() {
-            return this.$store.getters['getAreaSelect'];
-        }
-    },
     methods: {
     methods: {
         getData() {
         getData() {
             this.$http.get('/sc-community/statisticServiceTrends', this.mixins_query).then(({ data, msg, status }) => {
             this.$http.get('/sc-community/statisticServiceTrends', this.mixins_query).then(({ data, msg, status }) => {

+ 27 - 0
operationSupport/src/views/newWorkBench/index.vue

@@ -6,6 +6,17 @@
         element-loading-spinner="el-icon-loading"
         element-loading-spinner="el-icon-loading"
         element-loading-background="rgba(0, 0, 0, 1)"
         element-loading-background="rgba(0, 0, 0, 1)"
     >
     >
+        <div class="communityAll">
+            <el-select
+                v-model="communityId"
+                placeholder="所有社区"
+                clearable
+                class="saveColumn-select"
+                @change="$store.commit('setHomeCommunityAll', communityId)"
+            >
+                <el-option v-for="(item, index) in communityList" :label="item.communityName" :value="item.id" :key="index"></el-option>
+            </el-select>
+        </div>
         <model-one v-if="isShowModel == 1" :ref="model + '_model'"></model-one>
         <model-one v-if="isShowModel == 1" :ref="model + '_model'"></model-one>
         <model-two v-if="isShowModel == 2" :ref="model + '_model'"></model-two>
         <model-two v-if="isShowModel == 2" :ref="model + '_model'"></model-two>
         <model-three v-if="isShowModel == 3" :ref="model + '_model'"></model-three>
         <model-three v-if="isShowModel == 3" :ref="model + '_model'"></model-three>
@@ -20,6 +31,8 @@ export default {
         return {
         return {
             isEdit: false,
             isEdit: false,
             isShowModel: null,
             isShowModel: null,
+            communityId: '',
+            communityList: [],
             oldValue: {
             oldValue: {
                 positionInfo: {}
                 positionInfo: {}
             },
             },
@@ -46,6 +59,7 @@ export default {
         communityNameList() {
         communityNameList() {
             this.$http.get('/sc-community/assets/community/list').then(({ data, msg, status }) => {
             this.$http.get('/sc-community/assets/community/list').then(({ data, msg, status }) => {
                 if (status == 0) {
                 if (status == 0) {
+                    this.communityList = data;
                     this.$store.commit('setAreaSelect', data);
                     this.$store.commit('setAreaSelect', data);
                 }
                 }
             });
             });
@@ -76,10 +90,23 @@ export default {
     color: white;
     color: white;
     height: 100%;
     height: 100%;
     min-height: rem(700);
     min-height: rem(700);
+    .communityAll {
+        height: 30px;
+        .saveColumn-select {
+            width: rem(200);
+            margin-left: rem(10);
+            /deep/ .el-input__inner {
+                background: #171f32;
+                color: white;
+                border-color: rgba(255, 255, 255, 0.2);
+            }
+        }
+    }
     .contentShow {
     .contentShow {
         width: 100%;
         width: 100%;
         border: none;
         border: none;
         padding: 0;
         padding: 0;
+        height: calc(100% - 32px);
     }
     }
 }
 }
 </style>
 </style>