system-clients 3.2.6-1 → 3.2.6-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 (105) hide show
  1. package/.eslintrc.js +16 -16
  2. package/.gradle/3.5/file-changes/last-build.bin +0 -0
  3. package/.gradle/3.5/taskHistory/taskHistory.lock +0 -0
  4. package/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  5. package/.gradle/7.1/dependencies-accessors/gc.properties +0 -0
  6. package/.gradle/7.1/executionHistory/executionHistory.bin +0 -0
  7. package/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  8. package/.gradle/7.1/fileChanges/last-build.bin +0 -0
  9. package/.gradle/7.1/fileHashes/fileHashes.bin +0 -0
  10. package/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  11. package/.gradle/7.1/gc.properties +0 -0
  12. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  13. package/.gradle/buildOutputCleanup/cache.properties +2 -0
  14. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  15. package/.gradle/checksums/checksums.lock +0 -0
  16. package/.gradle/vcs-1/gc.properties +0 -0
  17. package/SystemClient.iml +11 -8
  18. package/build/webpack.base.conf.js +10 -17
  19. package/gradle/wrapper/gradle-wrapper.jar +0 -0
  20. package/gradle/wrapper/gradle-wrapper.properties +5 -0
  21. package/gradlew +185 -0
  22. package/gradlew.bat +89 -0
  23. package/package.json +102 -104
  24. package/src/App.vue +1 -1
  25. package/src/components/Main.vue +430 -686
  26. package/src/components/Util.js +343 -343
  27. package/src/components/equipment/EquipmentManage.vue +4 -4
  28. package/src/components/equipment/PcAdd.vue +6 -6
  29. package/src/components/equipment/PcList.vue +9 -8
  30. package/src/components/equipment/PhoneAdd.vue +14 -27
  31. package/src/components/equipment/PhoneList.vue +23 -33
  32. package/src/components/equipment/PosAdd.vue +65 -232
  33. package/src/components/equipment/PosList.vue +71 -201
  34. package/src/components/equipment/PosManage.vue +10 -80
  35. package/src/components/materialManage/materialList.vue +1 -1
  36. package/src/components/parammanage/ParamManage.vue +2 -2
  37. package/src/components/parammanage/ParamPage.vue +14 -36
  38. package/src/components/parammanage/ParamPages.vue +5 -5
  39. package/src/components/parammanage/SinglePage.vue +7 -7
  40. package/src/components/parammanage/SinglePages.vue +3 -3
  41. package/src/components/server/AddChangeMsg.vue +1 -1
  42. package/src/components/server/ChangeDeclare.vue +1 -1
  43. package/src/components/server/LoadData.vue +2 -21
  44. package/src/components/server/Login.vue +132 -295
  45. package/src/components/server/Menu.vue +188 -188
  46. package/src/components/server/ModifyPw.vue +17 -16
  47. package/src/components/server/NewResSelectGroup.vue +211 -0
  48. package/src/components/server/ResSelect.vue +3 -5
  49. package/src/components/server/ResSelectGroup.vue +118 -157
  50. package/src/components/server/RightTree.vue +257 -262
  51. package/src/components/server/RoleSelector.vue +4 -3
  52. package/src/components/server/TestResSelectGroup.vue +2 -2
  53. package/src/plugins/GetLoginInfoService.js +52 -74
  54. package/src/plugins/validation.js +0 -8
  55. package/src/project/State.js +1 -1
  56. package/src/stores/AppData.js +1 -1
  57. package/src/styles/less/aofeng/standard.less +60 -446
  58. package/src/styles/less/aofeng/themeOne/BinaryTemplate.less +13 -13
  59. package/src/styles/less/aofeng/themeOne/systemStyle.less +18 -18
  60. package/src/styles/less/fonts-list.less +4 -4
  61. package/src/styles/less/stand.less +1 -1
  62. package/src/styles/less/tables.less +0 -50
  63. package/src/styles/less/type.less +3 -16
  64. package/src/styles/less/variables.less +3 -6
  65. package/src/system.js +3 -27
  66. package/static/aodelogo.png +0 -0
  67. package/static/aodenewlogo.png +0 -0
  68. package/static/ewmlogo.png +0 -0
  69. package/.npmignore +0 -10
  70. package/build/.npmignore +0 -1
  71. package/package-lock.json +0 -23125
  72. package/src/.npmignore +0 -1
  73. package/src/components/TabButton.vue +0 -201
  74. package/src/components/Tabs.vue +0 -67
  75. package/src/components/addressManage/AddressCascadingMenu.vue +0 -145
  76. package/src/components/equipment/PosManageBoth.vue +0 -125
  77. package/src/components/equipment/PosParamAdd.vue +0 -236
  78. package/src/components/equipment/PosParamList.vue +0 -121
  79. package/src/components/equipment/PosParamManage.vue +0 -51
  80. package/src/components/server/ImageVieweTest.vue +0 -56
  81. package/src/components/server/ImageViewer.vue +0 -350
  82. package/src/components/server/PcdBuildingSelect.vue +0 -241
  83. package/src/filiale/dongguan/Login.vue +0 -889
  84. package/src/filiale/dongguan/Main.vue +0 -715
  85. package/src/filiale/dongguan/system.js +0 -6
  86. package/src/filiale/konggang/Login.vue +0 -840
  87. package/src/filiale/konggang/system.js +0 -7
  88. package/src/filiale/qianneng/ModifyPw.vue +0 -107
  89. package/src/filiale/qianneng/system.js +0 -7
  90. package/src/filiale/rizhao/LeftTree.vue +0 -111
  91. package/src/filiale/rizhao/Login.vue +0 -791
  92. package/src/filiale/rizhao/Main.vue +0 -606
  93. package/src/filiale/rizhao/system.js +0 -14
  94. package/src/filiale/yuchuan/Login.vue +0 -889
  95. package/src/filiale/yuchuan/Main.vue +0 -773
  96. package/src/filiale/yuchuan/system.js +0 -10
  97. package/src/styles/less/manageStyle/manageStyle/manageChile.less +0 -180
  98. package/src/styles/less/manageStyle/manageStyle/manageStyle.less +0 -1102
  99. package/src/styles/less/manageStyle/manageStyle/safeStyle.less +0 -498
  100. package/src/util/Daiban.json +0 -12
  101. package/static/images/lefticon//345/220/210/345/220/214/347/256/241/347/220/206.png +0 -0
  102. package/static/logo.png +0 -0
  103. package/static/newStyle/about-us.png +0 -0
  104. package/static/rizhao.png +0 -0
  105. package/yarn-error.log +0 -6896
