Browse Source

'合并冲突解决'

zhangyu 4 years ago
parent
commit
3f4b0f47e4
63 changed files with 810 additions and 1816 deletions
  1. 5 0
      env.prod.js
  2. 5 0
      env.test.js
  3. 6 3
      package.json
  4. 12 8
      public/systemConf.js
  5. 12 3
      src/App.vue
  6. 4 0
      src/api/public.js
  7. 2 2
      src/components/404.vue
  8. 63 26
      src/components/Legend/src/legend.vue
  9. 83 16
      src/components/PicLarge/src/picLarge.vue
  10. BIN
      src/components/Rotation/src/3440.jpg
  11. 10 4
      src/components/Rotation/src/rotation.vue
  12. 19 10
      src/components/floorList.vue
  13. 2 1
      src/components/legendremarks.vue
  14. 6 5
      src/components/menuList.vue
  15. 11 13
      src/components/viewLengend.vue
  16. 0 86
      src/lib/items/HighlightItem.js
  17. 0 196
      src/lib/items/SFHFQZoneLegendItem.js
  18. 6 6
      src/lib/items/SFHFQZoneLegendItem.ts
  19. 0 155
      src/lib/items/SImageLegendItem.js
  20. 4 0
      src/lib/items/SImageLegendItem.ts
  21. 0 57
      src/lib/items/SImageMarkerItem.js
  22. 4 0
      src/lib/items/SImageMarkerItem.ts
  23. 0 47
      src/lib/items/SLineLegendItem.js
  24. 4 0
      src/lib/items/SLineLegendItem.ts
  25. 0 121
      src/lib/items/SLineMarkerItem.js
  26. 60 50
      src/lib/items/SLineMarkerItem.ts
  27. 0 22
      src/lib/items/SNoneLegendItem.js
  28. 0 203
      src/lib/items/SSCPZZoneLegendItem.js
  29. 6 7
      src/lib/items/SSCPZZoneLegendItem.ts
  30. 0 59
      src/lib/items/STextMarkerItem.js
  31. 4 0
      src/lib/items/STextMarkerItem.ts
  32. 0 197
      src/lib/items/SZoneLegendItem.js
  33. 6 6
      src/lib/items/SZoneLegendItem.ts
  34. 0 190
      src/lib/items/TipelineItem.js
  35. 159 153
      src/lib/items/TipelineItem.ts
  36. 0 1
      src/main.js
  37. 14 2
      src/router/index.js
  38. 52 35
      src/store/index.js
  39. 5 2
      src/views/equipment/eqDialog.vue
  40. 1 1
      src/views/equipment/fenbuPic.vue
  41. 1 1
      src/views/equipment/index.vue
  42. 2 2
      src/views/equipment/table/djspTable.vue
  43. 14 6
      src/views/equipment/table/eqDetaileDialog.vue
  44. 3 3
      src/views/equipment/table/eqListTable.vue
  45. 1 1
      src/views/equipment/table/lookPageTable.vue
  46. 1 1
      src/views/equipment/table/otherTable.vue
  47. 3 3
      src/views/equipment/table/standTable.vue
  48. 20 10
      src/views/equipment/table/tjTable.vue
  49. 4 4
      src/views/equipment/table/wbTable.vue
  50. 5 3
      src/views/equipment/table/wxTable.vue
  51. 10 7
      src/views/equipment/table/zwTable.vue
  52. 3 3
      src/views/legendLibrary/index.vue
  53. 1 1
      src/views/legendRules/addList.vue
  54. 6 6
      src/views/legendRules/index.vue
  55. 1 1
      src/views/other/gcfz2.vue
  56. 66 12
      src/views/other/zhsxOtherTable1.vue
  57. 11 3
      src/views/other/zhsxOtherTable2.vue
  58. 19 2
      src/views/overview/picModal.vue
  59. 4 4
      src/views/room/detail.vue
  60. 53 40
      src/views/room/index.vue
  61. 1 1
      src/views/room/room1.vue
  62. 1 1
      src/views/statistics/index.vue
  63. 15 14
      src/views/table/index.vue

+ 5 - 0
env.prod.js

@@ -0,0 +1,5 @@
+'use strict'
+module.exports = {
+    NODE_ENV: '"production"',
+    VUE_APP_TITLE="production"
+}

+ 5 - 0
env.test.js

@@ -0,0 +1,5 @@
+'use strict'
+module.exports = {
+    NODE_ENV: '"production"',
+    VUE_APP_TITLE="test"
+}

+ 6 - 3
package.json

