system-clients 3.2.2-aodeToV4 → 3.2.3-aodeToV4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/.eslintrc.js +16 -16
  2. package/.gradle/buildOutputCleanup/cache.properties +2 -2
  3. package/SystemClient.iml +11 -11
  4. package/build/webpack.base.conf.js +78 -78
  5. package/build.gradle +6 -6
  6. package/gradle/wrapper/gradle-wrapper.properties +5 -5
  7. package/gradlew +185 -185
  8. package/gradlew.bat +89 -89
  9. package/index.html +21 -21
  10. package/package.json +102 -102
  11. package/src/LodopFuncs.js +123 -123
  12. package/src/components/Main.vue +515 -515
  13. package/src/components/Util.js +343 -343
  14. package/src/components/equipment/EquipmentManage.vue +65 -65
  15. package/src/components/equipment/PcAdd.vue +105 -105
  16. package/src/components/equipment/PcList.vue +120 -119
  17. package/src/components/equipment/PcManage.vue +60 -60
  18. package/src/components/equipment/PhoneAdd.vue +94 -94
  19. package/src/components/equipment/PhoneList.vue +102 -102
  20. package/src/components/equipment/PhoneManage.vue +60 -60
  21. package/src/components/equipment/PosAdd.vue +156 -156
  22. package/src/components/equipment/PosList.vue +164 -164
  23. package/src/components/equipment/PosManage.vue +68 -68
  24. package/src/components/materialManage/materialData.vue +44 -44
  25. package/src/components/materialManage/materialList.vue +255 -255
  26. package/src/components/parammanage/ParamManage.vue +42 -42
  27. package/src/components/parammanage/ParamPage.vue +314 -314
  28. package/src/components/parammanage/ParamPages.vue +222 -222
  29. package/src/components/parammanage/SinglePage.vue +235 -235
  30. package/src/components/parammanage/SinglePages.vue +167 -167
  31. package/src/components/server/AddChangeMsg.vue +66 -66
  32. package/src/components/server/ChangeDeclare.vue +45 -45
  33. package/src/components/server/LeftTree.vue +111 -111
  34. package/src/components/server/LoadData.vue +36 -36
  35. package/src/components/server/Login.vue +726 -726
  36. package/src/components/server/Menu.vue +188 -188
  37. package/src/components/server/ModifyPw.vue +112 -112
  38. package/src/components/server/NewResSelectGroup.vue +211 -211
  39. package/src/components/server/ResSelect.vue +153 -153
  40. package/src/components/server/ResSelectGroup.vue +159 -159
  41. package/src/components/server/RightTree.vue +343 -343
  42. package/src/components/server/RoleSelector.vue +90 -90
  43. package/src/components/server/TestResSelect.vue +58 -58
  44. package/src/components/server/TestResSelectGroup.vue +388 -388
  45. package/src/plugins/EncryptUtil.js +53 -53
  46. package/src/plugins/GetLoginInfoService.js +499 -499
  47. package/src/plugins/HeatGetLoginInfoService.js +491 -491
  48. package/src/plugins/validation.js +7 -7
  49. package/src/stores/AppData.js +38 -38
  50. package/src/stores/HeatAppData.js +38 -38
  51. package/src/styles/fonts/glyphicons-halflings-regular.svg +287 -287
  52. package/src/styles/less/.csscomb.json +304 -304
  53. package/src/styles/less/.csslintrc +19 -19
  54. package/src/styles/less/alerts.less +73 -73
  55. package/src/styles/less/aofeng/animate.min.css +10 -10
  56. package/src/styles/less/aofeng/expandcss.less +569 -569
  57. package/src/styles/less/aofeng/standard.less +2121 -2121
  58. package/src/styles/less/aofeng/themeOne/BinaryTemplate.less +686 -686
  59. package/src/styles/less/aofeng/themeOne/loginStyle.less +1586 -1586
  60. package/src/styles/less/aofeng/themeOne/systemStyle.less +2650 -2650
  61. package/src/styles/less/aofeng/themeOne.less +17 -17
  62. package/src/styles/less/aofeng/themeTwo/newStyle1.less +415 -415
  63. package/src/styles/less/aofeng/themeTwo.less +3 -3
  64. package/src/styles/less/badges.less +66 -66
  65. package/src/styles/less/bootstrap.less +66 -66
  66. package/src/styles/less/breadcrumbs.less +26 -26
  67. package/src/styles/less/button-groups.less +247 -247
  68. package/src/styles/less/buttons.less +172 -172
  69. package/src/styles/less/carousel.less +269 -269
  70. package/src/styles/less/close.less +34 -34
  71. package/src/styles/less/code.less +69 -69
  72. package/src/styles/less/component-animations.less +33 -33
  73. package/src/styles/less/dropdowns.less +216 -216
  74. package/src/styles/less/fonts-list.less +25 -25
  75. package/src/styles/less/forms.less +626 -626
  76. package/src/styles/less/glyphicons.less +305 -305
  77. package/src/styles/less/grid.less +84 -84
  78. package/src/styles/less/input-groups.less +167 -167
  79. package/src/styles/less/jumbotron.less +52 -52
  80. package/src/styles/less/labels.less +64 -64
  81. package/src/styles/less/list-group.less +141 -141
  82. package/src/styles/less/manageStyle/manageChile.less +180 -180
  83. package/src/styles/less/manageStyle/manageStyle.less +1102 -1102
  84. package/src/styles/less/manageStyle/safeStyle.less +498 -498
  85. package/src/styles/less/media.less +66 -66
  86. package/src/styles/less/mixins/alerts.less +14 -14
  87. package/src/styles/less/mixins/background-variant.less +9 -9
  88. package/src/styles/less/mixins/border-radius.less +18 -18
  89. package/src/styles/less/mixins/buttons.less +69 -69
  90. package/src/styles/less/mixins/center-block.less +7 -7
  91. package/src/styles/less/mixins/clearfix.less +22 -22
  92. package/src/styles/less/mixins/forms.less +90 -90
  93. package/src/styles/less/mixins/gradients.less +59 -59
  94. package/src/styles/less/mixins/grid-framework.less +92 -92
  95. package/src/styles/less/mixins/grid.less +122 -122
  96. package/src/styles/less/mixins/hide-text.less +21 -21
  97. package/src/styles/less/mixins/image.less +33 -33
  98. package/src/styles/less/mixins/labels.less +12 -12
  99. package/src/styles/less/mixins/list-group.less +30 -30
  100. package/src/styles/less/mixins/nav-divider.less +10 -10
  101. package/src/styles/less/mixins/nav-vertical-align.less +9 -9
  102. package/src/styles/less/mixins/opacity.less +8 -8
  103. package/src/styles/less/mixins/pagination.less +24 -24
  104. package/src/styles/less/mixins/panels.less +24 -24
  105. package/src/styles/less/mixins/progress-bar.less +10 -10
  106. package/src/styles/less/mixins/reset-filter.less +8 -8
  107. package/src/styles/less/mixins/reset-text.less +18 -18
  108. package/src/styles/less/mixins/resize.less +6 -6
  109. package/src/styles/less/mixins/responsive-visibility.less +15 -15
  110. package/src/styles/less/mixins/size.less +10 -10
  111. package/src/styles/less/mixins/tab-focus.less +9 -9
  112. package/src/styles/less/mixins/table-row.less +44 -44
  113. package/src/styles/less/mixins/text-emphasis.less +9 -9
  114. package/src/styles/less/mixins/text-overflow.less +8 -8
  115. package/src/styles/less/mixins/vendor-prefixes.less +227 -227
  116. package/src/styles/less/mixins.less +40 -40
  117. package/src/styles/less/modals.less +151 -151
  118. package/src/styles/less/navbar.less +660 -660
  119. package/src/styles/less/navs.less +285 -285
  120. package/src/styles/less/normalize.less +424 -424
  121. package/src/styles/less/pager.less +76 -76
  122. package/src/styles/less/pagination.less +89 -89
  123. package/src/styles/less/panels.less +275 -275
  124. package/src/styles/less/popovers.less +131 -131
  125. package/src/styles/less/print.less +101 -101
  126. package/src/styles/less/progress-bars.less +87 -87
  127. package/src/styles/less/responsive-embed.less +35 -35
  128. package/src/styles/less/responsive-utilities.less +194 -194
  129. package/src/styles/less/scaffolding.less +161 -161
  130. package/src/styles/less/stand.less +207 -207
  131. package/src/styles/less/tables.less +262 -262
  132. package/src/styles/less/theme.less +291 -291
  133. package/src/styles/less/thumbnails.less +36 -36
  134. package/src/styles/less/tooltip.less +102 -102
  135. package/src/styles/less/type.less +303 -303
  136. package/src/styles/less/utilities.less +55 -55
  137. package/src/styles/less/variables.less +896 -896
  138. package/src/styles/less/wells.less +29 -29
  139. package/src/system.js +85 -85