@@ -1,188 +1,188 @@
1
- <template>
2
- <div class="auto">
3
- <div class="head">
4
- <img src="../../../static/loginlogo.png" alt="图片加载未完成"
5
- style="float:left;width: 100px; height: 80px; margin: 10px 20px 20px 20px;"/>
6
- <div style="float:left;width:auto;height:130px;padding-top:10px;">
7
- <h3 style="font-size: 22px;">欢迎使用陕西燃气管理系统</h3>
8
- <h5 style="font-size: 15px;">Welcome to ShanXi GAS Manage System</h5>
9
- </div>
10
-
11
- <h5 style="float:right;margin-top:70px;margin-right:80px;">
12
-
13
- <span class="glyphicon glyphicon-calendar"></span>
14
- {{ date }}&nbsp;&nbsp;
15
-
16
- <span class="glyphicon glyphicon-copyright-mark"></span>
17
- 系统版本:V1.0.0&nbsp;&nbsp;
18
-
19
- <span class="glyphicon glyphicon-th-large"></span>
20
- 蓝色主题&nbsp;&nbsp;
21
- <a href="#" style="color:#fff;text-decoration:none;" @click.stop.prevent="modify=true">
22
- <span class="glyphicon glyphicon-cog"></span>
23
- 修改密码
24
- </a>
25
- </h5>
26
- </div>
27
- <div class="auto">
28
- <!-- 白线div -->
29
- <div class="whiteline">
30
- </div>
31
- <select-menu :model="functions.functions"></select-menu>
32
- </div>
33
- <modal v-ref:modal :show.sync="modify" :backdrop="false" class="auto">
34
- <header slot="modal-header" class="modal-header">
35
- <h4 class="modal-title">修改密码</h4>
36
- </header>
37
- <article slot="modal-body" class="modal-body modifystyle">
38
- <validator name="v">
39
-
40
- <div class="has-feedback"
41
- :class="{'has-warning':$v.password.required,'has-error':$v.password.equalValid && !($v.password.required),
42
- 'has-success': !$v.password.required && !($v.password.equalValid && !($v.password.required))}">
43
- <label for="password" class="control-label">原始密码:&nbsp;&nbsp;</label>
44
- <input type="password" v-model="deliver.password" class="form-control" id="password" v-validate:password="{ required: true, equalValid: functions.password }">
45
- <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.password.required && !($v.password.equalValid && !($v.password.required))"></span>
46
- <!-- <span class="glyphicon form-control-feedback"
47
- :class="{'glyphicon-warning-sign':$v.password.required,'glyphicon-remove'$v.password.equalValid && !($v.password.required):,
48
- 'glyphicon-ok':!$v.password.required && !($v.password.equalValid && !($v.password.required))}"></span> -->
49
- <span v-if="$v.password.required">不能为空</span>
50
- <span v-if="$v.password.equalValid && !($v.password.required)">原始密码错误 !!</span>
51
- </div>
52
-
53
- <div class="has-feedback"
54
- :class="{'has-warning':$v.newpassword.required, 'has-success': !$v.newpassword.required}">
55
- <label for="newpassword" class="control-label">新的密码:&nbsp;&nbsp;</label>
56
- <input type="password" v-model="deliver.newpassword" class="form-control" id="newpassword" v-validate:newpassword='{ required: true }'>
57
- <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.newpassword.required"></span>
58
- <!-- <span class="glyphicon form-control-feedback"
59
- :class="{'glyphicon-warning-sign':$v.newpassword.required,'glyphicon-ok':!$v.newpassword.required }"></span> -->
60
- <span v-if="$v.newpassword.required">不能为空</span>
61
- </div>
62
-
63
- <div class="has-feedback"
64
- :class="{'has-warning':$v.affirmpassword.required,'has-error':$v.affirmpassword.equalValid && !($v.affirmpassword.required),
65
- 'has-success': !$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))}">
66
- <label for="affirmpassword" class="control-label">确认密码:&nbsp;&nbsp;</label>
67
- <input type="password" v-model="deliver.affirmpassword" class="form-control" id="affirmpassword" v-validate:affirmpassword="{ required: true, equalValid: deliver.newpassword }">
68
- <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))"></span>
69
- <!-- <span class="glyphicon form-control-feedback"
70
- :class="{'glyphicon-warning-sign':$v.affirmpassword.required,'glyphicon-remove'$v.affirmpassword.equalValid && !($v.affirmpassword.required):,
71
- 'glyphicon-ok':!$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))}"></span> -->
72
- <span v-if="$v.affirmpassword.required">不能为空</span>
73
- <span v-if="$v.affirmpassword.equalValid && !($v.affirmpassword.required)">两次密码不一致 !!</span>
74
- </div>
75
-
76
- </validator>
77
- </article>
78
- <footer slot="modal-footer" class="footerbtn">
79
- <button type="button" class="btn btn-success" @click='confirm' :disabled="!$v.valid">确认</button>
80
- <button type="button" class="btn btn-default" @click='close'>取消</button>
81
- </footer>
82
- <modal>
83
- <!-- modifyPassword() -->
84
- </modal>
85
- </modal>
86
- </div>
87
- </template>
88
-
89
- <script>
90
- import co from 'co'
91
- import * as Util from '../Util'
92
-
93
- let saveGen = function * (self) {
94
- self.deliver.ename = self.functions.ename
95
- // let res = yield self.$post('rs/user/entity', {data: self.deliver})
96
- // let res = yield self.$post('rs/db/modifypassword', {data: self.deliver})
97
- let res = yield self.$post('rs/db/modifypwd', {data: self.deliver})
98
- if (res.status === 200 || res.status === 204) {
99
- self.modify = false
100
- self.deliver.password = ''
101
- self.deliver.newpassword = ''
102
- self.deliver.affirmpassword = ''
103
- }
104
- }
105
-
106
- export default {
107
- title: '菜单选择',
108
- props: ['functions'],
109
- data () {
110
- return {
111
- modify: false,
112
- deliver: {
113
- password: '',
114
- newpassword: '',
115
- affirmpassword: ''
116
- }
117
- }
118
- },
119
- computed: {
120
- date () {
121
- return Util.getNowDate()
122
- }
123
- },
124
- methods: {
125
- open (row) {
126
- if (row.link) {
127
- // this.$goto(row.link, {userid: this.functions, source: {isRead: 'modify'}}, 'home-page')
128
- this.$goto(row.link, {f: this.functions}, 'home-page')
129
- }
130
- },
131
- // 修改密码操作
132
- close () {
133
- this.modify = false
134
- },
135
- confirm () {
136
- let gen = saveGen(this)
137
- co(gen)
138
- }
139
- },
140
- events: {
141
- 'select-changed': function (data) {
142
- // 事件回调内的 `this` 自动绑定到注册它的实例上
143
- this.open(data.val)
144
- }
145
- }
146
- }
147
- </script>
148
- <style>
149
- /* 头部样式,大部分使用放在标签内 */
150
- .head {
151
- color: #fff;
152
- height: 110px;
153
- width: 100%;
154
- }
155
- /* 菜单头部与内容区域的中间的白色线 */
156
- .whiteline {
157
- height: 1px;
158
- background: #fff;
159
- margin: 0px 30px;
160
- }
161
- /*修改密码body界面样式*/
162
- .modifystyle {
163
- background: #FCFEEE;
164
- }
165
- .modifystyle div{
166
- height: auto;
167
- margin-bottom: 15px;
168
- /*text-align: center;*/
169
- margin-left: 20%;
170
- }
171
- /*bootstrap字体图标要手动调整,所以使用字体图标的span必须紧跟在input后面,负责会错位*/
172
- .modifystyle div input + span{
173
- top: 0!important;
174
- right: 32%;
175
- }
176
- .modifystyle span{
177
- color: red;
178
- }
179
- /*修改密码底部按钮部分样式*/
180
- .footerbtn {
181
- text-align: center;
182
- padding: 15px;
183
- }
184
- .footerbtn button {
185
- width: 100px;
186
- margin-left: 20px;
187
- }
188
- </style>
1
+ <template>
2
+ <div class="auto">
3
+ <div class="head">
4
+ <img src="../../../static/loginlogo.png" alt="图片加载未完成"
5
+ style="float:left;width: 100px; height: 80px; margin: 10px 20px 20px 20px;"/>
6
+ <div style="float:left;width:auto;height:130px;padding-top:10px;">
7
+ <h3 style="font-size: 22px;">欢迎使用陕西燃气管理系统</h3>
8
+ <h5 style="font-size: 15px;">Welcome to ShanXi GAS Manage System</h5>
9
+ </div>
10
+
11
+ <h5 style="float:right;margin-top:70px;margin-right:80px;">
12
+
13
+ <span class="glyphicon glyphicon-calendar"></span>
14
+ {{ date }}&nbsp;&nbsp;
15
+
16
+ <span class="glyphicon glyphicon-copyright-mark"></span>
17
+ 系统版本:V1.0.0&nbsp;&nbsp;
18
+
19
+ <span class="glyphicon glyphicon-th-large"></span>
20
+ 蓝色主题&nbsp;&nbsp;
21
+ <a href="#" style="color:#fff;text-decoration:none;" @click.stop.prevent="modify=true">
22
+ <span class="glyphicon glyphicon-cog"></span>
23
+ 修改密码
24
+ </a>
25
+ </h5>
26
+ </div>
27
+ <div class="auto">
28
+ <!-- 白线div -->
29
+ <div class="whiteline">
30
+ </div>
31
+ <select-menu :model="functions.functions"></select-menu>
32
+ </div>
33
+ <modal v-ref:modal :show.sync="modify" :backdrop="false" class="auto">
34
+ <header slot="modal-header" class="modal-header">
35
+ <h4 class="modal-title">修改密码</h4>
36
+ </header>
37
+ <article slot="modal-body" class="modal-body modifystyle">
38
+ <validator name="v">
39
+
40
+ <div class="has-feedback"
41
+ :class="{'has-warning':$v.password.required,'has-error':$v.password.equalValid && !($v.password.required),
42
+ 'has-success': !$v.password.required && !($v.password.equalValid && !($v.password.required))}">
43
+ <label for="password" class="control-label">原始密码:&nbsp;&nbsp;</label>
44
+ <input type="password" v-model="deliver.password" class="form-control" id="password" v-validate:password="{ required: true, equalValid: functions.password }">
45
+ <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.password.required && !($v.password.equalValid && !($v.password.required))"></span>
46
+ <!-- <span class="glyphicon form-control-feedback"
47
+ :class="{'glyphicon-warning-sign':$v.password.required,'glyphicon-remove'$v.password.equalValid && !($v.password.required):,
48
+ 'glyphicon-ok':!$v.password.required && !($v.password.equalValid && !($v.password.required))}"></span> -->
49
+ <span v-if="$v.password.required">不能为空</span>
50
+ <span v-if="$v.password.equalValid && !($v.password.required)">原始密码错误 !!</span>
51
+ </div>
52
+
53
+ <div class="has-feedback"
54
+ :class="{'has-warning':$v.newpassword.required, 'has-success': !$v.newpassword.required}">
55
+ <label for="newpassword" class="control-label">新的密码:&nbsp;&nbsp;</label>
56
+ <input type="password" v-model="deliver.newpassword" class="form-control" id="newpassword" v-validate:newpassword='{ required: true }'>
57
+ <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.newpassword.required"></span>
58
+ <!-- <span class="glyphicon form-control-feedback"
59
+ :class="{'glyphicon-warning-sign':$v.newpassword.required,'glyphicon-ok':!$v.newpassword.required }"></span> -->
60
+ <span v-if="$v.newpassword.required">不能为空</span>
61
+ </div>
62
+
63
+ <div class="has-feedback"
64
+ :class="{'has-warning':$v.affirmpassword.required,'has-error':$v.affirmpassword.equalValid && !($v.affirmpassword.required),
65
+ 'has-success': !$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))}">
66
+ <label for="affirmpassword" class="control-label">确认密码:&nbsp;&nbsp;</label>
67
+ <input type="password" v-model="deliver.affirmpassword" class="form-control" id="affirmpassword" v-validate:affirmpassword="{ required: true, equalValid: deliver.newpassword }">
68
+ <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))"></span>
69
+ <!-- <span class="glyphicon form-control-feedback"
70
+ :class="{'glyphicon-warning-sign':$v.affirmpassword.required,'glyphicon-remove'$v.affirmpassword.equalValid && !($v.affirmpassword.required):,
71
+ 'glyphicon-ok':!$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))}"></span> -->
72
+ <span v-if="$v.affirmpassword.required">不能为空</span>
73
+ <span v-if="$v.affirmpassword.equalValid && !($v.affirmpassword.required)">两次密码不一致 !!</span>
74
+ </div>
75
+
76
+ </validator>
77
+ </article>
78
+ <footer slot="modal-footer" class="footerbtn">
79
+ <button type="button" class="btn btn-success" @click='confirm' :disabled="!$v.valid">确认</button>
80
+ <button type="button" class="btn btn-default" @click='close'>取消</button>
81
+ </footer>
82
+ <modal>
83
+ <!-- modifyPassword() -->
84
+ </modal>
85
+ </modal>
86
+ </div>
87
+ </template>
88
+
89
+ <script>
90
+ import co from 'co'
91
+ import * as Util from '../Util'
92
+
93
+ let saveGen = function * (self) {
94
+ self.deliver.ename = self.functions.ename
95
+ // let res = yield self.$post('rs/user/entity', {data: self.deliver})
96
+ // let res = yield self.$post('rs/db/modifypassword', {data: self.deliver})
97
+ let res = yield self.$post('rs/db/modifypwd', {data: self.deliver})
98
+ if (res.status === 200 || res.status === 204) {
99
+ self.modify = false
100
+ self.deliver.password = ''
101
+ self.deliver.newpassword = ''
102
+ self.deliver.affirmpassword = ''
103
+ }
104
+ }
105
+
106
+ export default {
107
+ title: '菜单选择',
108
+ props: ['functions'],
109
+ data () {
110
+ return {
111
+ modify: false,
112
+ deliver: {
113
+ password: '',
114
+ newpassword: '',
115
+ affirmpassword: ''
116
+ }
117
+ }
118
+ },
119
+ computed: {
120
+ date () {
121
+ return Util.getNowDate()
122
+ }
123
+ },
124
+ methods: {
125
+ open (row) {
126
+ if (row.link) {
127
+ // this.$goto(row.link, {userid: this.functions, source: {isRead: 'modify'}}, 'home-page')
128
+ this.$goto(row.link, {f: this.functions}, 'home-page')
129
+ }
130
+ },
131
+ // 修改密码操作
132
+ close () {
133
+ this.modify = false
134
+ },
135
+ confirm () {
136
+ let gen = saveGen(this)
137
+ co(gen)
138
+ }
139
+ },
140
+ events: {
141
+ 'select-changed': function (data) {
142
+ // 事件回调内的 `this` 自动绑定到注册它的实例上
143
+ this.open(data.val)
144
+ }
145
+ }
146
+ }
147
+ </script>
148
+ <style>
149
+ /* 头部样式,大部分使用放在标签内 */
150
+ .head {
151
+ color: #fff;
152
+ height: 110px;
153
+ width: 100%;
154
+ }
155
+ /* 菜单头部与内容区域的中间的白色线 */
156
+ .whiteline {
157
+ height: 1px;
158
+ background: #fff;
159
+ margin: 0px 30px;
160
+ }
161
+ /*修改密码body界面样式*/
162
+ .modifystyle {
163
+ background: #FCFEEE;
164
+ }
165
+ .modifystyle div{
166
+ height: auto;
167
+ margin-bottom: 15px;
168
+ /*text-align: center;*/
169
+ margin-left: 20%;
170
+ }
171
+ /*bootstrap字体图标要手动调整,所以使用字体图标的span必须紧跟在input后面,负责会错位*/
172
+ .modifystyle div input + span{
173
+ top: 0!important;
174
+ right: 32%;
175
+ }
176
+ .modifystyle span{
177
+ color: red;
178
+ }
179
+ /*修改密码底部按钮部分样式*/
180
+ .footerbtn {
181
+ text-align: center;
182
+ padding: 15px;
183
+ }
184
+ .footerbtn button {
185
+ width: 100px;
186
+ margin-left: 20px;
187
+ }
188
+ </style>
@@ -18,15 +18,14 @@
18
18
  </div>