@@ -3,8 +3,10 @@
     "version": "0.1.0",
     "private": true,
     "scripts": {
-        "serve": "vue-cli-service serve --open",
-        "build": "vue-cli-service build",
+        "serve": "cross-env NODE_ENV=serve vue-cli-service serve --open",
+        "build:aly": "cross-env NODE_ENV=aly_dev vue-cli-service build",
+        "build:wanda_dev": "cross-env NODE_ENV=wanda_dev vue-cli-service build",
+        "build:wanda_build": "cross-env NODE_ENV=wanda_build vue-cli-service build",
         "lint": "vue-cli-service lint"
     },
     "dependencies": {
@@ -12,7 +14,7 @@
         "@saga-web/base": "2.1.25",
         "@saga-web/big": "1.0.86",
         "@saga-web/draw": "2.1.102",
-        "@saga-web/feng-map": "1.0.23",
+        "@saga-web/feng-map": "1.0.24",
         "@saga-web/graph": "2.1.112",
         "ant-design-vue": "^1.4.10",
         "axios": "^0.19.2",
@@ -43,6 +45,7 @@
         "@vue/eslint-config-typescript": "^5.0.2",
         "babel-eslint": "^10.0.3",
         "babel-plugin-component": "^1.1.1",
+        "cross-env": "^7.0.2",
         "eslint": "^5.16.0",
         "eslint-plugin-vue": "^5.0.0",
         "fengmap": "^2.5.3",

+ 12 - 8
public/systemConf.js

@@ -24,13 +24,17 @@ var __systemConf = {
     systemCode: 'wandaBmGuide',
     conf: {
         // 阿里云
-        // editerUrl: 'http://60.205.177.43:80/wandaEditer/', // 编辑器地址
-        // wandaBmGuideUrl: 'http://60.205.177.43:80/wandaBmGuide/', //管理书地址
-        // http://glsms.wanda-dev.cn/ 测试服
-        // editerUrl: 'http://glsms.wanda-dev.cn/wandaEditer/', // 编辑器地址
-        // wandaBmGuideUrl: 'http://glsms.wanda-dev.cn/wandaBmGuide/', //管理书地址
-        editerUrl: 'http://localhost:8091/wandaEditer/', // 编辑器地址
-        wandaBmGuideUrl: 'http://localhost:8090/wandaBmGuide/', //管理书地址
+        aly_dev_editerUrl: 'http://60.205.177.43:80/wandaEditer/', // 编辑器地址
+        aly_dev_wandaBmGuideUrl: 'http://60.205.177.43:80/wandaBmGuide/', //管理书地址
+        //   万达内网测试服
+        wanda_dev_editerUrl: 'http://glsms.wanda-dev.cn/wandaEditer/', // 编辑器地址
+        wanda_dev_wandaBmGuideUrl: 'http://glsms.wanda-dev.cn/wandaBmGuide/', //管理书地址
+        //   万达生产服
+        wanda_build_editerUrl: 'http://glsms.wanda.cn/wandaEditer/', // 编辑器地址
+        wanda_build_wandaBmGuideUrl: 'http://glsms.wanda.cn/wandaBmGuide/', //管理书地址
+        //开发
+        serve_editerUrl: 'http://localhost:8091/wandaEditer/', // 编辑器地址
+        serve_wandaBmGuideUrl: 'http://localhost:8090/wandaBmGuide/', //管理书地址
     },
 }
-window.__systemConf = __systemConf
+window.__systemConf = __systemConf

+ 12 - 3
src/App.vue

@@ -7,6 +7,7 @@
 <script>
 import { mapGetters, mapActions, mapMutations } from 'vuex'
 import { SFengParser } from '@saga-web/feng-map'
+import {setFloor} from "@/api/public.js"
 window.fengmapData = null
 export default {
     data() {
@@ -38,8 +39,7 @@ export default {
     },
     mounted() {
         this.isMounted = true
-        this.plazaIds = localStorage.getItem('PLAZAID')
-        console.log(this.plazaIds)
+        this.plazaIds = localStorage.getItem('PLAZAID');
     },
     computed: {
         ...mapGetters(['plazaId', 'fmapID', 'haveFengMap', 'accessLevel'])
@@ -61,11 +61,20 @@ export default {
                 null,
                 this.mapthemeUrl
             )
-            window.fengmapData.loadMap(this.fmapID, () => {
+            window.fengmapData.loadMap(this.fmapID, (a,b) => {
+               const dataArr = b.map(item=>{
+                    return item.gname
+                });
                 // 获取主题数据
                 window.fengmapData.loadTheme(`${this.mapServerURL}/webtheme/${this.fmapID}/${this.fmapID}.theme`).then(res => {
                     this.SETHAVEFENGMAP()
                 })
+                // 缓存楼层数据
+                setFloor({plazaId:this.plazaIds},dataArr).then((res)=>{
+                    console.log('缓存楼层',res)
+                }).catch((error)=>{
+                    console.log('缓存楼层',error)
+                })
             })
         }
     },

+ 4 - 0
src/api/public.js

@@ -52,4 +52,8 @@ export function queryBrand({ data, postParams }) {
 //记录PV/UV
 export function getPvUv(data){
     return httputils.postJson(`/data/pvuv/save`, data)
+}
+// 保存楼层缓存
+export function setFloor( data, postParams ){
+    return httputils.fetchJson(`/data/plaza/floor/set`, data,postParams)
 }

+ 2 - 2
src/components/404.vue

@@ -3,7 +3,7 @@
         <div class='not-img'>
             <img src='@/assets/imgs/dlsb.png' alt />
         </div>
-        <div class='not-text' v-if='permissions && permissions.includes("GLSMS_VIEW")'>
+        <div class='not-text' v-if='isrequestAuth=="err"'>
             <span>您的权限不足……</span>
             <span>建议您联系管理员开通管理说明书相关权限</span>
         </div>
@@ -23,7 +23,7 @@ export default {
         return {}
     },
     computed: {
-        ...mapGetters(['permissions'])
+        ...mapGetters(['isrequestAuth'])
     },
     mounted() {},
     methods: {

+ 63 - 26
src/components/Legend/src/legend.vue

@@ -8,7 +8,7 @@
         <div class='legend-container'>
             <div :class='showView===1?"legend2":"legend"' @click='showTl' v-if='(type==1 || floors.length>0)&& isMessage && legendTable.length>0 '>图例</div>
             <!-- 图里展示状态组件 -->
-            <el-collapse-transition v-if='(type==1 || floors.length>0)&& isMessage && legendTable.length>0 '>
+            <el-collapse-transition v-if='(type==1 || floors.length>0)&& isMessage && legendTable.length>0'>
                 <div class='legend-tab' v-if='showView===1'>
                     <div class='legend-table2' v-if='systemName=="土建装饰"'>
                         <lengend-view @changeSwitch='handleSwich' :remarksText='remarksText' ref='viewLengend' :systemName='systemName'></lengend-view>
@@ -149,7 +149,7 @@ export default {
         floors: {
             //原理图中有数据楼层
             default: () => {
-                []
+                ;[]
             },
             type: Array
         },
@@ -254,6 +254,7 @@ export default {
         },
         // 查询备注
         queryMarks() {
+            this.remarksText = ''
             let postParams = {
                 categoryId: this.categoryId ? this.categoryId : this.$cookie.get('categoryId'),
                 projectId: this.$store.state.plazaId,
@@ -263,24 +264,35 @@ export default {
             }
             let data = {}
             queryRead({ data, postParams }).then(res => {
-                let remarksText = ''
                 if (res.data.Data && res.data.Data[0].Note) {
                     let Res = res.data ? res.data.Data[0].Note : ''
                     if (Res) {
                         // 返回有备注
-                        remarksText = Res
+                        this.remarksText = Res
+
+                        let defaultCom = ''
+                        if (this.planNum && this.typeNum) {
+                            defaultCom = `${Res}<ol style="padding-left: 1.5em;"><li>${this.text1}</li><li>${this.text2}</li></ol>`
+                        } else if (this.planNum) {
+                            defaultCom = `${Res}<ol  style="padding-left: 1.5em;"><li>${this.text1}</li></ol>`
+                        } else if (this.typeNum) {
+                            defaultCom = `${Res}<ol   style="padding-left: 1.5em;" ><li>${this.text2}</li></ol>`
+                        } else {
+                            defaultCom = Res
+                        }
+                        this.$store.commit('SETDEFAULTCOMMENT', defaultCom)
                     } else {
                         if (this.planNum && this.typeNum) {
-                            remarksText = `<p>1.${this.text1}</p><p>2.${this.text2}</p>`
+                            this.remarksText = `<ol style="padding-left: 1.5em;"><li>${this.text1}</li><li>${this.text2}</li></ol>`
                         } else if (this.planNum) {
-                            remarksText = `<p>1.${this.text1}</p>`
+                            this.remarksText = `<ol  style="padding-left: 1.5em;"><li>${this.text1}</li></ol>`
                         } else if (this.typeNum) {
-                            remarksText = `<p>1.${this.text2}</p>`
+                            this.remarksText = `<ol   style="padding-left: 1.5em;" ><li>${this.text2}</li></ol>`
                         } else {
-                            remarksText = ''
+                            this.remarksText = ''
                         }
                     }
-                    this.$store.commit('SETREMARKSTEXT', remarksText)
+                    this.$store.commit('SETREMARKSTEXT', this.remarksText)
                 }
             })
         },
@@ -320,8 +332,8 @@ export default {
 
             let FloorID = this.floor ? this.floor : this.$cookie.get('floorMapId') || 'f1'
             let categoryId = this.categoryId ? this.categoryId : this.$cookie.get('categoryId')
-            const { conf } = window.__systemConf,
-                { editerUrl } = conf
+            const { conf } = window.__systemConf
+            const editerUrl = conf[process.env.NODE_ENV + '_editerUrl']
             let floorName = this.floorName ? this.floorName : this.$cookie.get('floorNow')
             let seq = this.$cookie.get('currentFloorId')
             let data = `categoryId=${categoryId}&projectId=${this.plazaId}&BuildingID=1&FloorID=${FloorID}&FloorName=${floorName}&fmapID=${this.fmapID}&seq=${seq}&token=${this.ssoToken}`
@@ -376,17 +388,20 @@ export default {
                         }
                     })
                 }
-                let remarksText = ''
+                // let remarksText = ''
+                this.remarksText = ''
+                this.$store.commit('SETREMARKSTEXT', '')
+
                 if (this.planNum && this.typeNum) {
-                    remarksText = `<p>1.${this.text1}</p><p>2.${this.text2}</p>`
+                    this.remarksText = `<ol style="padding-left: 1.5em;"><li>${this.text1}</li><li>${this.text2}</li></ol>`
                 } else if (this.planNum) {
-                    remarksText = `<p>1.${this.text1}</p>`
+                    this.remarksText = `<ol  style="padding-left: 1.5em;"><li>${this.text1}</li></ol>`
                 } else if (this.typeNum) {
-                    remarksText = `<p>1.${this.text2}</p>`
+                    this.remarksText = `<ol   style="padding-left: 1.5em;" ><li>${this.text2}</li></ol>`
                 } else {
-                    remarksText = ''
+                    this.remarksText = ''
                 }
-                this.$store.commit('SETREMARKSTEXT', remarksText)
+                this.$store.commit('SETREMARKSTEXT', this.remarksText)
                 this.$nextTick(() => {
                     if (this.$refs.viewLengend) {
                         this.$refs.viewLengend.setSelected()
@@ -488,6 +503,7 @@ export default {
         },
         queryRemarksMethods() {},
         init() {
+            this.remarksText = ''
             // 图例
             bus.$off('queryViewMethods') //解决触发多次监听
             bus.$on('queryViewMethods', () => {
@@ -496,24 +512,44 @@ export default {
             // 备注
             bus.$off('queryRemarksMethods')
             bus.$on('queryRemarksMethods', res => {
-                let remarksText = ''
                 if (res) {
                     // 返回有备注
-                    remarksText = res
+                    this.remarksText = res
+
+                    let defaultCom = ''
+                    if (this.planNum && this.typeNum) {
+                        defaultCom = `${res}<ol style="padding-left: 1.5em;"><li>${this.text1}</li><li>${this.text2}</li></ol>`
+                    } else if (this.planNum) {
+                        defaultCom = `${res}<ol  style="padding-left: 1.5em;"><li>${this.text1}</li></ol>`
+                    } else if (this.typeNum) {
+                        defaultCom = `${res}<ol   style="padding-left: 1.5em;" ><li>${this.text2}</li></ol>`
+                    } else {
+                        defaultCom = res
+                    }
+                    this.$store.commit('SETDEFAULTCOMMENT', defaultCom)
                 } else {
                     if (this.planNum && this.typeNum) {
-                        remarksText = `${this.text1}${this.text2}${res}`
+                        this.remarksText = `<ol style="padding-left: 1.5em;"><li>${this.text1}</li><li>${this.text2}</li></ol>`
                     } else if (this.planNum) {
-                        remarksText = `${this.text1}${res}`
+                        this.remarksText = `<ol  style="padding-left: 1.5em;"><li>${this.text1}</li></ol>`
                     } else if (this.typeNum) {
-                        remarksText = `${this.text2}${res}`
+                        this.remarksText = `<ol   style="padding-left: 1.5em;" ><li>${this.text2}</li></ol>`
                     } else {
-                        remarksText = ''
+                        this.remarksText = ''
                     }
                 }
-                console.log(remarksText)
-                this.$store.commit('SETREMARKSTEXT', remarksText)
+                this.$store.commit('SETREMARKSTEXT', this.remarksText)
             })
+        },
+        // 设置图例整体高度
+        setLengedHeight() {
+            let dom = document.getElementsByClassName('legend-table')[0]
+            console.log('asdfasfd', window.screen.height, window.screen.width)
+            if (window.screen.height > 1000) {
+                dom.style.maxHeight = '768px'
+            } else {
+                dom.style.maxHeight = '534px'
+            }
         }
     },
     mounted() {
@@ -531,6 +567,8 @@ export default {
         this.$once('hook:beforeDestroy', () => {
             clearInterval(this.timer)
         })
+        // 设置图例最大高度
+        this.setLengedHeight()
     }
 }
 </script>
@@ -579,7 +617,6 @@ export default {
             width: 385px;
             // width: 420px;
             overflow: auto;
-            overflow: hidden;
             overflow-y: auto;
             position: relative;
             background: rgba(255, 255, 255, 1);

+ 83 - 16
src/components/PicLarge/src/picLarge.vue

@@ -9,15 +9,17 @@
             <div class='pic-list'>
                 <div class='pic-left'>
                     <ul v-for='(item,index) in imgUrl' :key='index'>
-                        <li @click='getIndex(item.url)'>
-                            <img :src='item.url' />
+                        <li @click='getIndex(item)'>
+                            <img :src='item.url' v-if='typeArr.includes(item.type)' />
+                            <span v-else></span>
                         </li>
-                        <!-- <span>{{item.name}}</span> -->
+                        <span>{{item.name}}</span>
                     </ul>
                 </div>
                 <div class='pic-right'>
                     <div class='pic-right-img'>
-                        <img :src='ImgUrl' />
+                        <img :src='ImgUrl' v-if='typeArr.includes(type)' />
+                        <p v-else class='no-image'>{{`此文件类型为${this.type}类型,无法展示`}}</p>
                     </div>
                 </div>
             </div>
@@ -27,19 +29,63 @@
 <script>
 export default {
     name: 'PicLarge',
-    props: ['imgUrl'],
+    // props: ['imgUrl'],
     data() {
         return {
             dialogVisible: false,
-            ImgUrl: ''
+            ImgUrl: '',
+            type: '',
+            imgUrl: [],
+            typeArr: ['png', 'jpg', 'jpeg'] //typeArr 图片类型
         }
     },
     methods: {
-        open() {
+        /**
+         * @description 打开弹窗事件,传入展示的图片信息
+         * @param {object} data 图片信息 
+                {
+                    name: '供电系统原理图.png',
+                    url: 'http://gcgl.wanda.cn/%E7%BB%B4%E4%BF%AE%E5%B7%A5%E5%8D%95%E4%B8%80/WORKORDER_846049_2019-11-19T15-37-42-716.jpg'
+                }
+         */
+        open(data) {
             this.dialogVisible = true
+            // 处理传入进来的数据
+            this.handleData(data)
+            // this.imgUrl = data
         },
         getIndex(imgUrl) {
-            this.ImgUrl = imgUrl
+            this.ImgUrl = imgUrl.url
+            this.type = imgUrl.type
+        },
+        /**
+         * @description 处理数据 --> 返回 name,url,type格式的json数据
+            [
+                { 
+                    name: 'xxx.png',
+                    url: '---',
+                    type: 'png'
+                },
+                ...
+            ]
+         */
+        handleData(data) {
+            let patternFileExtension = /\.([0-9a-z]+)(?:[\?#]|$)/i
+            data = data.map(item => {
+                let type = item.name.match(patternFileExtension)[1]
+                let obj = {
+                    name: item.name,
+                    url: item.url,
+                    type
+                }
+                return obj
+            })
+            this.imgUrl = data
+        }
+    },
+    mounted() {
+        if (this.imgUrl.length > 0) {
+            console.log(this.imgUrl)
         }
     },
     computed: {
@@ -50,7 +96,10 @@ export default {
     watch: {
         __imgUrl: {
             handler(newV, oldV) {
-                newV.length && (this.ImgUrl = this.imgUrl[0].url)
+                if (newV.length) {
+                    this.ImgUrl = newV[0].url
+                    this.type = newV[0].type
+                }
             },
             deep: true
         }
@@ -60,6 +109,7 @@ export default {
 <style lang="less" scoped>
 .pic-list {
     width: 100%;
+    height: 100%;
     // height: 700px;
     display: flex;
     justify-content: space-between;
@@ -101,22 +151,37 @@ export default {
     }
     .pic-right {
         flex: 1;
+        width: 100%;
+        height: 100%;
         background: rgba(245, 246, 247, 1);
         border-radius: 0px 0px 4px 0px;
-        padding: 60px 50px;
-        margin: auto auto;
+        // padding: 60px 50px;
+        // margin: auto auto;
         display: flex;
         justify-content: center;
         align-items: center;
         .pic-right-img {
-            width: 720px;
-            height: 540px;
+            // width: 720px;
+            // height: 540px;
+            width: 100%;
+            height: 100%;
             text-align: center;
             img {
-                max-width: 100%;
-                max-height: 100%;
+                width: 100%;
+                height: 100%;
+                object-fit: contain;
                 display: block;
-                margin: auto;
+                margin: 0 auto;
+                position: relative;
+                top: 50%;
+                transform: translateY(-50%);
+            }
+            // 无图片样式
+            .no-image {
+                position: relative;
+                margin: 0 auto;
+                top: 50%;
+                transform: translateY(-50%);
             }
         }
     }
@@ -130,6 +195,8 @@ export default {
         margin-top: 5vh !important;
         .el-dialog__body {
             padding: 10px;
+            height: calc(100% - 50px);
+            box-sizing: border-box;
         }
     }
 }

BIN
src/components/Rotation/src/3440.jpg


+ 10 - 4
src/components/Rotation/src/rotation.vue

@@ -5,10 +5,10 @@
 */
 <template>
     <div :class='[type==1?"rotationFull":(type==3?"rotationFullYlt":"rotation")]' class='wanda-rotation'>
-        <div v-if='rotationImg.length==1&&size=="width"' class='rotationConType'>
+        <div v-if='rotationImg.length==1&&size=="height"' class='rotationConType'>
             <img :src='rotationImg[0].url' alt />
         </div>
-        <div v-else-if='rotationImg.length==1&&size=="height"' class='rotationCon'>
+        <div v-else-if='rotationImg.length==1&&size=="width"' class='rotationCon'>
             <img :src='rotationImg[0].url' alt />
         </div>
         <!-- <el-carousel v-else trigger='click' style='height:100%;width:100%' :interval='5000' arrow='always' @change='changePic' :loop='false'>
@@ -16,7 +16,14 @@
                 <img :src='item.url' alt />
             </el-carousel-item>
         </el-carousel>-->
-        <el-carousel v-else style='height:100%;width:100%' :interval='5000' arrow='always' @change='changePic'>
+        <el-carousel
+            v-else
+            style='height:100%;width:100%'
+            :interval='5000'
+            :indicator-position='rotationImg.length == 1 ? "none":""'
+            :arrow='rotationImg.length == 1 ? "never":"always"'
+            @change='changePic'
+        >
             <el-carousel-item v-for='(item,index) in rotationImg' :key='index'>
                 <img :src='item.url' alt style='  width: 100%; height: 100%;object-fit: cover;' />
             </el-carousel-item>
@@ -61,7 +68,6 @@ export default {
         if (this.type == 2) {
             this.changePic(1)
         }
-        console.log(this.rotationImg, this.size)
     }
 }
 </script>

+ 19 - 10
src/components/floorList.vue

@@ -69,8 +69,15 @@ export default {
         floorsArr: {
             type: Array,
             default: () => {
-                [];
+                return []
             }
+        },
+        // 默认true,
+        // 1. 切换楼层后,是否触发 cookie,vuex数据修改,
+        // 2. 在fenbuPic组件中为false, 1)不触发cookie,vuex , 2) 选中的楼层ID,为楼层列表数组floorIdArr的第0个
+        changeDataFlag: {
+            type: Boolean,
+            default: true
         }
     },
     computed: {
@@ -109,9 +116,9 @@ export default {
             })
             this.currentFloorId = Number(this.$cookie.get('currentFloorId') || 100)
             // bug fix 修复 fenbuPic 弹窗中,楼层不能选中的问题
-            // 如果 floorIdArr 不在 floorIdArr数组中, 使用 floorIdArr[0], 而不使用 cookie
+            // 如果 floorIdArr 不在 floorIdArr数组中,或者changeDataFlag为false(弹窗组件中的楼层组件),使用 floorIdArr[0], 而不使用 cookie
             let index = this.floorIdArr.findIndex(item => item === this.currentFloorId)
-            if (index === -1) {
+            if (index === -1 || !this.changeDataFlag) {
                 this.currentFloorId = this.floorIdArr[0]
             }
             // 修复在设备设施页面中,楼层组件不够 8个楼层时,出现的样式问题,
@@ -148,15 +155,17 @@ export default {
             this.handlePosition(flag, index, len)
         },
         handleCookie() {
-            // return true
             let currentFloor = this.floorsArr.filter(item => item.seq == this.currentFloorId)[0]
             if (currentFloor) {
-                this.$cookie.set('floorNow', currentFloor.code || '', 3)
-                this.$cookie.set('floorMapId', currentFloor.gname, 3)
-                this.$cookie.set('currentFloorId', currentFloor.seq, 3)
-                this.floorId = this.$cookie.get('floorNow') || currentFloor.code
-                this.floorMapIdName = this.$cookie.get('floorMapId') || currentFloor.gname
-                store.commit('SETCURRENTFLOOR', currentFloor)
+                // 如果 changeDataFlag为true(不是在 分布图弹窗组件中的 楼层组件),设置cookie,vuex
+                if (this.changeDataFlag) {
+                    this.$cookie.set('floorNow', currentFloor.code || '', 3)
+                    this.$cookie.set('floorMapId', currentFloor.gname, 3)
+                    this.$cookie.set('currentFloorId', currentFloor.seq, 3)
+                    this.floorId = this.$cookie.get('floorNow') || currentFloor.code
+                    this.floorMapIdName = this.$cookie.get('floorMapId') || currentFloor.gname
+                    store.commit('SETCURRENTFLOOR', currentFloor)
+                }
                 this.$emit('emitFloor', currentFloor)
             }
         },

+ 2 - 1
src/components/legendremarks.vue

@@ -36,7 +36,7 @@ export default {
             remarksTexts: '', //展示的备注
             editorOption: {
                 modules: {
-                    toolbar: [['bold', 'underline'], [{ color: [] }]]
+                    toolbar: [['bold', 'underline'], [{ color: [] }], [{ list: 'ordered' }]]
                 },
                 theme: 'snow',
                 placeholder: '请输入内容...'
@@ -107,6 +107,7 @@ export default {
         onEditorBlur(val) {},
         onEditorFocus(val) {},
         onEditorChange(val) {
+            console.log(val, 'val')
             val.quill.deleteText(200, 6)
             if (this.remarksTexts === '') {
                 this.valLen = 0

+ 6 - 5
src/components/menuList.vue

@@ -123,8 +123,9 @@ export default {
         },
         //入草稿箱
         toDrafts() {
-            const { conf } = window.__systemConf,
-                { editerUrl } = conf
+            const { conf } = window.__systemConf
+            // { editerUrl } = conf;
+            const editerUrl = conf[process.env.NODE_ENV + '_editerUrl']
             let data = `projectId=${this.plazaId}&fmapID=${this.fmapID}&token=${this.$store.state.ssoToken}`
             let url = editerUrl + 'drafts?' + encodeURIComponent(data)
             window.open(url, true)
@@ -176,8 +177,8 @@ export default {
         },
 
         dumpLegend() {
-            const { conf } = window.__systemConf,
-                { wandaBmGuideUrl } = conf
+            const { conf } = window.__systemConf
+            const wandaBmGuideUrl = conf[process.env.NODE_ENV + '_wandaBmGuideUrl']
             window.open(`${wandaBmGuideUrl}home/legendLibrary?token=${this.$store.state.ssoToken}`, true)
         }
     }
@@ -285,7 +286,7 @@ export default {
                 border-radius: 90px;
                 font-size: 12px;
                 text-align: center;
-                line-height: 18px;
+                line-height: 16px;
                 color: #ffffff;
             }
         }

+ 11 - 13
src/components/viewLengend.vue

@@ -62,9 +62,9 @@
                 <el-switch v-model='swich' @change='handleSwich(swich)'></el-switch>
                 <span>隐藏数量为0的项目</span>
             </div>
-            <div class='remark' v-if='remarksText'>
+            <div class='remark' v-if='initText'>
                 <span class='remark-title'>注:</span>
-                <div :key='key' v-html='remarksText' class='remark-text'></div>
+                <div :key='Date.now()' v-html='initText' class='remark-text'></div>
             </div>
         </div>
     </div>
@@ -107,19 +107,17 @@ export default {
         }
     },
     computed: {
-        ...mapGetters(['scpzTable', 'legendTable', 'remarksText'])
+        ...mapGetters(['scpzTable', 'legendTable', 'remarksText', 'defaultComment']),
+        initText() {
+            if (this.defaultComment) {
+                return this.defaultComment
+            } else {
+                return this.remarksText
+            }
+        }
     },
     mounted() {},
-    watch: {
-        '$store.state.remarksText': {
-            handler(oVal, nVal) {
-                if (oVal != nVal) {
-                    this.key++
-                }
-            },
-            deep: true
-        }
-    }
+    created() {}
 }
 </script>
 <style lang="less" scoped>

+ 0 - 86
src/lib/items/HighlightItem.js

@@ -1,86 +0,0 @@
-/*
- * ********************************************************************************************************************
- *
- *                      :*$@@%$*:                         ;:                ;;    ;;
- *                    :@@%!  :!@@%:                       %!             ;%%@@%$ =@@@@@@@%;     @%@@@%%%%@@@@@
- *                   :@%;       :$=                       %%$$$%$$         ;$$  ;$@=   !@$
- *                   =@!                                  %!              @ $=;%   !@@@%:      !$$$$$$$$$$$$$$=
- *                   =@*                                  %!              @ $= % %@=   =%@!      %=
- *              *$%%! @@=        ;=$%%%$*:                %!              @ $= % =%%%%%%@$      *%:         =%
- *            %@@!:    !@@@%=$@@@@%!  :*@@$:              %!              @ $= % $*     ;@      @*          :%*
- *          ;@@!          ;!!!;:         ;@%:      =======@%========*     @ $$ % $%*****$@     :@$=*********=@$
- *          $@*   ;@@@%=!:                *@*
- *          =@$    ;;;!=%@@@@=!           =@!
- *           %@$:      =@%: :*@@@*       %@=                    Copyright (c) 2016-2019.  北京上格云技术有限公司
- *            ;%@@$=$@@%*       *@@@$=%@@%;
- *               ::;::             ::;::                                              All rights reserved.
- *
- * ********************************************************************************************************************
- */
-import { SGraphItem } from "@saga-web/graph/lib";
-import { SColor, SLine, SPoint, SRect } from "@saga-web/draw/lib";
-import { ItemOrder, ItemColor } from '@saga-web/big/lib';
-/**
- * 吸附时高亮对象
- *
- * @author  郝建龙
- */
-export class HighlightItem extends SGraphItem {
-    /**
-     * 构造函数
-     *
-     * @param   parent  指向父对象
-     */
-    constructor(parent) {
-        super(parent);
-        /** 对象与鼠标位置距离   */
-        this.distance = 0;
-        /** 对象类型   */
-        this.type = 1;
-        /** 点对象数据-当吸附的为线时,此点为垂线与线段的交点   */
-        this._point = new SPoint();
-        /** 点对象数据   */
-        this._line = new SLine();
-        this.visible = false;
-        this.zOrder = ItemOrder.highLightOrder;
-    } // Constructor
-    get point() {
-        return this._point;
-    } // Get point
-    set point(v) {
-        this._point = v;
-        this.type = 1;
-        this.update();
-    } // Set point
-    get line() {
-        return this._line;
-    } // Get line
-    set line(v) {
-        this._line = v;
-        this.type = 2;
-        this.update();
-    } // Set line
-    /**
-     * Item对象边界区域
-     *
-     * @return	SRect
-     */
-    boundingRect() {
-        return new SRect(this.point.x, this.point.y, 10, 10);
-    } // Function boundingRect()
-    /**
-     * Item绘制操作
-     *
-     * @param   painter painter对象
-     */
-    onDraw(painter) {
-        if (this.type == 2) {
-            painter.pen.color = ItemColor.highLightLineColor;
-            painter.pen.lineWidth = painter.toPx(6);
-            painter.drawLine(this.line);
-        }
-        painter.pen.color = SColor.Transparent;
-        painter.brush.color = ItemColor.highLightPointColor;
-        painter.drawCircle(this.point.x, this.point.y, painter.toPx(5));
-    } // Function onDraw()
-} // Class HighlightItem

+ 0 - 196
src/lib/items/SFHFQZoneLegendItem.js

@@ -1,196 +0,0 @@
-import { SColor, SFont, SPoint, SLineCapStyle } from '@saga-web/draw'
-import { STextItem } from '@saga-web/graph/lib'
-import { hexify } from '@/components/mapClass/until'
-import { SItemStatus, ItemOrder, SPolygonItem } from '@saga-web/big/lib'
-/**
- *图例节点Item(区域类型 --防火分区)
- *
- * * @author  张宇(taohuzy@163.com)
- */
-export class SFHFQZoneLegendItem extends SPolygonItem {
-    /**
-     * 构造函数
-     *
-     * @param parent    指向父对象
-     * @param data      图例节点对象数据
-     */
-    constructor(parent, data) {
-        super(parent)
-        /** text item   */
-        this.textItem = new STextItem(this)
-        /** 是否显示文字  */
-        this._showText = true
-        /** 是否蒙版遮罩  */
-        this._maskFlag = false
-        this.textItem.isTransform = false
-        this.zOrder = ItemOrder.polygonOrder
-        this.data = data
-        this.id = data.ID
-        this.name = data.Name
-        this.text = data.Name
-        if (data) {
-            this.setPointList = []
-            let setPointList
-            if (data.OutLine) {
-                if (data.OutLine[0] instanceof SPoint) {
-                    this.setPointList = data.OutLine
-                } else {
-                    setPointList = data.OutLine.map((i) => {
-                        return new SPoint(i.X, i.Y)
-                    })
-                    this.setPointList = setPointList
-                }
-            }
-            // 设置线宽
-            if (data.Properties.LineWidth) {
-                this.lineWidth = data.Properties.LineWidth
-            }
-            if (data.Properties.StrokeColor) {
-                this.strokeColor = data.Properties.StrokeColor.includes('#')
-                    ? new SColor(data.Properties.StrokeColor)
-                    : new SColor(hexify(data.Properties.StrokeColor))
-            }
-            if (data.Properties.FillColor) {
-                this.fillColor = data.Properties.FillColor.includes('#')
-                    ? new SColor(data.Properties.FillColor)
-                    : new SColor(hexify(data.Properties.FillColor))
-            }
-            if (data.Properties.TextPos) {
-                this.textItem.moveTo(data.Properties.TextPos.X, data.Properties.TextPos.Y)
-            }
-            if (data.Properties.color) {
-                this.color = new SColor(data.Properties.color)
-            }
-            if (data.Properties.font) {
-                this.font = new SFont('sans-serif', data.Properties.font)
-            }
-            //    if( data.Properties.LineDash){
-            //     this.LineDash =this._legend.Properties.LineDash
-            //    }
-        }
-        // 监听多边形创建完成事件,并动态计算文本位置
-        this.connect('finishCreated', this, () => {
-            // 计算文本位置
-            let x = this.getPointList.reduce((pre, cur, index, arr) => {
-                    return pre + cur.x / arr.length
-                }, 0),
-                y = this.getPointList.reduce((pre, cur, index, arr) => {
-                    return pre + cur.y / arr.length
-                }, 0)
-            this.textItem.moveTo(x, y)
-        })
-    }
-    get text() {
-        return this.textItem.text
-    }
-    set text(v) {
-        this.textItem.text = v
-        this.update()
-    }
-    get color() {
-        return this.textItem.color
-    }
-    set color(v) {
-        this.textItem.color = v
-    }
-    get font() {
-        return this.textItem.font
-    }
-    set font(v) {
-        this.textItem.font = v
-    }
-    get status() {
-        return this._status
-    }
-    // 编辑当前状态
-    set status(value) {
-        this._status = value
-        // 如果状态为show则需清栈
-        if (value == SItemStatus.Normal) {
-            // 切换显示状态显示文本
-            this.showText = true
-            // 切换显示状态不可移动文本
-            this.textItem.moveable = false
-            if (this.undoStack) {
-                this.undoStack.clear()
-            }
-        } else if (value == SItemStatus.Edit) {
-            // 切换编辑状态显示文本
-            this.showText = true
-            // 切换编辑状态可移动文本
-            this.textItem.moveable = true
-        } else if (value == SItemStatus.Create) {
-            // 切换创建状态不显示文本
-            this.showText = false
-            // 切换创建状态不可移动文本
-            this.textItem.moveable = false
-        }
-        this.update()
-    }
-    get showText() {
-        return this._showText
-    }
-    set showText(v) {
-        if (v === this._showText) {
-            return
-        }
-        this._showText = v
-        if (v) {
-            this.textItem.show()
-        } else {
-            this.textItem.hide()
-        }
-    }
-    get maskFlag() {
-        return this._maskFlag
-    }
-    set maskFlag(v) {
-        if (v === this._maskFlag) {
-            return
-        }
-        this._maskFlag = v
-        this.update()
-    }
-    toData() {
-        this.data.Pos = { X: this.x, Y: this.y }
-        this.data.Name = this.name
-        this.data.Properties.FillColor = this.fillColor.value
-        this.data.Properties.StrokeColor = this.strokeColor.value
-        this.data.Properties.LineWidth = this.lineWidth
-        this.data.OutLine = this.getPointList.map((pos) => {
-            return {
-                X: pos.x,
-                Y: pos.y,
-            }
-        })
-        this.data.Properties.TextPos = { X: this.textItem.x, Y: this.textItem.y }
-        this.data.Properties.font = this.font.size
-        this.data.Properties.color = this.color.value
-        return this.data
-    }
-    onDraw(painter) {
-        if (this.maskFlag && this.status == SItemStatus.Normal) {
-            let color = new SColor(this.strokeColor)
-            color.alpha = color.alpha / 2
-            let brushcolor = new SColor(this.fillColor)
-            brushcolor.alpha = brushcolor.alpha / 2
-            painter.pen.color = color
-            painter.pen.lineCapStyle = SLineCapStyle.Square
-            painter.pen.lineWidth = painter.toPx(this._lineWidth)
-            painter.brush.color = brushcolor
-
-            if (this.selected) {
-                painter.pen.lineWidth = painter.toPx(this.lineWidth * 2);
-                painter.shadow.shadowBlur = 10;
-                painter.shadow.shadowColor = new SColor(`#00000033`);
-                painter.shadow.shadowOffsetX = 5;
-                painter.shadow.shadowOffsetY = 5;
-            }
-
-            // @ts-ignore
-            painter.drawPolygon([...this.pointList])
-        } else {
-            super.onDraw(painter)
-        }
-    }
-} // Class SZoneLegendItem

+ 6 - 6
src/lib/items/SFHFQZoneLegendItem.ts

@@ -1,9 +1,9 @@
-import { SGraphItem, SLineStyle, STextOrigin } from '@saga-web/graph/lib'
-import { Legend } from '../types/Legend'
-import { SPainter, SColor, SFont, SPoint, SLineCapStyle } from '@saga-web/draw'
-import { STextItem } from '@saga-web/graph/lib'
-import { hexify } from '@/components/mapClass/until'
-import { SItemStatus, ItemOrder, SPolygonItem } from '@saga-web/big/lib'
+import { SGraphItem, SLineStyle, STextOrigin } from '@saga-web/graph/lib';
+import { Legend } from '../types/Legend';
+import { SPainter, SColor, SFont, SPoint, SLineCapStyle } from '@saga-web/draw';
+import { STextItem } from '@saga-web/graph/lib';
+import { hexify } from '@/components/mapClass/until';
+import { SItemStatus, ItemOrder, SPolygonItem } from '@saga-web/big/lib';
 /**
  * 图例节点Item(区域类型 --防火分区)
  *

+ 0 - 155
src/lib/items/SImageLegendItem.js

@@ -1,155 +0,0 @@
-import { SIconTextItem } from '@saga-web/big/lib/items/SIconTextItem';
-import { ItemOrder, SItemStatus } from '@saga-web/big/lib';
-import { SFont, SColor } from '@saga-web/draw/lib';
-/**
- * 图例节点Item(图标类型)
- *
- * * @author  张宇(taohuzy@163.com)
- */
-export class SImageLegendItem extends SIconTextItem {
-    /**
-     * 构造函数
-     *
-     * @param parent    指向父对象
-     * @param data      图例节点对象数据
-     */
-    constructor(parent, data) {
-        super(parent, data.AnchorList);
-        /** 图例数量 */
-        this._num = 1;
-        /** 是否蒙版遮罩  */
-        this._maskFlag = false;
-        this.isTransform = false;
-        this.zOrder = ItemOrder.markOrder;
-        this.data = data;
-        this.id = data.ID;
-        this.name = data.Name;
-        this.text = data.Name;
-        this.moveTo(data.Pos.X, data.Pos.Y);
-        if (data.Num) {
-            this.num = data.Num;
-        }
-        if (data.Size) {
-            this.width = data.Size.Width;
-            this.height = data.Size.Height;
-        }
-        if (data.Properties && data.Properties.Url) {
-            this.img.url = data.Properties.Url;
-        }
-        if (data.Properties && data.Properties.sWidth) {
-            this.sWidth = data.Properties.sWidth;
-        }
-        if (data.Properties && data.Properties.sHeight) {
-            this.sHeight = data.Properties.sHeight;
-        }
-        if (data.Properties.ImgPos) {
-            this.img.moveTo(data.Properties.ImgPos.X, data.Properties.ImgPos.Y);
-        }
-        if (data.Properties && data.Properties.font) {
-            this.font = new SFont("sans-serif", data.Properties.font);
-        }
-        if (data.Properties.TextPos) {
-            this.textItem.moveTo(data.Properties.TextPos.X, data.Properties.TextPos.Y);
-        }
-        else {
-            // 偏移二分之一文本高度
-            this.textItem.moveTo((this.img.width * 0.5), -(this.font.size * 1.25 * 0.5));
-        }
-        if (data.Properties && data.Properties.color) {
-            this.color = new SColor(data.Properties.color);
-        }
-        if (data.Properties && data.Properties.IsActive) {
-            this.isActive = data.Properties.IsActive;
-        }
-        if (data.AttachObjectIds && data.AttachObjectIds.length) {
-            this.isActive = true;
-        }
-        if (data.Properties && data.Properties.FrameColor) {
-            this.activeColor = new SColor(data.Properties.FrameColor);
-        }
-    }
-    get num() {
-        return this._num;
-    }
-    set num(v) {
-        if (v) {
-            this._num = v;
-            this.data.Num = v;
-        }
-        else {
-            this._num = 1;
-            this.data.Num = 1;
-        }
-        this.data.Properties.Num = this._num;
-        this.textItem.text = `${this.name}${this.num > 1 ? `×${this.num}` : ''}`;
-        this.update();
-    }
-    get text() {
-        return this.textItem.text;
-    }
-    set text(v) {
-        this.name = v;
-        this.data.Name = v;
-        this.textItem.text = `${this.name}${this.num > 1 ? `×${this.num}` : ''}`;
-        this.update();
-    }
-    get maskFlag() {
-        return this._maskFlag;
-    }
-    set maskFlag(v) {
-        if (v === this._maskFlag) {
-            return;
-        }
-        this._maskFlag = v;
-        if (v) {
-            this.textItem.visible = false;
-        }
-        else {
-            this.textItem.visible = true;
-        }
-        this.update();
-    }
-    toData() {
-        this.data.Pos = { X: this.x, Y: this.y };
-        this.data.Size = { Width: this.width, Height: this.height };
-        this.data.Name = this.name;
-        this.data.Properties.Url = this.img.url;
-        this.data.Properties.TextPos = { X: this.textItem.x, Y: this.textItem.y };
-        this.data.Properties.ImgPos = { X: this.img.x, Y: this.img.y };
-        this.data.Properties.sWidth = this.sWidth;
-        this.data.Properties.sHeight = this.sHeight;
-        this.data.Properties.font = this.font.size;
-        this.data.Properties.color = this.color.value;
-        this.data.Properties.FrameColor = this.activeColor.value;
-        this.data.Properties.IsActive = this.isActive;
-        this.data.AnchorList = this.anchorList.map(t => {
-            return {
-                ID: t.id,
-                Pos: {
-                    X: t.x,
-                    Y: t.y
-                }
-            };
-        });
-        return this.data;
-    }
-    /**
-     * Item绘制框架
-     *
-     * @param   painter       painter对象
-     * @param   rect          绘制区域
-     */
-    onPaint(painter, rect) {
-        super.onPaint(painter, rect);
-        if (this.maskFlag && this.status == SItemStatus.Normal) {
-            painter.pen.color = SColor.Transparent;
-            painter.brush.color = new SColor("#ffffffa1");
-            if (this.selected) {
-                painter.drawCircle(this.img.x, this.img.y, (this.sWidth / 2.0) * 1.25);
-            }
-            else {
-                painter.drawCircle(this.img.x, this.img.y, this.sWidth / 2.0);
-            }
-        }
-    } // Function onPaint()
-} // Class SImageLegendItem

+ 4 - 0
src/lib/items/SImageLegendItem.ts

@@ -79,6 +79,9 @@ export class SImageLegendItem extends SIconTextItem {
             this.width = data.Size.Width;
             this.height = data.Size.Height;
         }
+        if (data.Properties.Zorder) {
+            this.zOrder = data.Properties.Zorder;
+        }
         if (data.Properties && data.Properties.Url) {
             this.img.url = data.Properties.Url;
         }
@@ -118,6 +121,7 @@ export class SImageLegendItem extends SIconTextItem {
         this.data.Pos = { X: this.x, Y: this.y };
         this.data.Size = { Width: this.width, Height: this.height };
         this.data.Name = this.name;
+        this.data.Properties.Zorder = this.zOrder;
         this.data.Properties.Url = this.img.url;
         this.data.Properties.TextPos = { X: this.textItem.x, Y: this.textItem.y };
         this.data.Properties.ImgPos = { X: this.img.x, Y: this.img.y };

File diff suppressed because it is too large
+ 0 - 57
src/lib/items/SImageMarkerItem.js


+ 4 - 0
src/lib/items/SImageMarkerItem.ts

@@ -33,6 +33,9 @@ export class SImageMarkerItem extends SImageItem {
             this.width = data.Size.Width;
             this.height = data.Size.Height;
         }
+        if (data.Properties.Zorder) {
+            this.zOrder = data.Properties.Zorder;
+        }
         if (data.Properties && data.Properties.Url) {
             this.url = data.Properties.Url;
         }
@@ -57,6 +60,7 @@ export class SImageMarkerItem extends SImageItem {
     toData(): Marker {
         this.data.Pos = {X: this.x, Y: this.y};
         this.data.Size = {Width: this.width, Height: this.height};
+        this.data.Properties.Zorder = this.zOrder;
         this.data.Properties.Url = this.url;
         this.data.Properties.StrokeColor = this.strokeColor.value;
         this.data.Properties.LineWidth = this.lineWidth;

+ 0 - 47
src/lib/items/SLineLegendItem.js

@@ -1,47 +0,0 @@
-import { SPoint } from "@saga-web/draw/lib";
-import { SPolylineItem } from '@saga-web/big/lib';
-/**
- * 图例节点Item(线类型)
- *
- * * @author  张宇(taohuzy@163.com)
- */
-export class SLineLegendItem extends SPolylineItem {
-    /**
-     * 构造函数
-     *
-     * @param parent    指向父对象
-     * @param data      图例节点对象数据
-     */
-    constructor(parent, data) {
-        super(parent, []);
-        this.data = data;
-        this.id = data.ID;
-        this.name = data.Name;
-        this.moveTo(data.Pos.X, data.Pos.Y);
-        if (data.Properties && data.Properties.Line) {
-            let setPointList;
-            setPointList = data.Properties.Line.map(i => {
-                return new SPoint(i.x, i.y);
-            });
-            this.pointList = setPointList;
-        }
-        if (data.Properties && data.Properties.LineWidth) {
-            this.lineWidth = data.Properties.LineWidth;
-        }
-        if (data.Properties && data.Properties.StrokeColor) {
-            this.strokeColor = data.Properties.StrokeColor;
-        }
-    }
-    toData() {
-        this.data.Pos = { X: this.x, Y: this.y };
-        this.data.Properties.Line = this.pointList.map(pos => {
-            return {
-                X: pos.x,
-                Y: pos.y
-            };
-        });
-        this.data.Properties.LineWidth = this.lineWidth;
-        this.data.Properties.StrokeColor = this.strokeColor;
-        return this.data;
-    }
-} // Class SLineLegendItem

+ 4 - 0
src/lib/items/SLineLegendItem.ts

@@ -25,6 +25,9 @@ export class SLineLegendItem extends SPolylineItem {
         this.id = data.ID;
         this.name = data.Name;
         this.moveTo(data.Pos.X, data.Pos.Y);
+        if (data.Properties.Zorder) {
+            this.zOrder = data.Properties.Zorder;
+        }
         if (data.Properties && data.Properties.Line) {
             let setPointList: SPoint[];
             setPointList = data.Properties.Line.map(i => {
@@ -48,6 +51,7 @@ export class SLineLegendItem extends SPolylineItem {
                 Y: pos.y
             }
         });
+        this.data.Properties.Zorder = this.zOrder;
         this.data.Properties.LineWidth = this.lineWidth;
         this.data.Properties.StrokeColor = this.strokeColor;
         return this.data;

+ 0 - 121
src/lib/items/SLineMarkerItem.js

@@ -1,121 +0,0 @@
-import { SLineStyle } from '@saga-web/graph/lib'
-import { SPoint, SColor } from '@saga-web/draw/lib'
-import { ItemOrder, SLineItem, SItemStatus } from '@saga-web/big/lib'
-/**
- * 标识对象Item(线类型)
- *
- * * @author  张宇(taohuzy@163.com)
- */
-export class SLineMarkerItem extends SLineItem {
-    /**
-     * 构造函数
-     *
-     * @param parent    指向父对象
-     * @param data      标识对象数据
-     */
-    constructor(parent, data) {
-        super(parent)
-        /** 起始锚点  */
-        this.startItem = null
-        /** 结束锚点  */
-        this.endItem = null
-        /** 是否蒙版遮罩  */
-        this._maskFlag = false
-        this.zOrder = ItemOrder.lineOrder
-        this.data = data
-        this.id = data.ID
-        this.name = data.Name
-        this.moveTo(data.Pos.X, data.Pos.Y)
-        if (data.Properties && data.Properties.Line) {
-            let setPointList
-            setPointList = data.Properties.Line.map((i) => {
-                return new SPoint(i.X, i.Y)
-            })
-            this.line = setPointList
-        }
-        if (data.Properties && data.Properties.LineWidth) {
-            this.lineWidth = data.Properties.LineWidth
-        }
-        if (data.Properties && data.Properties.LineStyle) {
-            this.lineStyle = data.Properties.LineStyle
-        }
-        if (data.Properties && data.Properties.StrokeColor) {
-            this.strokeColor = new SColor(data.Properties.StrokeColor)
-        }
-    } // Constructor
-    /** 是否完成绘制  */
-    get status() {
-        return this._status
-    }
-    set status(v) {
-        this._status = v
-        if (v == SItemStatus.Edit) {
-            this.zOrder = ItemOrder.markOrder
-        } else {
-            this.zOrder = ItemOrder.lineOrder
-        }
-        this.update()
-    }
-    get maskFlag() {
-        return this._maskFlag
-    }
-    set maskFlag(v) {
-        if (v === this._maskFlag) {
-            return
-        }
-        this._maskFlag = v
-        this.update()
-    }
-    /** 接收事件作出修改  */
-    changePos() {
-        if (this.startItem) {
-            // 判断删除equip后,不移动
-            if (this.startItem.parent) {
-                let scenePoint = this.startItem.boundingRect().center()
-                this.line[0] = this.startItem.mapToScene(scenePoint.x, scenePoint.y)
-            }
-        }
-        if (this.endItem) {
-            // 删除equip后
-            if (this.endItem.parent) {
-                let scenePoint = this.endItem.boundingRect().center()
-                this.line[1] = this.endItem.mapToScene(scenePoint.x, scenePoint.y)
-            }
-        }
-    }
-    toData() {
-        this.data.Pos = { X: this.x, Y: this.y }
-        this.data.Properties.Line = this.line.map((pos) => {
-            return {
-                X: pos.x,
-                Y: pos.y,
-            }
-        })
-        this.data.Properties.LineWidth = this.lineWidth
-        this.data.Properties.StrokeColor = this.strokeColor.value
-        this.data.Properties.LineStyle = this.lineStyle
-        if (this.startItem && this.startItem.parent) {
-            this.data.Properties.StartItemId = this.startItem.id
-        }
-        if (this.endItem && this.endItem.parent) {
-            this.data.Properties.EndItemId = this.endItem.id
-        }
-        return this.data
-    }
-    onDraw(painter) {
-        if (this.maskFlag && this.status == SItemStatus.Normal) {
-            let color = new SColor(this.strokeColor)
-            color.alpha = color.alpha / 2
-            painter.pen.color = new SColor(this.strokeColor)
-            if (this.lineStyle == SLineStyle.Dashed) {
-                painter.pen.lineDash = [painter.toPx(this.lineWidth * 3), painter.toPx(this.lineWidth * 7)]
-            } else if (this.lineStyle == SLineStyle.Dotted) {
-                painter.pen.lineDash = [painter.toPx(this.lineWidth), painter.toPx(this.lineWidth)]
-            }
-            painter.drawLine(this.line[0], this.line[1])
-        } else {
-            this.selected = true
-            super.onDraw(painter)
-        }
-    }
-} // Class SLineMarkerItem

+ 60 - 50
src/lib/items/SLineMarkerItem.ts

@@ -1,7 +1,7 @@
-import { SGraphItem, SLineStyle } from '@saga-web/graph/lib'
-import { SPoint, SPainter, SColor, SLineCapStyle } from '@saga-web/draw/lib'
-import { ItemOrder, SLineItem, SItemStatus } from '@saga-web/big/lib'
-import { Marker } from '../types/Marker'
+import { SGraphItem, SLineStyle } from "@saga-web/graph/lib";
+import { SPoint, SPainter, SColor, SLineCapStyle } from "@saga-web/draw/lib";
+import { ItemOrder, SLineItem, SItemStatus } from '@saga-web/big/lib';
+import { Marker } from '../types/Marker';
 
 /**
  * 标识对象Item(线类型)
@@ -10,37 +10,37 @@ import { Marker } from '../types/Marker'
  */
 export class SLineMarkerItem extends SLineItem {
     /** 起始锚点  */
-    startItem: SGraphItem | null = null
+    startItem: SGraphItem | null = null;
     /** 结束锚点  */
-    endItem: SGraphItem | null = null
+    endItem: SGraphItem | null = null;
 
     /** 标识对象数据 */
-    data: Marker
+    data: Marker;
 
     /** 是否完成绘制  */
     get status(): SItemStatus {
-        return this._status
+        return this._status;
     }
     set status(v: SItemStatus) {
-        this._status = v
+        this._status = v;
         if (v == SItemStatus.Edit) {
-            this.zOrder = ItemOrder.markOrder
+            this.zOrder = ItemOrder.markOrder;
         } else {
-            this.zOrder = ItemOrder.lineOrder
+            this.zOrder = ItemOrder.lineOrder;
         }
-        this.update()
+        this.update();
     }
 
     /** 是否蒙版遮罩  */
-    _maskFlag: boolean = false
+    _maskFlag: boolean = false;
     get maskFlag(): boolean {
-        return this._maskFlag
+        return this._maskFlag;
     }
     set maskFlag(v: boolean) {
         if (v === this._maskFlag) {
             return
         }
-        this._maskFlag = v
+        this._maskFlag = v;
         this.update()
     }
 
@@ -51,27 +51,30 @@ export class SLineMarkerItem extends SLineItem {
      * @param data      标识对象数据
      */
     constructor(parent: SGraphItem | null, data: Marker) {
-        super(parent)
-        this.zOrder = ItemOrder.lineOrder
-        this.data = data
-        this.id = data.ID
-        this.name = data.Name
-        this.moveTo(data.Pos.X, data.Pos.Y)
+        super(parent);
+        this.zOrder = ItemOrder.lineOrder;
+        this.data = data;
+        this.id = data.ID;
+        this.name = data.Name;
+        this.moveTo(data.Pos.X, data.Pos.Y);
+        if (data.Properties.Zorder) {
+            this.zOrder = data.Properties.Zorder;
+        }
         if (data.Properties && data.Properties.Line) {
-            let setPointList: SPoint[]
-            setPointList = data.Properties.Line.map((i) => {
+            let setPointList: SPoint[];
+            setPointList = data.Properties.Line.map(i => {
                 return new SPoint(i.X, i.Y)
             })
-            this.line = setPointList
+            this.line = setPointList;
         }
         if (data.Properties && data.Properties.LineWidth) {
-            this.lineWidth = data.Properties.LineWidth
+            this.lineWidth = data.Properties.LineWidth;
         }
         if (data.Properties && data.Properties.LineStyle) {
-            this.lineStyle = data.Properties.LineStyle
+            this.lineStyle = data.Properties.LineStyle;
         }
         if (data.Properties && data.Properties.StrokeColor) {
-            this.strokeColor = new SColor(data.Properties.StrokeColor)
+            this.strokeColor = new SColor(data.Properties.StrokeColor);
         }
     } // Constructor
 
@@ -80,53 +83,60 @@ export class SLineMarkerItem extends SLineItem {
         if (this.startItem) {
             // 判断删除equip后,不移动
             if (this.startItem.parent) {
-                let scenePoint: SPoint = this.startItem.boundingRect().center()
-                this.line[0] = this.startItem.mapToScene(scenePoint.x, scenePoint.y)
+                let scenePoint: SPoint = this.startItem.boundingRect().center();
+                this.line[0] = this.startItem.mapToScene(scenePoint.x, scenePoint.y);
             }
         }
         if (this.endItem) {
             // 删除equip后
             if (this.endItem.parent) {
-                let scenePoint: SPoint = this.endItem.boundingRect().center()
-                this.line[1] = this.endItem.mapToScene(scenePoint.x, scenePoint.y)
+                let scenePoint: SPoint = this.endItem.boundingRect().center();
+                this.line[1] = this.endItem.mapToScene(scenePoint.x, scenePoint.y);
             }
         }
     }
 
     toData(): Marker {
-        this.data.Pos = { X: this.x, Y: this.y }
-        this.data.Properties.Line = this.line.map((pos) => {
+        this.data.Pos = { X: this.x, Y: this.y };
+        this.data.Properties.Line = this.line.map(pos => {
             return {
                 X: pos.x,
-                Y: pos.y,
+                Y: pos.y
             }
-        })
-        this.data.Properties.LineWidth = this.lineWidth
-        this.data.Properties.StrokeColor = this.strokeColor.value
-        this.data.Properties.LineStyle = this.lineStyle
+        });
+        this.data.Properties.Zorder = this.zOrder;
+        this.data.Properties.LineWidth = this.lineWidth;
+        this.data.Properties.StrokeColor = this.strokeColor.value;
+        this.data.Properties.LineStyle = this.lineStyle;
         if (this.startItem && this.startItem.parent) {
-            this.data.Properties.StartItemId = this.startItem.id
+            this.data.Properties.StartItemId = this.startItem.id;
         }
         if (this.endItem && this.endItem.parent) {
-            this.data.Properties.EndItemId = this.endItem.id
+            this.data.Properties.EndItemId = this.endItem.id;
         }
-        return this.data
+        return this.data;
     }
 
     onDraw(painter: SPainter) {
         if (this.maskFlag && this.status == SItemStatus.Normal) {
-            let color = new SColor(this.strokeColor)
-            color.alpha = color.alpha / 2
-            painter.pen.color = new SColor(this.strokeColor)
+            let color = new SColor(this.strokeColor);
+            color.alpha = 100;
+            painter.pen.color = new SColor(this.strokeColor);
             if (this.lineStyle == SLineStyle.Dashed) {
-                painter.pen.lineDash = [painter.toPx(this.lineWidth * 3), painter.toPx(this.lineWidth * 7)]
-            } else if (this.lineStyle == SLineStyle.Dotted) {
-                painter.pen.lineDash = [painter.toPx(this.lineWidth), painter.toPx(this.lineWidth)]
+                painter.pen.lineDash = [
+                    painter.toPx(this.lineWidth * 3),
+                    painter.toPx(this.lineWidth * 7)
+                ];
+            }
+            else if (this.lineStyle == SLineStyle.Dotted) {
+                painter.pen.lineDash = [
+                    painter.toPx(this.lineWidth),
+                    painter.toPx(this.lineWidth)
+                ];
             }
-            painter.drawLine(this.line[0], this.line[1])
+            painter.drawLine(this.line[0], this.line[1]);
         } else {
-            this.selected = true
-            super.onDraw(painter)
+            super.onDraw(painter);
         }
     }
 } // Class SLineMarkerItem

+ 0 - 22
src/lib/items/SNoneLegendItem.js

@@ -1,22 +0,0 @@
-import { SGraphItem } from "@saga-web/graph/lib";
-/**
- * 图例节点Item(非图例类型)
- *
- * * @author  张宇(taohuzy@163.com)
- */
-export class SNoneLegendItem extends SGraphItem {
-    /**
-     * 构造函数
-     *
-     * @param parent    指向父对象
-     * @param data      图例节点对象数据
-     */
-    constructor(parent, data) {
-        super(parent);
-        this.data = data;
-        this.id = data.ID;
-    }
-    toData() {
-        return this.data;
-    }
-} // Class SNoneLegendItem

+ 0 - 203
src/lib/items/SSCPZZoneLegendItem.js

@@ -1,203 +0,0 @@
-import { SColor, SFont, SPoint, SLineCapStyle } from '@saga-web/draw'
-import { STextItem } from '@saga-web/graph/lib'
-import { hexify } from '@/components/mapClass/until'
-import { SItemStatus, ItemOrder, SPolygonItem } from '@saga-web/big/lib'
-/**
- * 图例节点Item(区域类型 --石材铺装)
- *
- * * @author  张宇(taohuzy@163.com)
- */
-export class SSCPZZoneLegendItem extends SPolygonItem {
-    /**
-     * 构造函数
-     *
-     * @param parent    指向父对象
-     * @param data      图例节点对象数据
-     */
-    constructor(parent, data) {
-        super(parent)
-        /** text item   */
-        this.textItem = new STextItem(this)
-        /** 是否显示文字  */
-        this._showText = true
-        /** 是否蒙版遮罩  */
-        this._maskFlag = false
-        this.textItem.isTransform = false
-        this.zOrder = ItemOrder.polygonOrder
-        this.data = data
-        this.id = data.ID
-        this.name = data.Name
-        this.text = data.Name
-        if (data) {
-            this.setPointList = []
-            let setPointList
-            if (data.OutLine) {
-                if (data.OutLine[0] instanceof SPoint) {
-                    this.setPointList = data.OutLine
-                } else {
-                    setPointList = data.OutLine.map((i) => {
-                        return new SPoint(i.X, i.Y)
-                    })
-                    this.setPointList = setPointList
-                }
-            }
-            // 设置线宽
-            if (data.Properties.LineWidth) {
-                this.lineWidth = data.Properties.LineWidth
-            }
-            if (data.Properties.StrokeColor) {
-                this.strokeColor = data.Properties.StrokeColor.includes('#')
-                    ? new SColor(data.Properties.StrokeColor)
-                    : new SColor(hexify(data.Properties.StrokeColor))
-            }
-            if (data.Properties.FillColor) {
-                this.fillColor = data.Properties.FillColor.includes('#')
-                    ? new SColor(data.Properties.FillColor)
-                    : new SColor(hexify(data.Properties.FillColor))
-            }
-            if (data.Properties.TextPos) {
-                this.textItem.moveTo(data.Properties.TextPos.X, data.Properties.TextPos.Y)
-            }
-            if (data.Properties.color) {
-                this.color = new SColor(data.Properties.color)
-            }
-            if (data.Properties.font) {
-                this.font = new SFont('sans-serif', data.Properties.font)
-            }
-            //    if( data.Properties.LineDash){
-            //     this.LineDash =this._legend.Properties.LineDash
-            //    }
-        }
-        // 监听多边形创建完成事件,并动态计算文本位置
-        this.connect('finishCreated', this, () => {
-            // 计算文本位置
-            let x = this.getPointList.reduce((pre, cur, index, arr) => {
-                    return pre + cur.x / arr.length
-                }, 0),
-                y = this.getPointList.reduce((pre, cur, index, arr) => {
-                    return pre + cur.y / arr.length
-                }, 0)
-            this.textItem.moveTo(x, y)
-        })
-    }
-    get text() {
-        return this.textItem.text
-    }
-    set text(v) {
-        this.textItem.text = v
-        this.update()
-    }
-    get color() {
-        return this.textItem.color
-    }
-    set color(v) {
-        this.textItem.color = v
-    }
-    get font() {
-        return this.textItem.font
-    }
-    set font(v) {
-        this.textItem.font = v
-    }
-    get status() {
-        return this._status
-    }
-    // 编辑当前状态
-    set status(value) {
-        this._status = value
-        // 如果状态为show则需清栈
-        if (value == SItemStatus.Normal) {
-            // 切换显示状态显示文本
-            this.showText = true
-            // 切换显示状态不可移动文本
-            this.textItem.moveable = false
-            if (this.undoStack) {
-                this.undoStack.clear()
-            }
-        } else if (value == SItemStatus.Edit) {
-            // 切换编辑状态显示文本
-            this.showText = true
-            // 切换编辑状态可移动文本
-            this.textItem.moveable = true
-        } else if (value == SItemStatus.Create) {
-            // 切换创建状态不显示文本
-            this.showText = false
-            // 切换创建状态不可移动文本
-            this.textItem.moveable = false
-        }
-        this.update()
-    }
-    get showText() {
-        return this._showText
-    }
-    set showText(v) {
-        if (v === this._showText) {
-            return
-        }
-        this._showText = v
-        if (v) {
-            this.textItem.show()
-        } else {
-            this.textItem.hide()
-        }
-    }
-    get maskFlag() {
-        return this._maskFlag
-    }
-    set maskFlag(v) {
-        if (v === this._maskFlag) {
-            return
-        }
-        this._maskFlag = v
-        this.update()
-    }
-    /** 图例说明  */
-    set itemExplain(v) {
-        this.data.Properties.ItemExplain = v
-    }
-    get itemExplain() {
-        return this.data.Properties.ItemExplain
-    }
-    toData() {
-        this.data.Pos = { X: this.x, Y: this.y }
-        this.data.Name = this.name
-        this.data.Properties.FillColor = this.fillColor.value
-        this.data.Properties.StrokeColor = this.strokeColor.value
-        this.data.Properties.LineWidth = this.lineWidth
-        this.data.OutLine = this.getPointList.map((pos) => {
-            return {
-                X: pos.x,
-                Y: pos.y,
-            }
-        })
-        this.data.Properties.TextPos = { X: this.textItem.x, Y: this.textItem.y }
-        this.data.Properties.font = this.font.size
-        this.data.Properties.color = this.color.value
-        return this.data
-    }
-    onDraw(painter) {
-        if (this.maskFlag && this.status == SItemStatus.Normal) {
-            let color = new SColor(this.strokeColor)
-            color.alpha = color.alpha / 2
-            let brushcolor = new SColor(this.fillColor)
-            brushcolor.alpha = brushcolor.alpha / 2
-            painter.pen.color = color
-            painter.pen.lineCapStyle = SLineCapStyle.Square
-            painter.pen.lineWidth = painter.toPx(this._lineWidth)
-            painter.brush.color = brushcolor
-
-            if (this.selected) {
-                painter.pen.lineWidth = painter.toPx(this.lineWidth * 2);
-                painter.shadow.shadowBlur = 10;
-                painter.shadow.shadowColor = new SColor(`#00000033`);
-                painter.shadow.shadowOffsetX = 5;
-                painter.shadow.shadowOffsetY = 5;
-            }
-
-            // @ts-ignore
-            painter.drawPolygon([...this.pointList])
-        } else {
-            super.onDraw(painter)
-        }
-    }
-} // Class SZoneLegendItem

+ 6 - 7
src/lib/items/SSCPZZoneLegendItem.ts

@@ -1,9 +1,9 @@
-import { SGraphItem, SLineStyle, STextOrigin } from '@saga-web/graph/lib'
-import { Legend } from '../types/Legend'
-import { SPainter, SColor, SFont, SPoint, SLineCapStyle } from '@saga-web/draw'
-import { STextItem } from '@saga-web/graph/lib'
-import { hexify } from '@/components/mapClass/until'
-import { SItemStatus, ItemOrder, SPolygonItem } from '@saga-web/big/lib'
+import { SGraphItem, SLineStyle, STextOrigin } from '@saga-web/graph/lib';
+import { Legend } from '../types/Legend';
+import { SPainter, SColor, SFont, SPoint, SLineCapStyle } from '@saga-web/draw';
+import { STextItem } from '@saga-web/graph/lib';
+import { hexify } from '@/components/mapClass/until';
+import { SItemStatus, ItemOrder, SPolygonItem } from '@saga-web/big/lib';
 /**
  * 图例节点Item(区域类型 --石材铺装)
  *
@@ -205,7 +205,6 @@ export class SSCPZZoneLegendItem extends SPolygonItem {
     toData(): any {
         this.data.Pos = { X: this.x, Y: this.y };
         this.data.Name = this.name;
-        console.log(this.zOrder);
         this.data.Properties.Zorder = this.zOrder;
         this.data.Properties.FillColor = this.fillColor.value;
         this.data.Properties.StrokeColor = this.strokeColor.value;

+ 0 - 59
src/lib/items/STextMarkerItem.js

@@ -1,59 +0,0 @@
-import { STextItem } from "@saga-web/graph/lib";
-import { SColor, SFont, SPoint } from "@saga-web/draw";
-import { ItemOrder } from '@saga-web/big/lib';
-/**
- * 标识对象Item(文本类型)
- *
- * * @author  张宇(taohuzy@163.com)
- */
-export class STextMarkerItem extends STextItem {
-    /**
-     * 构造函数
-     *
-     * @param parent    指向父对象
-     * @param data      标识对象数据
-     */
-    constructor(parent, data) {
-        super(parent);
-        this.zOrder = ItemOrder.textOrder;
-        this.isTransform = false;
-        this.data = data;
-        this.id = data.ID;
-        this.name = data.Name;
-        this.moveTo(data.Pos.X, data.Pos.Y);
-        if (data.Size) {
-            this.width = data.Size.Width;
-            this.height = data.Size.Height;
-        }
-        if (data.Properties && data.Properties.Text) {
-            this.text = data.Properties.Text;
-        }
-        if (data.Properties && data.Properties.Color) {
-            this.color = new SColor(data.Properties.Color);
-        }
-        if (data.Properties && data.Properties.Font) {
-            this.font = new SFont("sans-serif", data.Properties.Font);
-            ;
-        }
-        if (data.Properties && data.Properties.BackgroundColor) {
-            this.backgroundColor = new SColor(data.Properties.BackgroundColor);
-        }
-    } // Constructor
-    /**
-     * 根据换行切割文本,绘制多行并计算外轮廓宽高
-     *
-     */
-    drawFormatText() {
-        super.drawFormatText();
-        this.origin = new SPoint(this.width / 2, this.height / 2);
-    } // Function drawFormatText()
-    toData() {
-        this.data.Pos = { X: this.x, Y: this.y };
-        this.data.Size = { Width: this.width, Height: this.height };
-        this.data.Properties.Text = this.text;
-        this.data.Properties.Color = this.color.value;
-        this.data.Properties.Font = this.font.size;
-        this.data.Properties.BackgroundColor = this.backgroundColor.value;
-        return this.data;
-    }
-} // Class STextMarkerItem

+ 4 - 0
src/lib/items/STextMarkerItem.ts

@@ -30,6 +30,9 @@ export class STextMarkerItem extends STextItem {
             this.width = data.Size.Width;
             this.height = data.Size.Height;
         }
+        if (data.Properties.Zorder) {
+            this.zOrder = data.Properties.Zorder;
+        }
         if (data.Properties && data.Properties.Text) {
             this.text = data.Properties.Text;
         }
@@ -56,6 +59,7 @@ export class STextMarkerItem extends STextItem {
     toData(): Marker {
         this.data.Pos = {X: this.x, Y: this.y};
         this.data.Size = {Width: this.width, Height: this.height};
+        this.data.Properties.Zorder = this.zOrder;
         this.data.Properties.Text = this.text;
         this.data.Properties.Color = this.color.value;
         this.data.Properties.Font = this.font.size;

+ 0 - 197
src/lib/items/SZoneLegendItem.js

@@ -1,197 +0,0 @@
-import { SColor, SFont, SPoint, SLineCapStyle } from '@saga-web/draw'
-import { STextItem } from '@saga-web/graph/lib'
-import { hexify } from '@/components/mapClass/until'
-import { SItemStatus, ItemOrder, SPolygonItem } from '@saga-web/big/lib'
-/**
- * 图例节点Item(区域类型)
- *
- * * @author  张宇(taohuzy@163.com)
- */
-export class SZoneLegendItem extends SPolygonItem {
-    /**
-     * 构造函数
-     *
-     * @param parent    指向父对象
-     * @param data      图例节点对象数据
-     */
-    constructor(parent, data) {
-        super(parent)
-        /** text item   */
-        this.textItem = new STextItem(this)
-        /** 是否显示文字  */
-        this._showText = true
-        /** 是否蒙版遮罩  */
-        this._maskFlag = false
-        this.textItem.isTransform = false
-        this.zOrder = ItemOrder.polygonOrder
-        this.data = data
-        this.id = data.ID
-        this.name = data.Name
-        this.text = data.Name
-        if (data) {
-            this.setPointList = []
-            let setPointList
-            if (data.OutLine) {
-                if (data.OutLine[0] instanceof SPoint) {
-                    // @ts-ignore
-                    this.setPointList = data.OutLine
-                } else {
-                    setPointList = data.OutLine.map((i) => {
-                        return new SPoint(i.X, i.Y)
-                    })
-                    this.setPointList = setPointList
-                }
-            }
-            // 设置线宽
-            if (data.Properties.LineWidth) {
-                this.lineWidth = data.Properties.LineWidth
-            }
-            if (data.Properties.StrokeColor) {
-                this.strokeColor = data.Properties.StrokeColor.includes('#')
-                    ? new SColor(data.Properties.StrokeColor)
-                    : new SColor(hexify(data.Properties.StrokeColor))
-            }
-            if (data.Properties.FillColor) {
-                this.fillColor = data.Properties.FillColor.includes('#')
-                    ? new SColor(data.Properties.FillColor)
-                    : new SColor(hexify(data.Properties.FillColor))
-            }
-            if (data.Properties.TextPos) {
-                this.textItem.moveTo(data.Properties.TextPos.X, data.Properties.TextPos.Y)
-            }
-            if (data.Properties.color) {
-                this.color = new SColor(data.Properties.color)
-            }
-            if (data.Properties.font) {
-                this.font = new SFont('sans-serif', data.Properties.font)
-            }
-            //    if( data.Properties.LineDash){
-            //     this.LineDash =this._legend.Properties.LineDash
-            //    }
-        }
-        // 监听多边形创建完成事件,并动态计算文本位置
-        this.connect('finishCreated', this, () => {
-            // 计算文本位置
-            let x = this.getPointList.reduce((pre, cur, index, arr) => {
-                    return pre + cur.x / arr.length
-                }, 0),
-                y = this.getPointList.reduce((pre, cur, index, arr) => {
-                    return pre + cur.y / arr.length
-                }, 0)
-            this.textItem.moveTo(x, y)
-        })
-    }
-    get text() {
-        return this.textItem.text
-    }
-    set text(v) {
-        this.textItem.text = v
-        this.update()
-    }
-    get color() {
-        return this.textItem.color
-    }
-    set color(v) {
-        this.textItem.color = v
-    }
-    get font() {
-        return this.textItem.font
-    }
-    set font(v) {
-        this.textItem.font = v
-    }
-    get status() {
-        return this._status
-    }
-    // 编辑当前状态
-    set status(value) {
-        this._status = value
-        // 如果状态为show则需清栈
-        if (value == SItemStatus.Normal) {
-            // 切换显示状态显示文本
-            this.showText = true
-            // 切换显示状态不可移动文本
-            this.textItem.moveable = false
-            if (this.undoStack) {
-                this.undoStack.clear()
-            }
-        } else if (value == SItemStatus.Edit) {
-            // 切换编辑状态显示文本
-            this.showText = true
-            // 切换编辑状态可移动文本
-            this.textItem.moveable = true
-        } else if (value == SItemStatus.Create) {
-            // 切换创建状态不显示文本
-            this.showText = false
-            // 切换创建状态不可移动文本
-            this.textItem.moveable = false
-        }
-        this.update()
-    }
-    get showText() {
-        return this._showText
-    }
-    set showText(v) {
-        if (v === this._showText) {
-            return
-        }
-        this._showText = v
-        if (v) {
-            this.textItem.show()
-        } else {
-            this.textItem.hide()
-        }
-    }
-    get maskFlag() {
-        return this._maskFlag
-    }
-    set maskFlag(v) {
-        if (v === this._maskFlag) {
-            return
-        }
-        this._maskFlag = v
-        this.update()
-    }
-    toData() {
-        this.data.Pos = { X: this.x, Y: this.y }
-        this.data.Name = this.name
-        this.data.Properties.FillColor = this.fillColor.value
-        this.data.Properties.StrokeColor = this.strokeColor.value
-        this.data.Properties.LineWidth = this.lineWidth
-        this.data.OutLine = this.getPointList.map((pos) => {
-            return {
-                X: pos.x,
-                Y: pos.y,
-            }
-        })
-        this.data.Properties.TextPos = { X: this.textItem.x, Y: this.textItem.y }
-        this.data.Properties.font = this.font.size
-        this.data.Properties.color = this.color.value
-        return this.data
-    }
-    onDraw(painter) {
-        if (this.maskFlag && this.status == SItemStatus.Normal) {
-            let color = new SColor(this.strokeColor)
-            color.alpha = color.alpha / 2
-            let brushcolor = new SColor(this.fillColor)
-            brushcolor.alpha = brushcolor.alpha / 2
-            painter.pen.color = color
-            painter.pen.lineCapStyle = SLineCapStyle.Square
-            painter.pen.lineWidth = painter.toPx(this._lineWidth)
-            painter.brush.color = brushcolor
-
-            if (this.selected) {
-                painter.pen.lineWidth = painter.toPx(this.lineWidth * 2);
-                painter.shadow.shadowBlur = 10;
-                painter.shadow.shadowColor = new SColor(`#00000033`);
-                painter.shadow.shadowOffsetX = 5;
-                painter.shadow.shadowOffsetY = 5;
-            }
-
-            // @ts-ignore
-            painter.drawPolygon([...this.pointList])
-        } else {
-            super.onDraw(painter)
-        }
-    }
-} // Class SZoneLegendItem

+ 6 - 6
src/lib/items/SZoneLegendItem.ts

@@ -1,9 +1,9 @@
-import { SGraphItem, SLineStyle, STextOrigin } from '@saga-web/graph/lib'
-import { Legend } from '../types/Legend'
-import { SPainter, SColor, SFont, SPoint, SLineCapStyle } from '@saga-web/draw'
-import { STextItem } from '@saga-web/graph/lib'
-import { hexify } from '@/components/mapClass/until'
-import { SItemStatus, ItemOrder, SPolygonItem } from '@saga-web/big/lib'
+import { SGraphItem, SLineStyle, STextOrigin } from '@saga-web/graph/lib';
+import { Legend } from '../types/Legend';
+import { SPainter, SColor, SFont, SPoint, SLineCapStyle } from '@saga-web/draw';
+import { STextItem } from '@saga-web/graph/lib';
+import { hexify } from '@/components/mapClass/until';
+import { SItemStatus, ItemOrder, SPolygonItem } from '@saga-web/big/lib';
 /**
  * 图例节点Item(区域类型)
  *

+ 0 - 190
src/lib/items/TipelineItem.js

@@ -1,190 +0,0 @@
-import { SPolylineItem, ItemOrder, SItemStatus } from '@saga-web/big/lib'
-import { SColor } from '@saga-web/draw'
-import { SPoint } from '@saga-web/draw/lib'
-/**
- * 管道item
- *
- * */
-export class TipelineItem extends SPolylineItem {
-    constructor(parent, data) {
-        super(parent, [])
-        /** 起始锚点  */
-        this.startAnchor = null
-        /** 结束锚点  */
-        this.endAnchor = null
-        /** 对应的图例ID  */
-        this._graphElementId = ''
-        /** 关联节点1ID  */
-        this._node1Id = ''
-        /** 关联节点2ID  */
-        this._node2Id = ''
-        /** 关联锚点1ID  */
-        this._anchor1ID = ''
-        /** 关联锚点2ID  */
-        this._anchor2ID = ''
-        /** 是否蒙版遮罩  */
-        this._maskFlag = false
-        /** 数据存储  */
-        this.data = null
-        this.zOrder = ItemOrder.polylineOrder
-        this.pointList = data.PointList.map((item) => {
-            return new SPoint(item.X, item.Y)
-        })
-        this.data = data
-        this.name = data.Name
-        this.id = data.ID
-        if (data.GraphElementId) {
-            this._graphElementId = data.GraphElementId
-        }
-        if (data.Node1ID) {
-            this._node1Id = data.Node1ID
-        }
-        if (data.Node2ID) {
-            this._node2Id = data.Node2ID
-        }
-        if (data.Anchor1ID) {
-            this._anchor1ID = data.Anchor1ID
-        }
-        if (data.Anchor2ID) {
-            this._anchor2ID = data.Anchor2ID
-        }
-        if (data.Properties && data.Properties.Color) {
-            this.strokeColor = new SColor(data.Properties.Color)
-        }
-        // if(data.Properties && data.Properties.LineDash){
-        //   this.LineDash = data.Properties.LineDash
-        // }
-        if (data.Properties && data.Properties.LineWidth) {
-            this.lineWidth = data.Properties.LineWidth
-        }
-    }
-    get graphElementId() {
-        return this._graphElementId
-    }
-    set graphElementId(v) {
-        this._graphElementId = v
-        if (this.data) {
-            this.data.GraphElementId = this._graphElementId
-        }
-    }
-    get node1Id() {
-        return this._node1Id
-    }
-    set node1Id(v) {
-        this._node1Id = v
-        if (this.data) {
-            this.data.Node1ID = this._node1Id
-        }
-    }
-    get node2Id() {
-        return this._node2Id
-    }
-    set node2Id(v) {
-        this._node2Id = v
-        if (this.data) {
-            this.data.Node2ID = this._node2Id
-        }
-    }
-    get anchor1ID() {
-        return this._anchor1ID
-    }
-    set anchor1ID(v) {
-        this._anchor1ID = v
-        if (this.data) {
-            this.data.Anchor1ID = this._anchor1ID
-        }
-    }
-    get anchor2ID() {
-        return this._anchor2ID
-    }
-    set anchor2ID(v) {
-        this._anchor2ID = v
-        if (this.data) {
-            this.data.Anchor2ID = this._anchor2ID
-        }
-    }
-    get maskFlag() {
-        return this._maskFlag
-    }
-    set maskFlag(v) {
-        if (v === this._maskFlag) {
-            return
-        }
-        this._maskFlag = v
-        this.update()
-    }
-    /** 接收事件作出修改  */
-    changePos() {
-        if (this.startAnchor) {
-            // 判断删除equip后,不移动
-            if (this.startAnchor.parent && this.startAnchor.parent.parent) {
-                this.pointList[0] = this.startAnchor.mapToScene(0, 0)
-            }
-        }
-        if (this.endAnchor) {
-            // 删除equip后
-            if (this.endAnchor.parent && this.endAnchor.parent.parent) {
-                this.pointList[this.pointList.length - 1] = this.endAnchor.mapToScene(0, 0)
-            }
-        }
-    }
-    /** 获取data数据  */
-    toData() {
-        let pointList = this.pointList.map((item) => {
-            return {
-                X: item.x,
-                Y: item.y,
-            }
-        })
-        if (this.data) {
-            this.data.Name = this.name;
-            this.data.PointList = pointList
-            this.data.Properties.LineWidth = this.lineWidth
-            // this.data.Properties.LineDash = this.LineDash;
-            this.data.Properties.Color = this.strokeColor.value
-        }
-        return this.data
-    }
-   // onDraw(painter: SPainter) {
-    //     if (this.maskFlag && this.status == SItemStatus.Normal) {
-    //         let color = new SColor(this.strokeColor)
-    //         color.alpha = color.alpha / 8
-    //         painter.pen.color = color
-
-    //         if (this.selected) {
-    //             painter.pen.lineWidth = painter.toPx(this.lineWidth * 2);
-    //             painter.shadow.shadowBlur = 10;
-    //             painter.shadow.shadowColor = new SColor(`#00000033`);
-    //             painter.shadow.shadowOffsetX = 5;
-    //             painter.shadow.shadowOffsetY = 5;
-    //         } else {
-    //             painter.pen.lineWidth = painter.toPx(this.lineWidth);
-    //             painter.shadow.shadowColor = SColor.Transparent
-    //         }
-    //         painter.drawPolyline(this.pointList)
-
-    //         painter.pen.color = new SColor('#ffffff80')
-    //         painter.drawPolyline(this.pointList)
-    //     } else {
-    //         super.onDraw(painter)
-    //     }
-    // }
-    /**
-     * Item绘制框架
-     *
-     * @param   painter       painter对象
-     * @param   rect          绘制区域
-     */
-    onPaint(painter, rect) {
-        super.onPaint(painter, rect);
-        if (this.maskFlag && this.status == SItemStatus.Normal) {
-            if (this.selected) {
-                painter.pen.lineWidth = painter.toPx(this.lineWidth * 2);
-            } else {
-                painter.pen.lineWidth = painter.toPx(this.lineWidth);
-            }
-            painter.pen.color = new SColor('#ffffff80')
-            painter.drawPolyline(this.pointList)
-        }
-    } // Function onPaint()
-}

+ 159 - 153
src/lib/items/TipelineItem.ts

@@ -1,161 +1,167 @@
-import { SPolylineItem, ItemOrder, SItemStatus } from '@saga-web/big/lib'
-import { SPainter, SColor, SRect } from '@saga-web/draw'
-import { SAnchorItem, SGraphItem } from '@saga-web/graph/lib'
-import { Relation } from '../types/Relation'
-import { SPoint } from '@saga-web/draw/lib'
-import { Point } from '@saga-web/big/lib/types/Point'
+import { SPolylineItem, ItemOrder, SItemStatus } from '@saga-web/big/lib';
+import { SPainter, SColor, SRect } from '@saga-web/draw';
+import { SAnchorItem, SGraphItem } from '@saga-web/graph/lib';
+import { Relation } from '../types/Relation';
+import { SPoint } from "@saga-web/draw/lib";
+import { Point } from "@saga-web/big/lib/types/Point";
 
 /**
  * 管道item
  *
  * */
 export class TipelineItem extends SPolylineItem {
-    /** 起始锚点  */
-    startAnchor: SAnchorItem | null = null
-    /** 结束锚点  */
-    endAnchor: SAnchorItem | null = null
-    /** 对应的图例ID  */
-    _graphElementId: string = ''
-    get graphElementId(): string {
-        return this._graphElementId
-    }
-    set graphElementId(v: string) {
-        this._graphElementId = v
-        if (this.data) {
-            this.data.GraphElementId = this._graphElementId
-        }
-    }
-    /** 关联节点1ID  */
-    _node1Id: string = ''
-    get node1Id(): string {
-        return this._node1Id
-    }
-    set node1Id(v: string) {
-        this._node1Id = v
-        if (this.data) {
-            this.data.Node1ID = this._node1Id
-        }
-    }
-    /** 关联节点2ID  */
-    _node2Id: string = ''
-    get node2Id(): string {
-        return this._node2Id
-    }
-    set node2Id(v: string) {
-        this._node2Id = v
-        if (this.data) {
-            this.data.Node2ID = this._node2Id
-        }
-    }
-    /** 关联锚点1ID  */
-    _anchor1ID: string = ''
-    get anchor1ID(): string {
-        return this._anchor1ID
-    }
-    set anchor1ID(v: string) {
-        this._anchor1ID = v
-        if (this.data) {
-            this.data.Anchor1ID = this._anchor1ID
-        }
-    }
-    /** 关联锚点2ID  */
-    _anchor2ID: string = ''
-    get anchor2ID(): string {
-        return this._anchor2ID
-    }
-    set anchor2ID(v: string) {
-        this._anchor2ID = v
-        if (this.data) {
-            this.data.Anchor2ID = this._anchor2ID
-        }
+  /** 起始锚点  */
+  startAnchor: SAnchorItem | null = null;
+  /** 结束锚点  */
+  endAnchor: SAnchorItem | null = null;
+  /** 对应的图例ID  */
+  _graphElementId: string = "";
+  get graphElementId(): string {
+    return this._graphElementId;
+  }
+  set graphElementId(v: string) {
+    this._graphElementId = v;
+    if (this.data) {
+      this.data.GraphElementId = this._graphElementId;
     }
-
-    /** 是否蒙版遮罩  */
-    _maskFlag: boolean = false
-    get maskFlag(): boolean {
-        return this._maskFlag
-    }
-    set maskFlag(v: boolean) {
-        if (v === this._maskFlag) {
-            return
-        }
-        this._maskFlag = v
-        this.update()
+  }
+  /** 关联节点1ID  */
+  _node1Id: string = "";
+  get node1Id(): string {
+    return this._node1Id;
+  }
+  set node1Id(v: string) {
+    this._node1Id = v;
+    if (this.data) {
+      this.data.Node1ID = this._node1Id;
+    }
+  }
+  /** 关联节点2ID  */
+  _node2Id: string = "";
+  get node2Id(): string {
+    return this._node2Id;
+  }
+  set node2Id(v: string) {
+    this._node2Id = v;
+    if (this.data) {
+      this.data.Node2ID = this._node2Id;
+    }
+  }
+  /** 关联锚点1ID  */
+  _anchor1ID: string = "";
+  get anchor1ID(): string {
+    return this._anchor1ID;
+  }
+  set anchor1ID(v: string) {
+    this._anchor1ID = v;
+    if (this.data) {
+      this.data.Anchor1ID = this._anchor1ID;
+    }
+  }
+  /** 关联锚点2ID  */
+  _anchor2ID: string = "";
+  get anchor2ID(): string {
+    return this._anchor2ID;
+  }
+  set anchor2ID(v: string) {
+    this._anchor2ID = v;
+    if (this.data) {
+      this.data.Anchor2ID = this._anchor2ID;
     }
+  }
 
-    /** 数据存储  */
-    data: Relation | null = null
-    /** 接收事件作出修改  */
-    changePos() {
-        if (this.startAnchor) {
-            // 判断删除equip后,不移动
-            if (this.startAnchor.parent && this.startAnchor.parent.parent) {
-                this.pointList[0] = this.startAnchor.mapToScene(0, 0)
-            }
-        }
-        if (this.endAnchor) {
-            // 删除equip后
-            if (this.endAnchor.parent && this.endAnchor.parent.parent) {
-                this.pointList[this.pointList.length - 1] = this.endAnchor.mapToScene(0, 0)
-            }
-        }
+  /** 是否蒙版遮罩  */
+  _maskFlag: boolean = false;
+  get maskFlag(): boolean {
+    return this._maskFlag;
+  }
+  set maskFlag(v: boolean) {
+    if (v === this._maskFlag) {
+      return
     }
+    this._maskFlag = v;
+    this.update()
+  }
 
-    constructor(parent: SGraphItem | null, data: Relation) {
-        super(parent, [])
-        this.zOrder = ItemOrder.polylineOrder
-        this.pointList = data.PointList.map((item) => {
-            return new SPoint(item.X, item.Y)
-        })
-        this.data = data
-        this.name = data.Name
-        this.id = data.ID
-        if (data.GraphElementId) {
-            this._graphElementId = data.GraphElementId
-        }
-        if (data.Node1ID) {
-            this._node1Id = data.Node1ID
-        }
-        if (data.Node2ID) {
-            this._node2Id = data.Node2ID
-        }
-        if (data.Anchor1ID) {
-            this._anchor1ID = data.Anchor1ID
-        }
-        if (data.Anchor2ID) {
-            this._anchor2ID = data.Anchor2ID
-        }
-        if (data.Properties && data.Properties.Color) {
-            this.strokeColor = new SColor(data.Properties.Color)
-        }
-        // if(data.Properties && data.Properties.LineDash){
-        //   this.LineDash = data.Properties.LineDash
-        // }
-        if (data.Properties && data.Properties.LineWidth) {
-            this.lineWidth = data.Properties.LineWidth
-        }
+  /** 数据存储  */
+  data: Relation | null = null;
+  /** 接收事件作出修改  */
+  changePos() {
+    if (this.startAnchor) {
+      // 判断删除equip后,不移动
+      if (this.startAnchor.parent && this.startAnchor.parent.parent) {
+        this.pointList[0] = this.startAnchor.mapToScene(0, 0);
+      }
     }
+    if (this.endAnchor) {
+      // 删除equip后
+      if (this.endAnchor.parent && this.endAnchor.parent.parent) {
+        this.pointList[
+          this.pointList.length - 1
+        ] = this.endAnchor.mapToScene(0, 0);
+      }
+    }
+  }
 
-    /** 获取data数据  */
-    toData(): Relation | null {
-        let pointList: Point[] = this.pointList.map((item) => {
-            return {
-                X: item.x,
-                Y: item.y,
-            }
-        })
+  constructor(parent: SGraphItem | null, data: Relation) {
+    super(parent, []);
+    this.zOrder = ItemOrder.polylineOrder;
+    this.pointList = data.PointList.map(item => {
+      return new SPoint(item.X, item.Y);
+    });
+    this.data = data;
+    this.name = data.Name;
+    this.id = data.ID;
+    if (data.GraphElementId) {
+      this._graphElementId = data.GraphElementId
+    }
+    if (data.Node1ID) {
+      this._node1Id = data.Node1ID
+    }
+    if (data.Node2ID) {
+      this._node2Id = data.Node2ID
+    }
+    if (data.Anchor1ID) {
+      this._anchor1ID = data.Anchor1ID
+    }
+    if (data.Anchor2ID) {
+      this._anchor2ID = data.Anchor2ID
+    }
+    if (data.Properties.Zorder) {
+      this.zOrder = data.Properties.Zorder;
+    }
+    if (data.Properties && data.Properties.Color) {
+      this.strokeColor = new SColor(data.Properties.Color);
+    }
+    // if(data.Properties && data.Properties.LineDash){
+    //   this.LineDash = data.Properties.LineDash
+    // }
+    if (data.Properties && data.Properties.LineWidth) {
+      this.lineWidth = data.Properties.LineWidth;
+    }
+  }
 
-        if (this.data) {
-            this.data.Name = this.name;
-            this.data.PointList = pointList
-            this.data.Properties.LineWidth = this.lineWidth
-            // this.data.Properties.LineDash = this.LineDash;
-            this.data.Properties.Color = this.strokeColor.value
-        }
+  /** 获取data数据  */
+  toData(): Relation | null {
+    let pointList: Point[] = this.pointList.map(item => {
+      return {
+        X: item.x,
+        Y: item.y
+      }
+    });
 
-        return this.data
+    if (this.data) {
+      this.data.Name = this.name;
+      this.data.PointList = pointList;
+      this.data.Properties.Zorder = this.zOrder;
+      this.data.Properties.LineWidth = this.lineWidth;
+      // this.data.Properties.LineDash = this.LineDash;
+      this.data.Properties.Color = this.strokeColor.value;
     }
 
+    return this.data
+  }
+
     // onDraw(painter: SPainter) {
     //     if (this.maskFlag && this.status == SItemStatus.Normal) {
     //         let color = new SColor(this.strokeColor)
@@ -187,15 +193,15 @@ export class TipelineItem extends SPolylineItem {
      * @param   rect          绘制区域
      */
     onPaint(painter: SPainter, rect: SRect): void {
-        super.onPaint(painter, rect);
-        if (this.maskFlag && this.status == SItemStatus.Normal) {
-            if (this.selected) {
-                painter.pen.lineWidth = painter.toPx(this.lineWidth * 2);
-            } else {
-                painter.pen.lineWidth = painter.toPx(this.lineWidth);
-            }
-            painter.pen.color = new SColor('#ffffff80')
-            painter.drawPolyline(this.pointList)
-        }
-    } // Function onPaint()
-}
+      super.onPaint(painter, rect);
+      if (this.maskFlag && this.status == SItemStatus.Normal) {
+          if (this.selected) {
+              painter.pen.lineWidth = painter.toPx(this.lineWidth * 2);
+          } else {
+              painter.pen.lineWidth = painter.toPx(this.lineWidth);
+          }
+          painter.pen.color = new SColor('#ffffff80')
+          painter.drawPolyline(this.pointList)
+      }
+  } // Function onPaint()
+}

+ 0 - 1
src/main.js

@@ -58,7 +58,6 @@ Vue.use(cookies)
 import Pui from 'meri-design'
 import 'meri-design/dist/index.css'
 Vue.use(Pui)
-
 new Vue({
     router,
     store,

+ 14 - 2
src/router/index.js

@@ -88,8 +88,17 @@ const router = new VueRouter({
 })
 const ignore = ['/404']
 router.beforeEach(async (to, from, next) => {
+    // 取出刷新时的 ssoToken, 路由拦截时app.vue 生命周期还没有执行,store中还没有数据,
+    let beforeunload = localStorage.getItem('beforeunload'),
+        __token = null
+    beforeunload && (__token = JSON.parse(beforeunload).ssoToken)
     if (!ignore.includes(to.path)) {
-        const token = store.getters['ssoToken'] || query().token
+        let token = __token || store.getters['ssoToken'] || query().token
+        // 开发环境模式token有模式值
+        if (process.env.NODE_ENV == 'aly' || process.env.NODE_ENV == 'serve') {
+            token = 'admin:chuyushu'
+        }
+        // console.log('token====', token)
         if (token) {
             store.commit('SETSSOTOKEN', token)
             if (to.path == '/') {
@@ -114,6 +123,9 @@ router.beforeEach(async (to, from, next) => {
             }
             store.commit('SETLASTROUTER', lastRoute)
             let ssoServer = 'http://oauth.wanda-dev.cn'
+            if (process.env.NODE_ENV == 'wanda_build') {
+                ssoServer = 'http://oauth.wanda.cn'
+            }
             let systemcode = 'CAD156',
                 signal = new Date().getTime(),
                 version = '1.0.0'
@@ -125,7 +137,7 @@ router.beforeEach(async (to, from, next) => {
     }
 })
 // 跳入路由后要对发送pvuv
-router.afterEach((to, from) => {
+router.afterEach((to) => {
     let data = {
         type: 'router',
         target: to.name,

+ 52 - 35
src/store/index.js

@@ -14,13 +14,13 @@ import router from '../router'
 Vue.use(Vuex)
 export default new Vuex.Store({
     state: {
-        // ssoToken: 'admin:lengqiang',
-        ssoToken: 'admin:chuyushu',
-        // ssoToken: null,
+        // ssoToken: 'admin:chuyushu',
+        // ssoToken: '',
+        ssoToken: null,
         plazaName: '',
         isPreview: false,
         lastRoute: '',
-        isrequestAuth: true, // 是否请求登录校验接口
+        isrequestAuth: null, // 是否请求登录校验接口
         permissions: [], //权限信息 "GLSMS_VIEW":"说明书查看"、"GLSMS_SYMBOL_MANAGE": "图例库管理"、 "GLSMS_PLANARGRAPH_MANAGE":"平面图维护"
         plazas: [], //项目列表
         userInfo: {
@@ -38,6 +38,7 @@ export default new Vuex.Store({
         scpzTable: [], //土建装饰图例展示
         legendTable: [], //除土建装饰图例展示
         remarksText: '', //备注
+        defaultComment: '',
         bunkObj: {}, // 铺位名称
         currentFloor: {}, //当前选中的楼层信息
         accessLevel: -1, // 权限级别
@@ -61,6 +62,7 @@ export default new Vuex.Store({
         scpzTable: (state) => state.scpzTable,
         legendTable: (state) => state.legendTable,
         remarksText: (state) => state.remarksText,
+        defaultComment: (state) => state.defaultComment,
         bunkObj: (state) => state.bunkObj,
         showView: (state) => state.showView,
         isGetmap: (state) => state.isGetmap,
@@ -125,6 +127,9 @@ export default new Vuex.Store({
         SETREMARKSTEXT(state, data) {
             state.remarksText = data
         },
+        SETDEFAULTCOMMENT(state, data) {
+            state.defaultComment = data
+        },
         SETBUNKOBJ(state, data) {
             state.bunkObj = data
         },
@@ -158,42 +163,54 @@ export default new Vuex.Store({
             commit
         }, palyload) {
             await login({
-                returnTree: true
-            }).then((res) => {
-                // 获取用户当前权限
-                if (res.result === 'success') {
-                    commit('STOREACCESSLEVEL', res.level)
-                    let level = res.level
-                    if (window.opener) {
-                        let data = window.opener.__fromGroupPage
-                        level = data.level
-                        commit('SETPLAZENAME', data.plazaName)
-                        localStorage.setItem('PLAZAID', data.plazaId)
-                        commit('STOREPLAZAID', data.plazaId)
-                        router.push({
-                            path: './home/homepage'
-                        })
-                    } else {
-                        if (level === 0) {
-                            if (res.treeData[0].ccode) {
-                                localStorage.setItem('PLAZAID', res.treeData[0].ccode)
-                                commit('STOREPLAZAID', res.treeData[0].ccode)
-                                commit('SETPLAZENAME', res.treeData[0].cname)
-                            }
+                    returnTree: true,
+                })
+                .then((res) => {
+                    // 获取用户当前权限
+                    console.log(res.result)
+                    if (res.result === 'success') {
+                        commit('STOREACCESSLEVEL', res.level)
+                        let level = res.level
+                        if (window.opener) {
+                            let data = window.opener.__fromGroupPage
+                            level = data.level
+                            commit('SETPLAZENAME', data.plazaName)
+                            localStorage.setItem('PLAZAID', data.plazaId)
+                            commit('STOREPLAZAID', data.plazaId)
                             router.push({
-                                path: './home/homepage'
+                                path: './home/homepage',
                             })
                         } else {
-                            router.push({
-                                path: './group'
-                            })
+                            if (level === 0) {
+                                if (res.treeData[0].ccode) {
+                                    localStorage.setItem('PLAZAID', res.treeData[0].ccode)
+                                    commit('STOREPLAZAID', res.treeData[0].ccode)
+                                    commit('SETPLAZENAME', res.treeData[0].cname)
+                                }
+                                router.push({
+                                    path: './home/homepage',
+                                })
+                            } else {
+                                router.push({
+                                    path: './group',
+                                })
+                            }
                         }
+                        // commit('SETISREQUESTtAUTH', false)
+                        // commit('SETISREQUESTtAUTH', false)
+                    } else {
+                        router.push({
+                            path: '/404',
+                        })
+                        commit('SETISREQUESTtAUTH', res)
                     }
-                    // commit('SETISREQUESTtAUTH', false)
-
-                    // commit('SETISREQUESTtAUTH', false)
-                }
-            })
+                })
+                .catch((err) => {
+                    router.push({
+                        path: '/404',
+                    })
+                    commit('SETISREQUESTtAUTH', err)
+                })
         },
         getFloors(context) {
             queryFloor({

+ 5 - 2
src/views/equipment/eqDialog.vue

@@ -212,7 +212,6 @@ export default {
             }
             queryPic({ getParams }).then(res => {
                 this.rotationImg = res.data || []
-                this.rotationImg[0].url
                 let img = new Image()
                 img.src = this.rotationImg[0].url
                 const vm = this
@@ -287,7 +286,7 @@ export default {
         padding-left: 24px;
         color: #000;
         font-weight: bold;
-        color: #646a73;
+        color: #fff;
         font-weight: normal;
     }
 }
@@ -302,6 +301,10 @@ export default {
 .dialog-container {
     .el-dialog__header {
         padding: 16px 24px;
+        background: linear-gradient(180deg, rgba(54, 156, 247, 1) 0%, rgba(2, 91, 170, 1) 100%);
+    }
+    .el-dialog__headerbtn .el-dialog__close {
+        color: #fff;
     }
     .el-dialog__title {
         font-size: 16px;

+ 1 - 1
src/views/equipment/fenbuPic.vue

@@ -4,7 +4,7 @@
         <div class='legend-boxs'>
             <Legend :innerLeng='1' :floors='floors' type='0' :categoryId='`${typecode=="FBT1"?"FZQZL":"XFBFYCFL"}`'></Legend>
         </div>
-        <floor-list v-if='floors.length>0' :floorsArr='floors' @emitFloor='emitFloor' :id='"floor"'></floor-list>
+        <floor-list v-if='floors.length>0' :changeDataFlag='false' :floorsArr='floors' @emitFloor='emitFloor' :id='"floor"'></floor-list>
         <div v-show='floors.length>0' class='canvas-box'>
             <floorMap ref='floorMap' :modalHeight='modalHeight' :loadName='""' :categoryId='`${typecode=="FBT1"?"FZQZL":"XFBFYCFL"}`' :type='"floor"'></floorMap>
         </div>

+ 1 - 1
src/views/equipment/index.vue

@@ -184,7 +184,7 @@ export default {
          */
         closeModal(flag) {
             this.ShowDialog = false
-            this.keyFL = 'keyFL' + new Date().getTime()
+            // this.keyFL = 'keyFL' + new Date().getTime()
             this.keyLd = 'keyLd' + new Date().getTime()
         },
         //附加数据图片查看 showView为3展示状态

+ 2 - 2
src/views/equipment/table/djspTable.vue

@@ -5,7 +5,7 @@
             <el-input
                 placeholder='搜索电井间'
                 size='small'
-                @change='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='welldes'
                 clearable
@@ -14,7 +14,7 @@
             <el-input
                 placeholder='搜索商铺编号'
                 size='small'
-                @change='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='shopsnum'
                 clearable

+ 14 - 6
src/views/equipment/table/eqDetaileDialog.vue

@@ -11,7 +11,7 @@
                 prefix-icon='el-icon-search'
                 v-model='sbjc'
                 clearable
-                @blur='queryTableList'
+                @keyup.enter.native='queryTableList'
             ></el-input>
             <Select v-model='sbglgs' width='180' tipPlace='top' caption='管理归属:' size='small' :selectdata='sbglgsOption' @change='queryTableList'></Select>
             <Select
@@ -31,7 +31,7 @@
                 clearable
                 prefix-icon='el-icon-search'
                 v-model='brand'
-                @blur='queryTableList'
+                @keyup.enter.native='queryTableList'
             ></el-input>
             <Select
                 width='150'
@@ -43,7 +43,15 @@
                 :selectdata='floorSelect'
                 @change='queryTableList'
             ></Select>
-            <el-input placeholder='搜索安装位置' clearable style='width:180px;margin-right:12px' size='small' prefix-icon='el-icon-search' v-model='wzjc'></el-input>
+            <el-input
+                placeholder='搜索安装位置'
+                @keyup.enter.native='queryTableList'
+                clearable
+                style='width:180px;margin-right:12px'
+                size='small'
+                prefix-icon='el-icon-search'
+                v-model='wzjc'
+            ></el-input>
             <!-- 多余的筛选 -->
             <input-dialog :type='1' @confirm='confirm'></input-dialog>
         </div>
@@ -52,8 +60,8 @@
             <el-table-column prop='sbjc' label='设备名称' show-overflow-tooltip resizable width='230'>
                 <template slot-scope='{row}'>{{row.sbjc || '--'}}</template>
             </el-table-column>
-            <el-table-column prop='sbjbm' label='设备编号' show-overflow-tooltip resizable width='80'>
-                <template slot-scope='{row}'>{{row.sbjbm || '--'}}</template>
+            <el-table-column prop='assetnum' label='设备编号' show-overflow-tooltip resizable width='80'>
+                <template slot-scope='{row}'>{{row.assetnum || '--'}}</template>
             </el-table-column>
             <el-table-column prop='sl' label='数量' width='80'>
                 <template slot-scope='{row}'>{{row.sl>=0?row.sl:'--'}}</template>
@@ -83,7 +91,7 @@
                 <template slot-scope='{row}'>{{row.fws || '--'}}</template>
             </el-table-column>
             <el-table-column prop label='相关资料' show-overflow-tooltip resizable width='100'>
-                <template slot-scope='{row}'>{{ '--'}}</template>
+                <template slot-scope='{row}'>{{'--'}}</template>
             </el-table-column>
         </el-table>
         <div class='foot'>

+ 3 - 3
src/views/equipment/table/eqListTable.vue

@@ -5,7 +5,7 @@
             <el-input
                 placeholder='搜索设备名称'
                 size='small'
-                @blur='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='sbjc'
                 clearable
@@ -14,7 +14,7 @@
             <el-input
                 placeholder='搜索品牌型号'
                 size='small'
-                @blur='getList'
+                @keyup.enter.native='getList'
                 clearable
                 prefix-icon='el-icon-search'
                 v-model='keyword'
@@ -34,7 +34,7 @@
                 placeholder='搜索生产厂商'
                 clearable
                 size='small'
-                @blur='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='manufacturer'
                 style='width:192px;'

+ 1 - 1
src/views/equipment/table/lookPageTable.vue

@@ -5,7 +5,7 @@
             <el-input
                 placeholder='搜索文件名'
                 size='small'
-                @change='getList'
+                @keyup.enter.native='getList'
                 clearable
                 prefix-icon='el-icon-search'
                 v-model='keyword'

+ 1 - 1
src/views/equipment/table/otherTable.vue

@@ -9,7 +9,7 @@
                 prefix-icon='el-icon-search'
                 v-model='keyword'
                 clearable
-                @blur='getList'
+                @keyup.enter.native='getList'
             ></el-input>
 
             <div class='picker-box'>

+ 3 - 3
src/views/equipment/table/standTable.vue

@@ -5,7 +5,7 @@
             <el-input
                 placeholder='搜索设备名称'
                 size='small'
-                @blur='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='sbjc'
                 clearable
@@ -15,7 +15,7 @@
                 placeholder='搜索品牌型号'
                 size='small'
                 clearable
-                @blur='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='keyword'
                 style='width:192px;margin-right:12px'
@@ -34,7 +34,7 @@
                 clearable
                 placeholder='搜索生产厂商'
                 size='small'
-                @blur='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='manufacturer'
                 style='width:192px;'

+ 20 - 10
src/views/equipment/table/tjTable.vue

@@ -6,27 +6,37 @@
                 clearable
                 placeholder='搜索类别'
                 size='small'
-                @blur='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='lb'
                 style='width:192px;margin-right:12px'
             ></el-input>
-            <el-input clearable placeholder='搜索品牌' size='small' @blur='getList' prefix-icon='el-icon-search' v-model='brand' style='width:192px'></el-input>
+            <el-input
+                clearable
+                placeholder='搜索品牌'
+                size='small'
+                @keyup.enter.native='getList'
+                prefix-icon='el-icon-search'
+                v-model='brand'
+                style='width:192px'
+            ></el-input>
         </div>
         <el-table :data='tableData' style='width: 100%' :border='true'>
-            <el-table-column type='index' label='序号' width='60' :index="indexMethod"></el-table-column>
-            <el-table-column prop='category' label='类别'  show-overflow-tooltip resizable>
+            <el-table-column type='index' label='序号' width='60' :index='indexMethod'></el-table-column>
+            <el-table-column prop='category' label='类别' show-overflow-tooltip resizable>
                 <template slot-scope='{row}'>{{row.category || '--'}}</template>
             </el-table-column>
-            <el-table-column prop='sl' label='数量' >
-                <template slot-scope='{row}'>{{row.sl>=0?row.sl:'--'}}</template>
+            <el-table-column prop='sl' label='数量' align='center' width='130'>
+                <template slot-scope='{row}'>
+                    <div style='text-align:right'>{{row.sl>=0?row.sl:'--'}}</div>
+                </template>
+            </el-table-column>
+            <el-table-column prop='unit' label='单位' width='130' align='center'>
+                <template slot-scope='{row}'>{{row.unit || '--'}}</template>
             </el-table-column>
             <el-table-column prop='brand' label='品牌'>
                 <template slot-scope='{row}'>{{row.brand || '--'}}</template>
             </el-table-column>
-            <el-table-column prop='unit' label='单位'>
-                <template slot-scope='{row}'>{{row.unit || '--'}}</template>
-            </el-table-column>
         </el-table>
         <div class='foot'>
             <el-pagination
@@ -63,7 +73,7 @@ export default {
     methods: {
         //序号的方法
         indexMethod(index) {
-            return (this.currentPage - 1) * this.size + index +1
+            return (this.currentPage - 1) * this.size + index + 1
         },
         pageChanged(page, size) {
             this.currentPage = page

+ 4 - 4
src/views/equipment/table/wbTable.vue

@@ -5,7 +5,7 @@
             <el-input
                 placeholder='搜索设备名称编号'
                 size='small'
-                @blur='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='sbjc'
                 clearable
@@ -14,7 +14,7 @@
             <el-input
                 placeholder='搜索重要事项记录描述'
                 size='small'
-                @blur='getList'
+                @keyup.enter.native='getList'
                 clearable
                 prefix-icon='el-icon-search'
                 v-model='matters'
@@ -96,7 +96,7 @@
             <el-table-column prop='brand' label='现场照片' width='70'>
                 <template slot-scope='{row}'>
                     <div v-if='row.glsmsImage' style='cursor:pointer;color: #0091ff;' @click='clickPic(row.glsmsImage)'>{{row.glsmsImage.length+'张'}}</div>
-                    <div v-else>{{'---'}}</div>
+                    <div v-else>{{'--'}}</div>
                 </template>
             </el-table-column>
             <el-table-column prop='reportdate' label='填报时间' width='140'>
@@ -107,7 +107,7 @@
             </el-table-column>
             <el-table-column prop='wonum' label='任务编号' show-overflow-tooltip resizable width='90'>
                 <template slot-scope='{row}'>
-                    <div @click='ycgd(row)'>{{row.wb_gzglid || '--'}}</div>
+                    <div @click='ycgd(row)' style='cursor:pointer;color: #0091ff;'>{{row.wb_gzglid || '--'}}</div>
                 </template>
             </el-table-column>
         </el-table>

+ 5 - 3
src/views/equipment/table/wxTable.vue

@@ -5,7 +5,7 @@
             <el-input
                 placeholder='搜索设备名称编号'
                 size='small'
-                @blur='getList'
+                @keyup.enter.native='getList'
                 clearable
                 prefix-icon='el-icon-search'
                 v-model='sbjc'
@@ -15,7 +15,7 @@
                 placeholder='搜索重要事项记录描述'
                 size='small'
                 clearable
-                @blur='getList'
+                @keyup.enter.native='getList'
                 prefix-icon='el-icon-search'
                 v-model='matters'
                 style='width:192px;margin-right:12px'
@@ -110,7 +110,9 @@
                 <template slot-scope='{row}'>{{row.sjjssj?formatter(row.sjjssj): '--'}}</template>
             </el-table-column>
             <el-table-column prop='wonum' label='工单编号' show-overflow-tooltip resizable width='80'>
-                <template slot-scope='{row}'>{{row.wonum || '--'}}</template>
+                <template slot-scope='{row}'>
+                    <div style='cursor:pointer;color: #0091ff;'>{{row.wonum || '--'}}</div>
+                </template>
             </el-table-column>
         </el-table>
         <div class='foot'>

+ 10 - 7
src/views/equipment/table/zwTable.vue

@@ -22,7 +22,15 @@
                 style='margin:0 12px'
                 @change='getList'
             ></Select>
-            <el-input placeholder='搜索实施方案说明' prefix-icon='el-icon-search' size='small' style='width:192px' v-model='ssfasm' clearable @blur='getList'></el-input>
+            <el-input
+                placeholder='搜索实施方案说明'
+                prefix-icon='el-icon-search'
+                size='small'
+                style='width:192px'
+                v-model='ssfasm'
+                clearable
+                @keyup.enter.native='getList'
+            ></el-input>
             <!-- 当前阶段 -->
             <Select
                 width='180'
@@ -71,12 +79,7 @@
                 <template slot-scope='{row}'>{{row.sl>=0?row.sl:'--'}}</template>
             </el-table-column>
             <el-table-column prop='ssfasm' label='实施方案说明' show-overflow-tooltip resizable min-width='320'>
-                <template slot-scope='{row}'>
-                    <a
-                        :href='`http://10.199.204.167:7001/maximo/ui/?event=loadapp&value=GCZXWXLINE&uniqueid=${row.ssfasm}`'
-                        target='_blank'
-                    >{{row.ssfasm || '--'}}</a>
-                </template>
+                <template slot-scope='{row}'>{{row.ssfasm || '--'}}</template>
             </el-table-column>
             <el-table-column prop='sxjd' label='当前阶段' show-overflow-tooltip resizable width='80'>
                 <template slot-scope='{row}'>{{row.sxjd || '--'}}</template>

+ 3 - 3
src/views/legendLibrary/index.vue

@@ -121,13 +121,13 @@
                 <el-table-column prop='Unit' label='单位' width='60'>
                     <template slot-scope='{row}'>{{row.Unit}}</template>
                 </el-table-column>
-                <el-table-column prop='position' label='对应广场说明书的位置' show-overflow-tooltip width='560'>
+                <el-table-column prop='position' label='对应广场说明书的位置' show-overflow-tooltip>
                     <template slot-scope='{row}'>
                         <span>{{ row.GraphCategorys.length?row.GraphCategorys.map(item => item.Name).join(' ,'):'' }}</span>
                     </template>
                 </el-table-column>
 
-                <el-table-column label='对应工程信息化中的专业/位置、设备分类' show-overflow-tooltip width='462'>
+                <el-table-column label='对应工程信息化中的专业/位置、设备分类' show-overflow-tooltip>
                     <template slot-scope='{row}'>
                         <span>{{row.InfoLocal.length?row.InfoLocal.map(item => item.name).join(' ,') :''}}</span>
                     </template>
@@ -138,7 +138,7 @@
                         </template>
                 </el-table-column>-->
 
-                <el-table-column prop='typeId' resizable label='铺位可视化typeid' width='364' show-overflow-tooltip>
+                <el-table-column prop='typeId' resizable label='铺位可视化typeid' show-overflow-tooltip>
                     <template slot-scope='{row}'>
                         <span>{{row.InfoTypes.length ?row.InfoTypes.map(item => `${item.Id }-${item.Name}`).join(' ,'):'' }}</span>
                     </template>

+ 1 - 1
src/views/legendRules/addList.vue

@@ -3,7 +3,7 @@
         <div>
             <el-input
                 size='small'
-                @change='queryAll'
+                @keyup.enter.native='queryAll'
                 prefix-icon='el-icon-search'
                 v-model='keyword'
                 style='width:192px;margin-right:12px;margin-top:20px;margin-bottom:12px'

+ 6 - 6
src/views/legendRules/index.vue

@@ -61,7 +61,7 @@
                     @tool-button-click='buttonClickHandle'
                 >
                     <img slot-scope='{col, row}' v-if='col.key==="Url"' class='img' :src='`/serve/topology-wanda/Picture/query/${row.Url}`' alt />
-                    <span slot-scope='{col}' v-else-if='col.key==="caozuo"' style='color:#0091FF'>删除</span>
+                    <!-- <span slot-scope='{col}' v-else-if='col.key==="caozuo"' style='color:#0091FF'>删除</span> -->
                 </Table>
             </div>
         </div>
@@ -99,12 +99,12 @@ export default {
                     title: '单位',
                     key: 'Unit',
                     show: true
-                },
-                {
-                    title: '操作',
-                    key: 'caozuo',
-                    show: true
                 }
+                // {
+                //     title: '操作',
+                //     key: 'caozuo',
+                //     show: true
+                // }
             ],
             // 操作按钮组 (非必填)
             toolBtns: [

+ 1 - 1
src/views/other/gcfz2.vue

@@ -13,7 +13,7 @@
                 :placeholder='"选择楼层"'
             ></Select>
             <el-input
-                @change='changelc'
+                @keyup.enter.native='changelc'
                 placeholder='搜索区域'
                 size='small'
                 style='width:200px;margin-right:12px;'

+ 66 - 12
src/views/other/zhsxOtherTable1.vue

@@ -27,7 +27,15 @@
                 :selectdata='department'
                 :placeholder='"请选择"'
             ></Select>
-            <el-input clearable placeholder='搜索记录事项' @change='getZhjl' size='small' prefix-icon='el-icon-search' v-model='ssjlsx' style='width:200px'></el-input>
+            <el-input
+                clearable
+                placeholder='搜索记录事项'
+                @keyup.enter.native='getZhjl'
+                size='small'
+                prefix-icon='el-icon-search'
+                v-model='ssjlsx'
+                style='width:200px'
+            ></el-input>
         </div>
         <el-table
             border
@@ -55,16 +63,8 @@
             </el-table-column>
             <el-table-column prop label='附件' width='80'>
                 <template slot-scope='{row}'>
-                    <el-popover placement='right' trigger='hover' v-if='row.glsmsZhsxfj&&row.glsmsZhsxfj.length>0'>
-                        <div>
-                            <p
-                                style='color: rgba(0, 145, 255, 1);cursor: pointer;'
-                                v-for='(item,index) in row.glsmsZhsxfj'
-                                :key='index'
-                            >{{item.description}}</p>
-                        </div>
-                        <div class='fileOpen' slot='reference'>{{row.glsmsZhsxfj.length}}</div>
-                    </el-popover>
+                    <div v-if='row.glsmsImage' style='cursor:pointer;color: #0091ff;' @click='clickPic(row.glsmsImage)'>{{row.glsmsImage.length+'张'}}</div>
+                    <!-- <div style='cursor:pointer;color: #0091ff;' @click='clickPic'>{{5+'张'}}</div> -->
                     <div v-else>{{'--'}}</div>
                 </template>
             </el-table-column>
@@ -79,6 +79,8 @@
                 @next-click='pageChanged'
                 @current-change='pageChanged'
             ></el-pagination>
+            <pic-large ref='picLargeOpen'></pic-large>
+            <!-- <pic-large v-if='imgUrl.length>0' :imgUrl='imgUrl' ref='picLargeOpen'></pic-large> -->
         </div>
     </div>
 </template>
@@ -101,11 +103,63 @@ export default {
             size: 10,
             department: [],
             ssjlsx: '',
-            isOpen: true
+            isOpen: true,
+            imgUrl: [],
+            imgUrl2: [],
+            imgUrls: [
+                {
+                    name: '供电系统原理图.png',
+                    url:
+                        'http://10.199.204.168:9080/doclinks/MANAGEINS/2020061921294136524467354%E4%BE%9B%E7%94%B5%E7%B3%BB%E7%BB%9F%E5%8E%9F%E7%90%86%E5%9B%BE.png'
+                },
+                {
+                    name: '供电系统原理图.pdf',
+                    url: 'http://10.199.204.168:9080/doclinks/MANAGEINS/2020061921260429024467352%E5%8C%BA%E4%BD%8D%E5%9B%BE.png'
+                },
+                {
+                    name: '供电系统原理图.html',
+                    url:
+                        'http://10.199.204.168:9080/doclinks/MANAGEINS/2020061921294136524467354%E4%BE%9B%E7%94%B5%E7%B3%BB%E7%BB%9F%E5%8E%9F%E7%90%86%E5%9B%BE.png'
+                },
+                {
+                    name: '供电系统原理图.png',
+                    url:
+                        'http://10.199.204.168:9080/doclinks/MANAGEINS/2020061921294136524467354%E4%BE%9B%E7%94%B5%E7%B3%BB%E7%BB%9F%E5%8E%9F%E7%90%86%E5%9B%BE.png'
+                },
+                {
+                    name: '供电系统原理图.png',
+                    url: 'http://gcgl.wanda.cn/%E7%BB%B4%E4%BF%AE%E5%B7%A5%E5%8D%95%E4%B8%80/WORKORDER_846049_2019-11-19T15-37-42-716.jpg'
+                }
+            ]
         }
     },
     components: { Select },
     methods: {
+        clickPic() {
+            if (this.imgUrls.length > 0) {
+                this.$refs.picLargeOpen.open(this.imgUrls)
+            }
+            /* this.imgUrl = []
+            this.imgUrl2 = []
+            var patternFileExtension = /\.([0-9a-z]+)(?:[\?#]|$)/i
+            if (this.imgUrls.length > 0) {
+                this.imgUrls.forEach(el => {
+                    let name = el.name.match(patternFileExtension)[1]
+                    let obj = {
+                        name: el.name,
+                        url: el.url,
+                        type: name
+                    }
+                    this.imgUrl.push(obj)
+                })
+            }
+            console.log(this.imgUrl)
+            // var fileExtension = '供电系统原理图.html'.match(patternFileExtension)
+            // console.log(fileExtension[1])
+            if (this.imgUrl.length > 0) {
+                this.$refs.picLargeOpen.open(this.imgUrl)
+            } */
+        },
         formatter(date) {
             return moment.unix(date / 1000).format('YYYY.MM.DD')
         },

+ 11 - 3
src/views/other/zhsxOtherTable2.vue

@@ -3,7 +3,7 @@
         <div class='tab-top'>
             <el-input
                 clearable
-                @change='dsfjc'
+                @keyup.enter.native='dsfjc'
                 placeholder='搜索任务名称'
                 size='small'
                 prefix-icon='el-icon-search'
@@ -36,14 +36,22 @@
             ></Select>-->
             <el-input
                 clearable
-                @change='dsfjc'
+                @keyup.enter.native='dsfjc'
                 placeholder='搜索部门'
                 size='small'
                 prefix-icon='el-icon-search'
                 v-model='bmdsf'
                 style='width:200px;margin-right:12px'
             ></el-input>
-            <el-input clearable @change='dsfjc' placeholder='搜索检测结论' size='small' prefix-icon='el-icon-search' v-model='jcjldsf' style='width:200px'></el-input>
+            <el-input
+                clearable
+                @keyup.enter.native='dsfjc'
+                placeholder='搜索检测结论'
+                size='small'
+                prefix-icon='el-icon-search'
+                v-model='jcjldsf'
+                style='width:200px'
+            ></el-input>
             <!-- <Select
                 @change='dsfjc'
                 width='200'

+ 19 - 2
src/views/overview/picModal.vue

@@ -5,7 +5,7 @@
                 src='https://ss0.bdstatic.com/94oJfD_bAAcT8t7mm9GUKT-xh_/timg?image&quality=100&size=b4000_4000&sec=1592807833&di=5adf17cda9f46c37696da5b1d0aec9dc&src=http://a3.att.hudong.com/14/75/01300000164186121366756803686.jpg'
                 alt
             />-->
-            <rotation :key='key' :type='1' v-if='rotationImg.length>0' :rotationImg='rotationImg' style='height:100%;width:100%'></rotation>
+            <rotation :size='sizePic' :key='key' :type='3' v-if='rotationImg.length>0' :rotationImg='rotationImg' style='height:100%;width:100%'></rotation>
             <span class='close' @click='close'>X</span>
         </el-dialog>
     </div>
@@ -18,7 +18,9 @@ export default {
             dialogVisible: false,
             mode: 'top',
             rotationImg: [],
-            key: 1
+            key: 1,
+            sizePic: '',
+            imgInfo: {}
         }
     },
     methods: {
@@ -26,6 +28,21 @@ export default {
             this.key++
             this.dialogVisible = true
             this.rotationImg = params
+            if (this.rotationImg.length > 0) {
+                let img = new Image()
+                img.src = this.rotationImg[0].url
+                const vm = this
+                img.onload = function() {
+                    vm.$set(vm.imgInfo, 'width', img.width)
+                    vm.$set(vm.imgInfo, 'height', img.height)
+                    if (vm.imgInfo.width > vm.imgInfo.height) {
+                        vm.sizePic = 'width'
+                    } else {
+                        vm.sizePic = 'height'
+                    }
+                    console.log(vm.sizePic)
+                }
+            }
         },
         close() {
             this.dialogVisible = false

+ 4 - 4
src/views/room/detail.vue

@@ -4,7 +4,7 @@
         <div class='gdqd-dialog-top'>
             <el-input
                 clearable
-                @change='queryDetail'
+                @keyup.enter.native='queryDetail'
                 placeholder='搜索设备名称编号'
                 style='width:196px;margin-right:12px'
                 size='small'
@@ -35,7 +35,7 @@
             ></Select>
             <el-input
                 clearable
-                @change='queryDetail'
+                @keyup.enter.native='queryDetail'
                 placeholder='搜索品牌型号'
                 style='width:196px;margin-right:12px'
                 size='small'
@@ -114,8 +114,8 @@
             <el-table-column prop='sbjc' label='设备名称' min-width='150' :show-overflow-tooltip='true' resizable>
                 <template slot-scope='{row}'>{{row.sbjc||'--'}}</template>
             </el-table-column>
-            <el-table-column prop='sbbh' label='设备编号' :show-overflow-tooltip='true'>
-                <template slot-scope='{row}'>{{row.sbbh||'--'}}</template>
+            <el-table-column prop='assetnum' label='设备编号' :show-overflow-tooltip='true'>
+                <template slot-scope='{row}'>{{row.assetnum||'--'}}</template>
             </el-table-column>
             <el-table-column prop='sl' label='数量' width='70' :show-overflow-tooltip='true'>
                 <template slot-scope='{row}'>{{row.sl||'--'}}</template>

+ 53 - 40
src/views/room/index.vue

@@ -35,7 +35,7 @@
                             ></Select>
                             <el-input
                                 clearable
-                                @change='Index1'
+                                @keyup.enter.native='Index1'
                                 v-model='ctbhInput'
                                 placeholder='搜索抽屉编号'
                                 size='small'
@@ -44,7 +44,7 @@
                             ></el-input>
                             <el-input
                                 clearable
-                                @change='Index1'
+                                @keyup.enter.native='Index1'
                                 v-model='cxggInput'
                                 placeholder='搜索出线规格'
                                 size='small'
@@ -53,7 +53,7 @@
                             ></el-input>
                             <el-input
                                 clearable
-                                @change='Index1'
+                                @keyup.enter.native='Index1'
                                 v-model='djbhInput'
                                 placeholder='搜索电井编号'
                                 size='small'
@@ -62,7 +62,7 @@
                             ></el-input>
                             <el-input
                                 clearable
-                                @change='Index1'
+                                @keyup.enter.native='Index1'
                                 v-model='kzhlInput'
                                 placeholder='搜索控制回路'
                                 size='small'
@@ -88,12 +88,12 @@
                                 size='small'
                                 prefix-icon='el-icon-search'
                                 v-model='sbjcInput'
-                                @change='Index2'
+                                @keyup.enter.native='Index2'
                                 style='width:200px;margin-right:12px'
                             ></el-input>
                             <el-input
                                 clearable
-                                @change='Index2'
+                                @keyup.enter.native='Index2'
                                 placeholder='搜索品牌、型号'
                                 size='small'
                                 prefix-icon='el-icon-search'
@@ -112,7 +112,7 @@
                             ></Select>-->
                             <el-input
                                 clearable
-                                @change='Index2'
+                                @keyup.enter.native='Index2'
                                 placeholder='搜索生产厂商'
                                 size='small'
                                 prefix-icon='el-icon-search'
@@ -134,7 +134,7 @@
                         <div class='compute-center'>
                             <el-input
                                 clearable
-                                @change='Index3'
+                                @keyup.enter.native='Index3'
                                 placeholder='搜索设备名称、编号'
                                 size='small'
                                 prefix-icon='el-icon-search'
@@ -143,7 +143,7 @@
                             ></el-input>
                             <el-input
                                 clearable
-                                @change='Index3'
+                                @keyup.enter.native='Index3'
                                 placeholder='搜索重要事项记录、描述'
                                 size='small'
                                 prefix-icon='el-icon-search'
@@ -162,7 +162,7 @@
                             ></Select>
                             <el-input
                                 clearable
-                                @change='Index3'
+                                @keyup.enter.native='Index3'
                                 placeholder='搜索工单编号'
                                 size='small'
                                 prefix-icon='el-icon-search'
@@ -252,7 +252,7 @@
                     <el-tab-pane label='维保记录' name='5'>
                         <div class='compute-center'>
                             <el-input
-                                @change='Index4'
+                                @keyup.enter.native='Index4'
                                 clearable
                                 placeholder='搜索设备名称、编号'
                                 size='small'
@@ -261,7 +261,7 @@
                                 style='margin-right:12px;width:220px;'
                             ></el-input>
                             <el-input
-                                @change='Index4'
+                                @keyup.enter.native='Index4'
                                 clearable
                                 placeholder='搜索核心维保事项记录描述'
                                 size='small'
@@ -270,7 +270,7 @@
                                 style='margin-right:12px;width:220px;'
                             ></el-input>
                             <el-input
-                                @change='Index4'
+                                @keyup.enter.native='Index4'
                                 clearable
                                 placeholder='搜索任务编号'
                                 size='small'
@@ -877,30 +877,8 @@ export default {
 </script>
 <style lang="less" scoped>
 .compute-box {
-    /deep/ .el-dialog {
-        // padding: 16px 20px 20px;
-        overflow: hidden;
-        .el-dialog__header {
-            padding: 0;
-            font-size: 16px;
-            font-family: PingFangSC-Medium, PingFang SC;
-            font-weight: 500;
-            color: rgba(0, 0, 0, 0.85);
-            height: 60px;
-            line-height: 60px;
-            background: #f1f2f2;
-            padding-left: 20px;
-            // padding-bottom: 16px;
-        }
-        .el-dialog__headerbtn {
-            top: 0;
-        }
-        .el-dialog__body {
-            padding: 0 24px;
-            .is-active {
-                background: rgba(2, 91, 170, 0.15);
-            }
-        }
+    /deep/ .el-dialog__title {
+        color: #fff;
     }
     .compute-zf {
         width: 15px;
@@ -910,14 +888,15 @@ export default {
         background-size: 100% 100%;
         position: absolute;
         right: 74px;
-        top: 25px;
+        top: 24px;
         cursor: pointer;
         &::after {
             content: '';
             position: absolute;
+            top: -2px;
             right: -16px;
             width: 1px;
-            height: 16px;
+            height: 15px;
             background: rgba(216, 216, 216, 1);
         }
     }
@@ -995,17 +974,51 @@ export default {
 </style>
 <style lang="less">
 .compute-box {
+    .el-dialog__header {
+        padding: 16px 24px;
+        background: linear-gradient(180deg, rgba(54, 156, 247, 1) 0%, rgba(2, 91, 170, 1) 100%);
+    }
+    .el-dialog__headerbtn .el-dialog__close {
+        color: #fff;
+    }
     .compute-tab {
+        /deep/ .el-dialog {
+            // padding: 16px 20px 20px;
+            overflow: hidden;
+            .el-dialog__header {
+                padding: 0;
+                font-size: 16px;
+                font-family: PingFangSC-Medium, PingFang SC;
+                font-weight: 500;
+                // color: rgba(0, 0, 0, 0.85);
+                height: 60px;
+                line-height: 60px;
+                // background: #f1f2f2;
+                padding-left: 20px;
+                // padding-bottom: 16px;
+            }
+            .el-dialog__headerbtn {
+                top: 0;
+            }
+            .el-dialog__body {
+                padding: 0 24px;
+                .is-active {
+                    background: rgba(2, 91, 170, 0.15);
+                }
+            }
+        }
+
         .el-dialog__title {
             font-size: 16px;
             font-family: PingFangSC-Medium, PingFang SC;
             font-weight: 500;
-            color: rgba(0, 0, 0, 0.85);
+            color: #ffffff;
             line-height: 60px;
         }
         .el-dialog__body {
             padding: 0 24px;
         }
+
         .el-tabs--bottom .el-tabs__item.is-bottom:nth-child(2),
         .el-tabs--bottom .el-tabs__item.is-top:nth-child(2),
         .el-tabs--top .el-tabs__item.is-bottom:nth-child(2),

+ 1 - 1
src/views/room/room1.vue

@@ -1,6 +1,6 @@
 <template>
     <div class='jf-inner' style='width:100%;overflow:hidden'>
-        <rotation :rotationImg='tableImg' :type='3'></rotation>
+        <rotation size='width' :rotationImg='tableImg' :type='3'></rotation>
     </div>
 </template>
 <script>

+ 1 - 1
src/views/statistics/index.vue

@@ -1135,7 +1135,7 @@ export default {
                     border-radius: 90px;
                     font-size: 1.2rem;
                     text-align: center;
-                    line-height: 18px;
+                    line-height: 16px;
                     color: #ffffff;
                 }
             }

+ 15 - 14
src/views/table/index.vue

@@ -27,11 +27,11 @@
             <el-table-column prop='type' label='type' width='180'></el-table-column>
             <el-table-column prop='professional' label='professional'></el-table-column>
             <el-table-column prop='unit' label='unit'></el-table-column>
-            <el-table-column prop='seq0' label='seq0'></el-table-column>
+            <!-- <el-table-column prop='seq0' label='seq0'></el-table-column>
             <el-table-column prop='seq1' label='seq1'></el-table-column>
             <el-table-column prop='seq2' label='seq2'></el-table-column>
             <el-table-column prop='seq3' label='seq3'></el-table-column>
-            <el-table-column prop='seq4' label='seq4'></el-table-column>
+            <el-table-column prop='seq4' label='seq4'></el-table-column>-->
         </el-table>
     </div>
 </template>
@@ -182,18 +182,19 @@ export default {
     created() {
         console.log('--------------------- Table1 created')
         let tableData = [
-            { siteid: '1000423', type: '总包', professional: '土建', unit: '中建二局' },
-            { siteid: '1000423', type: '分包', professional: '电梯', unit: '上海三菱' },
-            { siteid: '1000423', type: '总包', professional: '消防电', unit: '中建二局2' },
-            { siteid: '1000423', type: '总包', professional: '机电', unit: '中建二局' },
-            { siteid: '1000423', type: '分包', professional: '精装', unit: '深圳嘉信' },
-            { siteid: '1000423', type: '总包', professional: '给排水', unit: '中建二局' },
-            { siteid: '1000423', type: '分包', professional: '幕墙', unit: '中建二局' },
-            { siteid: '1000423', type: '分包', professional: '精装', unit: '深圳艺涛' },
-            { siteid: '1000423', type: '分包', professional: '采光顶', unit: '上海通用' },
-            { siteid: '1000423', type: '分包', professional: '空调', unit: '武汉三重' },
-            { siteid: '1000423', type: '总包', professional: '弱电', unit: '中建二局' },
-            { siteid: '1000423', type: '分包', professional: '消防水', unit: '辽宁强盾' }
+            { siteid: '1000423', type: '总包', professional: '土建', unit: '中建二局 15625857784' },
+            { siteid: '1000423', type: '分包', professional: '电梯', unit: '上海三菱 15625857784' },
+            { siteid: '1000423', type: '总包', professional: '消防电', unit: '中建二局215625857784' },
+            { siteid: '1000423', type: '总包', professional: '机电', unit: '中建二局15625857784' },
+            { siteid: '1000423', type: '总包', professional: '机电', unit: '中建二局15625857784' },
+            { siteid: '1000423', type: '分包', professional: '精装', unit: '深圳嘉信15625857784' },
+            { siteid: '1000423', type: '总包', professional: '给排水', unit: '中建二局15625857784' },
+            { siteid: '1000423', type: '分包', professional: '幕墙', unit: '中建二局15625857784' },
+            { siteid: '1000423', type: '分包', professional: '精装', unit: '深圳艺涛15625857784' },
+            { siteid: '1000423', type: '分包', professional: '采光顶', unit: '上海通用15625857784' },
+            { siteid: '1000423', type: '分包', professional: '空调', unit: '武汉三重15625857784' },
+            { siteid: '1000423', type: '总包', professional: '弱电', unit: '中建二局15625857784' },
+            { siteid: '1000423', type: '分包', professional: '消防水', unit: '辽宁强盾15625857784' }
         ]
         this.parseTableData(tableData)
     },