@@ -1,153 +1,153 @@
1
- <template>
2
- <v-select :options='resoptions' placeholder='请选择'
3
- :value.sync="selectres"
4
- :multiple="isMul"
5
- search="true"
6
- :close-on-select="!isMul"
7
- @change="resChange"
8
- >
9
- </v-select>
10
- </template>
11
- <script>
12
- import {HttpResetClass} from 'vue-client'
13
-
14
- export default {
15
- title: '资源选择',
16
- props: {
17
-
18
- //资源类型
19
- restype:'',
20
- //资源数据
21
- resObj:{},
22
- isMul: {
23
- type: Boolean,
24
- default: true
25
- },
26
- //资源初始化数据
27
- initresid: {
28
- type: Array,
29
- default() { return [] },
30
- },
31
- //父层id
32
- parentresid: {
33
- type: Array,
34
- default() { return [] },
35
- },
36
- },
37
- data () {
38
- return {
39
- //资源数据
40
- resObj:{},
41
- //资源数据列表
42
- resoptions:[],
43
- //选中资源数据
44
- selectres: [],
45
- }
46
- },
47
- ready () {
48
- //获取资源列表
49
- this.getResList()
50
- },
51
- methods:{
52
- //树形结构变成list
53
- findById(val) {
54
- if(val){
55
- if(this.checkidres(val)){
56
- this.treetoList(val,'')
57
- }else if(val.children.length>0){
58
- for (let value of val.children) {
59
- this.findById(value)
60
- }
61
- }
62
- }
63
- },
64
- //树形结构变成list
65
- treetoList(val,parentname) {
66
- for (let value of val.children) {
67
- this.ergodicList(value,parentname)
68
- }
69
- },
70
- //找到跟节点
71
- ergodicList (val,parentname) {
72
- if(val.children.length > 0 ){
73
- if (val.name !== '组织机构' && parentname !== '资源管理'){
74
- this.resoptions.push({label: parentname === '组织机构' ? val.name : val.name+' - '+parentname, value: val.id})
75
- }
76
- parentname=parentname+val.name
77
- this.treetoList(val,parentname)
78
- }else {
79
- //截取组织机构【组织机构】
80
- if(this.restype=='organization'){
81
- parentname=parentname.replace("组织机构","")
82
- this.resoptions.push({label: val.name+' - '+parentname, value: val.id})
83
- }else{
84
- this.resoptions.push({label: val.name, value: val.id})
85
- }
86
- }
87
- },
88
- //检查id是否存在
89
- checkidres(val){
90
- let flag=false
91
- //如果没传值得话 不过滤
92
- if(this.parentresid.length==0&&this.restype=='organization'){
93
- flag=true
94
- }
95
- this.parentresid.forEach((item) => {
96
- if(item==val.id){
97
- flag=true
98
- }
99
- })
100
- return flag;
101
- },
102
- //资源改变
103
- resChange(val){
104
- let orgnames=[]
105
- Object.keys(this.resoptions).forEach((key) => {
106
- if(this.selectres.includes(this.resoptions[key].value))
107
- orgnames.push(this.resoptions[key].label)
108
- })
109
- console.log('资源改变。。', val, orgnames)
110
- this.$dispatch('res-select', this.selectres, orgnames)
111
- },
112
- //获取资源数据
113
- async getResList() {
114
-
115
- let http = new HttpResetClass()
116
-
117
- let req = await http.load('POST', '/rs/search', {data: {
118
- source: `tool.getFullTree(this.getRights().where(row.getType()==$${this.restype}$))`,
119
- userid: this.$login.f.id
120
- }}, {resolveMsg: null, rejectMsg: '获取组织结构数据出错'})
121
- this.resObj=req.data[0]
122
- this.dealdata()
123
- },
124
- dealdata(){
125
- this.resoptions=[]
126
- this.findById(this.resObj);
127
- //赋值资源数据
128
- let arryselect=[]
129
- this.resoptions.forEach((item) => {
130
- if(this.initresid.length>0){
131
- this.initresid.forEach((init) => {
132
- if(item.value==init){
133
- arryselect.push(item.value)
134
- }
135
- })
136
- }
137
- })
138
- //赋值资源选中初始值
139
- this.selectres=arryselect
140
- }
141
- },
142
- watch: {
143
- //监听初始化资源id
144
- 'initresid.length'(){
145
- this.dealdata()
146
- },
147
- //监听初始化资源id
148
- 'parentresid'(){
149
- this.dealdata()
150
- },
151
- },
152
- }
153
- </script>
1
+ <template>
2
+ <v-select :options='resoptions' placeholder='请选择'
3
+ :value.sync="selectres"
4
+ :multiple="isMul"
5
+ search="true"
6
+ :close-on-select="!isMul"
7
+ @change="resChange"
8
+ >
9
+ </v-select>
10
+ </template>
11
+ <script>
12
+ import {HttpResetClass} from 'vue-client'
13
+
14
+ export default {
15
+ title: '资源选择',
16
+ props: {
17
+
18
+ //资源类型
19
+ restype:'',
20
+ //资源数据
21
+ resObj:{},
22
+ isMul: {
23
+ type: Boolean,
24
+ default: true
25
+ },
26
+ //资源初始化数据
27
+ initresid: {
28
+ type: Array,
29
+ default() { return [] },
30
+ },
31
+ //父层id
32
+ parentresid: {
33
+ type: Array,
34
+ default() { return [] },
35
+ },
36
+ },
37
+ data () {
38
+ return {
39
+ //资源数据
40
+ resObj:{},
41
+ //资源数据列表
42
+ resoptions:[],
43
+ //选中资源数据
44
+ selectres: [],
45
+ }
46
+ },
47
+ ready () {
48
+ //获取资源列表
49
+ this.getResList()
50
+ },
51
+ methods:{
52
+ //树形结构变成list
53
+ findById(val) {
54
+ if(val){
55
+ if(this.checkidres(val)){
56
+ this.treetoList(val,'')
57
+ }else if(val.children.length>0){
58
+ for (let value of val.children) {
59
+ this.findById(value)
60
+ }
61
+ }
62
+ }
63
+ },
64
+ //树形结构变成list
65
+ treetoList(val,parentname) {
66
+ for (let value of val.children) {
67
+ this.ergodicList(value,parentname)
68
+ }
69
+ },
70
+ //找到跟节点
71
+ ergodicList (val,parentname) {
72
+ if(val.children.length > 0 ){
73
+ if (val.name !== '组织机构' && parentname !== '资源管理'){
74
+ this.resoptions.push({label: parentname === '组织机构' ? val.name : val.name+' - '+parentname, value: val.id})
75
+ }
76
+ parentname=parentname+val.name
77
+ this.treetoList(val,parentname)
78
+ }else {
79
+ //截取组织机构【组织机构】
80
+ if(this.restype=='organization'){
81
+ parentname=parentname.replace("组织机构","")
82
+ this.resoptions.push({label: val.name+' - '+parentname, value: val.id})
83
+ }else{
84
+ this.resoptions.push({label: val.name, value: val.id})
85
+ }
86
+ }
87
+ },
88
+ //检查id是否存在
89
+ checkidres(val){
90
+ let flag=false
91
+ //如果没传值得话 不过滤
92
+ if(this.parentresid.length==0&&this.restype=='organization'){
93
+ flag=true
94
+ }
95
+ this.parentresid.forEach((item) => {
96
+ if(item==val.id){
97
+ flag=true
98
+ }
99
+ })
100
+ return flag;
101
+ },
102
+ //资源改变
103
+ resChange(val){
104
+ let orgnames=[]
105
+ Object.keys(this.resoptions).forEach((key) => {
106
+ if(this.selectres.includes(this.resoptions[key].value))
107
+ orgnames.push(this.resoptions[key].label)
108
+ })
109
+ console.log('资源改变。。', val, orgnames)
110
+ this.$dispatch('res-select', this.selectres, orgnames)
111
+ },
112
+ //获取资源数据
113
+ async getResList() {
114
+
115
+ let http = new HttpResetClass()
116
+
117
+ let req = await http.load('POST', '/rs/search', {data: {
118
+ source: `tool.getFullTree(this.getRights().where(row.getType()==$${this.restype}$))`,
119
+ userid: this.$login.f.id
120
+ }}, {resolveMsg: null, rejectMsg: '获取组织结构数据出错'})
121
+ this.resObj=req.data[0]
122
+ this.dealdata()
123
+ },
124
+ dealdata(){
125
+ this.resoptions=[]
126
+ this.findById(this.resObj);
127
+ //赋值资源数据
128
+ let arryselect=[]
129
+ this.resoptions.forEach((item) => {
130
+ if(this.initresid.length>0){
131
+ this.initresid.forEach((init) => {
132
+ if(item.value==init){
133
+ arryselect.push(item.value)
134
+ }
135
+ })
136
+ }
137
+ })
138
+ //赋值资源选中初始值
139
+ this.selectres=arryselect
140
+ }
141
+ },
142
+ watch: {
143
+ //监听初始化资源id
144
+ 'initresid.length'(){
145
+ this.dealdata()
146
+ },
147
+ //监听初始化资源id
148
+ 'parentresid'(){
149
+ this.dealdata()
150
+ },
151
+ },
152
+ }
153
+ </script>
@@ -1,159 +1,159 @@
1
- <template>
2
- <div :class="style" v-show="companyshow">
3
- <label class="font_normal_body">公&emsp;&emsp;司</label>
4
- <right-tree @re-res="getorg"
5
- :initresid='initres.org'></right-tree>
6
- </div>
7
- <div :class="style" v-show="departmentshow">
8
- <label class="font_normal_body">部&emsp;&emsp;门</label>
9
- <res-select restype='department'
10
- @res-select="getdep"
11
- :parentresid="depresid"
12
- :initresid='initres.dep'
13
- :is-mul="mul">
14
- </res-select>
15
- </div>
16
- <div :class="style" v-show="operatorshow">
17
- <label class="font_normal_body">人&emsp;&emsp;员</label>
18
- <res-select restype='user'
19
- @res-select="getuser"
20
- :parentresid="depresid"
21
- :initresid='initres.user'
22
- :is-mul="mul">
23
- </res-select>
24
- </div>
25
- <div :class="style " v-show="sliceareashow" >
26
- <label class="font_normal_body">片&emsp;&emsp;区</label>
27
- <v-select :value.sync="slice_area" v-model="slice_area" @change='getarea'
28
- :options='sliceArea' placeholder='片区/管理站' filer-key="name"
29
- close-on-select v-ref:slice>
30
- </v-select>
31
- </div>
32
- </template>
33
- <script>
34
- import plugin from '../../plugins/GetLoginInfoService'
35
- import { HttpResetClass } from 'vue-client'
36
- export default {
37
- title: '资源选择测试',
38
- props: {
39
- style: {
40
- type: String,
41
- default: 'col-sm-2 form-group'
42
- },
43
- mul: {
44
- type: Boolean,
45
- default: true
46
- },
47
- //初始值
48
- initres: {
49
- type: Object,
50
- default: null,
51
- },
52
- showComponent:{
53
- default:['company','department','operator','slicearea']
54
- }
55
- },
56
- data () {
57
- return {
58
- orgresid:[this.$login.f.orgid],
59
- depresid:[],
60
- userresid:[],
61
- sliceArea: [],
62
- slice_area:[],
63
- companyshow:false,
64
- departmentshow:false,
65
- operatorshow:false,
66
- sliceareashow:false,
67
- obj:{
68
- orgnames:[],
69
- depnames:[],
70
- operatornames:[]
71
- }
72
- }
73
- },
74
- ready () {
75
- console.log('开始获取组织结构。。。')
76
- this.initComponent();
77
- this.initAreas(this.$login.f.orgid)
78
- },
79
- methods:{
80
- initComponent(){
81
- let self=this;
82
- this.showComponent.find((item)=>{
83
- switch(item){
84
- case 'company': self.companyshow=true; break;
85
- case 'department': self.departmentshow=true; break;
86
- case 'operator': self.operatorshow=true; break;
87
- case 'slicearea': self.sliceareashow=true; break;
88
- }
89
- })
90
- },
91
- // 初始化片区
92
- async initAreas (val) {
93
- if (val) {
94
- let http = new HttpResetClass()
95
- let getAllArea = await http.load('POST', '/rs/search', {
96
- source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
97
- userid: this.$login.f.id
98
- }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
99
- let arr = getAllArea.data.filter((res) => {
100
- return res.parentid == val
101
- })
102
- console.log('过滤之后的片区', arr)
103
- this.sliceArea = []
104
- arr.forEach((res) => {
105
- this.sliceArea.push({label: res.name, value: {name: res.name, code:res.number}})
106
- })
107
- }
108
- },
109
- returnOrg(ids){
110
-
111
- let condition;
112
- if(this.depresid.length > 0)
113
- condition = " and f_orgid in " + plugin.convertToIn(this.depresid);
114
- else
115
- condition = " and f_orgid = " + this.$login.f.orgid;
116
- if(this.userresid.length > 0){
117
- condition += " and f_depid in " + plugin.convertToIn(this.userresid);
118
- }
119
- if(ids && ids.length > 0){
120
- condition += " and f_operatorid in " + plugin.convertToIn(ids);
121
- }
122
- if(this.slice_area.length>0){
123
- condition += " and f_zones = '" + this.slice_area[0].name+"'"
124
- }
125
- this.$dispatch('re-res',condition,this.obj)
126
- },
127
- getorg (obj) {
128
- console.log("选中公司的数据11",obj.resids)
129
- this.depresid=obj.resids
130
- this.obj.orgnames = obj.res
131
- this.initAreas(obj.resids)
132
- this.returnOrg();
133
- },
134
- getdep(obj,val) {
135
- console.log("选中部门的数据22",obj)
136
- this.obj.depnames = val
137
- this.userresid=obj
138
- this.returnOrg();
139
- },
140
- getuser(obj) {
141
- this.obj.operatornames = obj
142
- console.log("选中用户的数据33",obj)
143
- this.returnOrg(obj);
144
- },
145
- getarea(val) {
146
- this.slice_area=val
147
- console.log("选中的大区",val)
148
- if(this.obj.operatornames){
149
- this.returnOrg(this.obj.operatornames);
150
- }else{
151
- this.returnOrg();
152
- }
153
- }
154
- },
155
- watch: {
156
-
157
- }
158
- }
159
- </script>
1
+ <template>
2
+ <div :class="style" v-show="companyshow">
3
+ <label class="font_normal_body">公&emsp;&emsp;司</label>
4
+ <right-tree @re-res="getorg"
5
+ :initresid='initres.org'></right-tree>
6
+ </div>
7
+ <div :class="style" v-show="departmentshow">
8
+ <label class="font_normal_body">部&emsp;&emsp;门</label>
9
+ <res-select restype='department'
10
+ @res-select="getdep"
11
+ :parentresid="depresid"
12
+ :initresid='initres.dep'
13
+ :is-mul="mul">
14
+ </res-select>
15
+ </div>
16
+ <div :class="style" v-show="operatorshow">
17
+ <label class="font_normal_body">人&emsp;&emsp;员</label>
18
+ <res-select restype='user'
19
+ @res-select="getuser"
20
+ :parentresid="depresid"
21
+ :initresid='initres.user'
22
+ :is-mul="mul">
23
+ </res-select>
24
+ </div>
25
+ <div :class="style " v-show="sliceareashow" >
26
+ <label class="font_normal_body">片&emsp;&emsp;区</label>
27
+ <v-select :value.sync="slice_area" v-model="slice_area" @change='getarea'
28
+ :options='sliceArea' placeholder='片区/管理站' filer-key="name"
29
+ close-on-select v-ref:slice>
30
+ </v-select>
31
+ </div>
32
+ </template>
33
+ <script>
34
+ import plugin from '../../plugins/GetLoginInfoService'
35
+ import { HttpResetClass } from 'vue-client'
36
+ export default {
37
+ title: '资源选择测试',
38
+ props: {
39
+ style: {
40
+ type: String,
41
+ default: 'col-sm-2 form-group'
42
+ },
43
+ mul: {
44
+ type: Boolean,
45
+ default: true
46
+ },
47
+ //初始值
48
+ initres: {
49
+ type: Object,
50
+ default: null,
51
+ },
52
+ showComponent:{
53
+ default:['company','department','operator','slicearea']
54
+ }
55
+ },
56
+ data () {
57
+ return {
58
+ orgresid:[this.$login.f.orgid],
59
+ depresid:[],
60
+ userresid:[],
61
+ sliceArea: [],
62
+ slice_area:[],
63
+ companyshow:false,
64
+ departmentshow:false,
65
+ operatorshow:false,
66
+ sliceareashow:false,
67
+ obj:{
68
+ orgnames:[],
69
+ depnames:[],
70
+ operatornames:[]
71
+ }
72
+ }
73
+ },
74
+ ready () {
75
+ console.log('开始获取组织结构。。。')
76
+ this.initComponent();
77
+ this.initAreas(this.$login.f.orgid)
78
+ },
79
+ methods:{
80
+ initComponent(){
81
+ let self=this;
82
+ this.showComponent.find((item)=>{
83
+ switch(item){
84
+ case 'company': self.companyshow=true; break;
85
+ case 'department': self.departmentshow=true; break;
86
+ case 'operator': self.operatorshow=true; break;
87
+ case 'slicearea': self.sliceareashow=true; break;
88
+ }
89
+ })
90
+ },
91
+ // 初始化片区
92
+ async initAreas (val) {
93
+ if (val) {
94
+ let http = new HttpResetClass()
95
+ let getAllArea = await http.load('POST', '/rs/search', {
96
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
97
+ userid: this.$login.f.id
98
+ }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
99
+ let arr = getAllArea.data.filter((res) => {
100
+ return res.parentid == val
101
+ })
102
+ console.log('过滤之后的片区', arr)
103
+ this.sliceArea = []
104
+ arr.forEach((res) => {
105
+ this.sliceArea.push({label: res.name, value: {name: res.name, code:res.number}})
106
+ })
107
+ }
108
+ },
109
+ returnOrg(ids){
110
+
111
+ let condition;
112
+ if(this.depresid.length > 0)
113
+ condition = " and f_orgid in " + plugin.convertToIn(this.depresid);
114
+ else
115
+ condition = " and f_orgid = " + this.$login.f.orgid;
116
+ if(this.userresid.length > 0){
117
+ condition += " and f_depid in " + plugin.convertToIn(this.userresid);
118
+ }
119
+ if(ids && ids.length > 0){
120
+ condition += " and f_operatorid in " + plugin.convertToIn(ids);
121
+ }
122
+ if(this.slice_area.length>0){
123
+ condition += " and f_zones = '" + this.slice_area[0].name+"'"
124
+ }
125
+ this.$dispatch('re-res',condition,this.obj)
126
+ },
127
+ getorg (obj) {
128
+ console.log("选中公司的数据11",obj.resids)
129
+ this.depresid=obj.resids
130
+ this.obj.orgnames = obj.res
131
+ this.initAreas(obj.resids)
132
+ this.returnOrg();
133
+ },
134
+ getdep(obj,val) {
135
+ console.log("选中部门的数据22",obj)
136
+ this.obj.depnames = val
137
+ this.userresid=obj
138
+ this.returnOrg();
139
+ },
140
+ getuser(obj) {
141
+ this.obj.operatornames = obj
142
+ console.log("选中用户的数据33",obj)
143
+ this.returnOrg(obj);
144
+ },
145
+ getarea(val) {
146
+ this.slice_area=val
147
+ console.log("选中的大区",val)
148
+ if(this.obj.operatornames){
149
+ this.returnOrg(this.obj.operatornames);
150
+ }else{
151
+ this.returnOrg();
152
+ }
153
+ }
154
+ },
155
+ watch: {
156
+
157
+ }
158
+ }
159
+ </script>