19
19
  </div>
20
20
  <div class="has-feedback form-group"
21
- :class="{'has-warning':$v.newpassword.required,'has-error':($v.newpassword.numbersAndLetter8to16 || $v.newpassword.minlength)&& !$v.newpassword.required && !$v.newpassword.chinesePassword,
22
- 'has-success': !$v.newpassword.required && !$v.newpassword.numbersAndLetter8to16&&!$v.newpassword.minlength && !$v.newpassword.chinesePassword}">
21
+ :class="{'has-warning':$v.newpassword.required,'has-error':$v.newpassword.strongpassword && !($v.newpassword.required),
22
+ 'has-success': !$v.newpassword.required && !$v.newpassword.strongpassword }">
23
23
  <label for="newpassword" class="col-sm-4 col-sm-offset-1 control-label">新的密码:&nbsp;&nbsp;</label>
24
24
  <div class="col-sm-4">
25
- <input type="password" v-model="deliver.newpassword" class="form-control" id="newpassword" v-validate:newpassword='{required:true, numbersAndLetter8to16: true, minlength: 6,chinesePassword: true}'>
26
- <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.newpassword.required && !$v.newpassword.minlength && !($v.newpassword.numbersAndLetter8to16 && !($v.newpassword.required)) && !($v.newpassword.chinesePassword) "></span>
25
+ <input type="password" v-model="deliver.newpassword" class="form-control" id="newpassword" v-validate:newpassword='{required:true, strongpassword: true}'>
26
+ <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.newpassword.required && !($v.newpassword.strongpassword && !($v.newpassword.required))"></span>
27
27
  <span v-if="$v.newpassword.required">不能为空</span>
28
- <span v-if="($v.newpassword.numbersAndLetter8to16||$v.newpassword.minlength) && !($v.newpassword.required&&$v.newpassword.minlength)">密码必须是8~16位数字与字母组合</span>
29
- <span v-if="$v.newpassword.chinesePassword">密码不能包含中文</span>
28
+ <span v-if="$v.newpassword.strongpassword && !($v.newpassword.required)">密码必须包含英文大小写、阿拉伯数字、字符</span>
30
29
  </div>
31
30
  </div>
32
31
  <div class="has-feedback form-group"
@@ -62,17 +61,19 @@
62
61
  // let res = yield self.$post('rs/db/modifypassword', {data: self.deliver})
63
62
  // let res = yield self.$resetpost('/rs/db/modifypwd', {data: self.deliver})
64
63
  // Util.f.password = self.deliver.newpassword
65
- let res = yield self.$resetpost('/rs/user/modifypwd', {data: self.deliver }, {resolveMsg: null,rejectMsg: null})
64
+ let res = yield self.$resetpost('/rs/user/modifypwd', {data: self.deliver }, { resolveMsg: null, rejectMsg: '请求错误,修改密码失败!' })
66
65
  self.$login.f.password = self.deliver.newpassword
67
- console.log(res.data)
68
- if (res.data == true) {
69
- self.$showAlert('修改成功!', 'success', 2000)
70
- self.deliver.password = ''
71
- self.deliver.newpassword = ''
72
- self.deliver.affirmpassword = ''
73
- self.show = false
74
- } else {
75
- self.$showMessage(res.data)
66
+ if (res.data) {
67
+ console.log("修改密码返回:" , res.data)
68
+ if (res.data===true || res.data==='true') {
69
+ self.deliver.password = ''
70
+ self.deliver.newpassword = ''
71
+ self.deliver.affirmpassword = ''
72
+ self.show = false
73
+ self.$showAlert("修改密码成功", 'success', 2000)
74
+ } else {
75
+ self.$showAlert("修改密码失败,原因:" + res.data.msg, 'warning', 2000)
76
+ }
76
77
  }
77
78
  }
78
79
  export default {
@@ -0,0 +1,211 @@
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
+ :mustselect="mustselect"
6
+ :initresid='initres.org'></right-tree>
7
+ </div>
8
+ <div :class="style" v-show="departmentshow">
9
+ <label class="font_normal_body">部&emsp;&emsp;门</label>
10
+ <res-select restype='department' v-ref:department
11
+ @res-select="getdep"
12
+ :parentresid="depresid"
13
+ :specialquery="specialquery"
14
+ :initresid='initres.dep'
15
+ :mustselect="mustselect"
16
+ :is-mul="mul">
17
+ </res-select>
18
+ </div>
19
+ <div :class="style" v-show="operatorshow && (!cascade)">
20
+ <label class="font_normal_body">人&emsp;&emsp;员</label>
21
+ <res-select restype='user'
22
+ @res-select="getuser"
23
+ :parentresid="depresid"
24
+ :initresid='initres.user'
25
+ :mustselect="mustselect"
26
+ :is-mul="mul">
27
+ </res-select>
28
+ </div>
29
+ <div :class="style" v-show="operatorshow && cascade">
30
+ <label class="font_normal_body">人&emsp;&emsp;员</label>
31
+ <res-select restype='user'
32
+ @res-select="getuser"
33
+ :parentresid="userresid"
34
+ :initresid='initres.user'
35
+ :mustselect="mustselect"
36
+ :is-mul="mul">
37
+ </res-select>
38
+ </div>
39
+ <div :class="style " v-if="sliceareashow" >
40
+ <label class="font_normal_body">片&emsp;&emsp;区</label>
41
+ <v-select :value.sync="slice_area" v-model="slice_area" @change='getarea'
42
+ :options='sliceArea' placeholder='片区/管理站' filer-key="name"
43
+ close-on-select v-ref:slice>
44
+ </v-select>
45
+ </div>
46
+ </template>
47
+ <script>
48
+ import plugin from '../../plugins/GetLoginInfoService'
49
+ import { HttpResetClass } from 'vue-client'
50
+ export default {
51
+ title: '资源选择测试',
52
+ props: {
53
+ style: {
54
+ type: String,
55
+ default: 'col-sm-2 form-group'
56
+ },
57
+ mul: {
58
+ type: Boolean,
59
+ default: true
60
+ },
61
+ //是否只查询营业厅
62
+ specialquery: {
63
+ type: Boolean,
64
+ default: false
65
+ },
66
+ //初始值
67
+ initres: {
68
+ type: Object,
69
+ default: null,
70
+ },
71
+ showComponent:{
72
+ default:['company','department','operator','slicearea']
73
+ },
74
+ //人员是否和部门关联
75
+ cascade: {
76
+ type: Boolean,
77
+ default: true
78
+ },
79
+ selectin: {
80
+ type: Boolean,
81
+ default: true
82
+ }
83
+ },
84
+ data () {
85
+ return {
86
+ orgresid:[this.$login.f.orgid],
87
+ depresid:[],
88
+ userresid:[],
89
+ operatorsid: [],
90
+ sliceArea: [],
91
+ slice_area:[],
92
+ companyshow:false,
93
+ departmentshow:false,
94
+ operatorshow:false,
95
+ sliceareashow:false,
96
+ mustselect:false,
97
+ obj:{
98
+ orgnames:[],
99
+ depnames:[],
100
+ operatornames:[]
101
+ }
102
+ }
103
+ },
104
+ ready () {
105
+ if(this.$login.r.includes('部门默认选中')&& this.selectin){
106
+ this.initres.dep = [this.$login.f.depids]
107
+ }
108
+ if(this.$login.r.includes('人员默认选中')&& this.selectin){
109
+ this.initres.user = [this.$login.f.id]
110
+ if(this.$login.r.includes('人员强制选中')){
111
+ this.mustselect = true
112
+ }
113
+ }
114
+ this.initComponent();
115
+ this.initAreas(this.$login.f.orgid)
116
+ },
117
+ methods:{
118
+ initComponent(){
119
+ let self=this;
120
+ this.showComponent.find((item)=>{
121
+ switch(item){
122
+ case 'company': self.companyshow=true; break;
123
+ case 'department': self.departmentshow=true; break;
124
+ case 'operator': self.operatorshow=true; break;
125
+ case 'slicearea': self.sliceareashow=true; break;
126
+ }
127
+ })
128
+ },
129
+ // 初始化片区
130
+ async initAreas (val) {
131
+ if (val) {
132
+ let http = new HttpResetClass()
133
+ let getAllArea = await http.load('POST', '/rs/search', {
134
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
135
+ userid: this.$login.f.id
136
+ }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
137
+ let arr = getAllArea.data.filter((res) => {
138
+ if(Array.isArray(val)){
139
+ for (let i = 0; i <val.length ; i++) {
140
+ if(res.parentid == val[i]){
141
+ return true
142
+ }
143
+ }
144
+ }
145
+ return res.parentid == val
146
+ })
147
+ this.sliceArea = []
148
+ this.slice_area = []
149
+ arr.forEach((res) => {
150
+ this.sliceArea.push({label: res.name, value: {name: res.name, code:res.number}})
151
+ })
152
+ }
153
+ },
154
+ returnOrg(ids){
155
+ let limit = this.$login.r.includes('数据授权限定')
156
+
157
+ let condition;
158
+ if(this.depresid.length > 0)
159
+ condition = plugin.convertToIn(this.depresid);
160
+ else
161
+ condition = this.$login.f.orgid;
162
+ if(this.userresid.length > 0){
163
+ condition += plugin.convertToIn(this.userresid);
164
+ } else {
165
+ if (limit) {
166
+ let depids = []
167
+ for (let row of this.$refs.department.resoptions) {
168
+ depids.push(row.value)
169
+ }
170
+ let depid = depids.length ? plugin.convertToIn(depids) : `('')`
171
+ condition += depid;
172
+ }
173
+ }
174
+ if(ids && ids.length > 0){
175
+ condition += plugin.convertToIn(ids);
176
+ }
177
+ if(this.slice_area.length>0){
178
+ condition += "'" + this.slice_area[0].name+"'"
179
+ }
180
+ this.$dispatch('re-res',condition,this.obj)
181
+ },
182
+ getorg (obj) {
183
+ this.depresid=obj.resids
184
+ this.obj.orgnames = obj.res
185
+ this.initAreas(obj.resids)
186
+ this.returnOrg();
187
+ },
188
+ getdep(obj,val) {
189
+ this.obj.depnames = val
190
+ this.userresid=obj
191
+ this.returnOrg();
192
+ },
193
+ getuser(obj,val) {
194
+ this.obj.operatornames = val
195
+ this.operatorsid = obj
196
+ this.returnOrg(obj);
197
+ },
198
+ getarea(val) {
199
+ this.slice_area=val
200
+ if(this.operatorsid){
201
+ this.returnOrg(this.operatorsid);
202
+ }else{
203
+ this.returnOrg();
204
+ }
205
+ }
206
+ },
207
+ watch: {
208
+
209
+ }
210
+ }
211
+ </script>