system-clients 3.2.62 → 3.2.63-jingwei

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.
@@ -1,125 +1,125 @@
1
- <template>
2
- <div>
3
- <validator name="v">
4
- <modal :show.sync="show" v-ref:modal backdrop="false">
5
- <header slot="modal-header" class="modal-header">
6
- <button type="button" class="close" @click="rest"><span>&times;</span></button>
7
- <h4 class="modal-title">修改密码</h4>
8
- </header>
9
- <article slot="modal-body" class="modal-body modifystyle auto form-horizontal">
10
- <div class="has-feedback form-group"
11
- :class="{'has-warning':$v.password.required,'has-error': $v.password.required,
12
- 'has-success':!$v.password.required}">
13
- <label for="password" class="col-sm-4 col-sm-offset-1 control-label">原始密码:&nbsp;&nbsp;</label>
14
- <div class="col-sm-4">
15
- <input type="password" v-model="deliver.password" class="form-control" id="password" v-validate:password="{ required: true}">
16
- <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.password.required"></span>
17
- <span v-if="$v.password.required">不能为空</span>
18
- </div>
19
- </div>
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}">
23
- <label for="newpassword" class="col-sm-4 col-sm-offset-1 control-label">新的密码:&nbsp;&nbsp;</label>
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>
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>
30
- </div>
31
- </div>
32
- <div class="has-feedback form-group"
33
- :class="{'has-warning':$v.affirmpassword.required,'has-error':$v.affirmpassword.equalValid && !($v.affirmpassword.required),
34
- 'has-success': !$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))}">
35
- <label for="affirmpassword" class="col-sm-4 col-sm-offset-1 control-label">确认密码:&nbsp;&nbsp;</label>
36
- <div class="col-sm-4">
37
- <input type="password" v-model="deliver.affirmpassword" class="form-control" id="affirmpassword" v-validate:affirmpassword="{ required: true, equalValid: deliver.newpassword }">
38
- <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))"></span>
39
- <span v-if="$v.affirmpassword.required">不能为空</span>
40
- <span v-if="$v.affirmpassword.equalValid && !($v.affirmpassword.required)">两次密码不一致 !!</span>
41
- </div>
42
- </div>
43
- </article>
44
-
45
- <footer slot="modal-footer" class="modal-footer">
46
- <button type="button" class="btn btn-success" @click='confirm' :disabled="!$v.valid">确认</button>
47
- <button type="button" class="btn btn-default" @click='rest'>取消</button>
48
- </footer>
49
- </modal>
50
- </validator>
51
- </div>
52
-
53
-
54
- </template>
55
- <script>
56
- import co from 'co'
57
- import validator from '../../plugins/validation';
58
-
59
- let saveGen = function * (self) {
60
- self.deliver.ename = self.functions.ename
61
- // let res = yield self.$post('rs/user/entity', {data: self.deliver})
62
- // let res = yield self.$post('rs/db/modifypassword', {data: self.deliver})
63
- // let res = yield self.$resetpost('/rs/db/modifypwd', {data: self.deliver})
64
- // Util.f.password = self.deliver.newpassword
65
- let res = yield self.$resetpost('/rs/user/modifypwd', {data: self.deliver }, {resolveMsg: null,rejectMsg: null})
66
- self.$login.f.password = self.deliver.newpassword
67
- if (res.data) {
68
- console.log("修改密码返回:" , res.data)
69
- // 兼容旧版ldao,旧版不返回code
70
- if (res.data.code === 200) {
71
- self.deliver.password = ''
72
- self.deliver.newpassword = ''
73
- self.deliver.affirmpassword = ''
74
- self.show = false
75
- self.$showAlert("修改密码成功", 'success', 2000)
76
- } else {
77
- // 兼容旧版ldao,旧版不返回code
78
- self.deliver.password = ''
79
- self.deliver.newpassword = ''
80
- self.deliver.affirmpassword = ''
81
- self.show = false
82
- self.$showAlert("修改密码成功", 'success', 2000)
83
- }
84
- } else {
85
- if (res.data.code) {
86
- self.$showAlert("修改密码失败,原因:" + res.data.msg, 'warning', 2000)
87
- } else {
88
- self.$showMessage(res.data)
89
- }
90
- }
91
- }
92
- export default {
93
- title: '系统管理-密码修改',
94
- data () {
95
- return {
96
- deliver: {
97
- password: '',
98
- newpassword: '',
99
- affirmpassword: ''
100
- },
101
- functions: this.$login.f
102
- }
103
- },
104
- props: ['show'],
105
- methods: {
106
- confirm () {
107
- let gen = saveGen(this)
108
- co(gen)
109
- },
110
- rest () {
111
- this.show = false
112
- this.deliver = {password: '', newpassword: '', affirmpassword: ''}
113
- }
114
- }
115
- }
116
- </script>
117
- <style>
118
- /*修改密码body界面样式*/
119
- .modifystyle {
120
- background: #FCFEEE;
121
- }
122
- .modifystyle span{
123
- color: red;
124
- }
125
- </style>
1
+ <template>
2
+ <div>
3
+ <validator name="v">
4
+ <modal :show.sync="show" v-ref:modal backdrop="false">
5
+ <header slot="modal-header" class="modal-header">
6
+ <button type="button" class="close" @click="rest"><span>&times;</span></button>
7
+ <h4 class="modal-title">修改密码</h4>
8
+ </header>
9
+ <article slot="modal-body" class="modal-body modifystyle auto form-horizontal">
10
+ <div class="has-feedback form-group"
11
+ :class="{'has-warning':$v.password.required,'has-error': $v.password.required,
12
+ 'has-success':!$v.password.required}">
13
+ <label for="password" class="col-sm-4 col-sm-offset-1 control-label">原始密码:&nbsp;&nbsp;</label>
14
+ <div class="col-sm-4">
15
+ <input type="password" v-model="deliver.password" class="form-control" id="password" v-validate:password="{ required: true}">
16
+ <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.password.required"></span>
17
+ <span v-if="$v.password.required">不能为空</span>
18
+ </div>
19
+ </div>
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}">
23
+ <label for="newpassword" class="col-sm-4 col-sm-offset-1 control-label">新的密码:&nbsp;&nbsp;</label>
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>
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>
30
+ </div>
31
+ </div>
32
+ <div class="has-feedback form-group"
33
+ :class="{'has-warning':$v.affirmpassword.required,'has-error':$v.affirmpassword.equalValid && !($v.affirmpassword.required),
34
+ 'has-success': !$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))}">
35
+ <label for="affirmpassword" class="col-sm-4 col-sm-offset-1 control-label">确认密码:&nbsp;&nbsp;</label>
36
+ <div class="col-sm-4">
37
+ <input type="password" v-model="deliver.affirmpassword" class="form-control" id="affirmpassword" v-validate:affirmpassword="{ required: true, equalValid: deliver.newpassword }">
38
+ <span class="glyphicon glyphicon-ok form-control-feedback" v-if="!$v.affirmpassword.required && !($v.affirmpassword.equalValid && !($v.affirmpassword.required))"></span>
39
+ <span v-if="$v.affirmpassword.required">不能为空</span>
40
+ <span v-if="$v.affirmpassword.equalValid && !($v.affirmpassword.required)">两次密码不一致 !!</span>
41
+ </div>
42
+ </div>
43
+ </article>
44
+
45
+ <footer slot="modal-footer" class="modal-footer">
46
+ <button type="button" class="btn btn-success" @click='confirm' :disabled="!$v.valid">确认</button>
47
+ <button type="button" class="btn btn-default" @click='rest'>取消</button>
48
+ </footer>
49
+ </modal>
50
+ </validator>
51
+ </div>
52
+
53
+
54
+ </template>
55
+ <script>
56
+ import co from 'co'
57
+ import validator from '../../plugins/validation';
58
+
59
+ let saveGen = function * (self) {
60
+ self.deliver.ename = self.functions.ename
61
+ // let res = yield self.$post('rs/user/entity', {data: self.deliver})
62
+ // let res = yield self.$post('rs/db/modifypassword', {data: self.deliver})
63
+ // let res = yield self.$resetpost('/rs/db/modifypwd', {data: self.deliver})
64
+ // Util.f.password = self.deliver.newpassword
65
+ let res = yield self.$resetpost('/rs/user/modifypwd', {data: self.deliver }, {resolveMsg: null,rejectMsg: null})
66
+ self.$login.f.password = self.deliver.newpassword
67
+ if (res.data) {
68
+ console.log("修改密码返回:" , res.data)
69
+ // 兼容旧版ldao,旧版不返回code
70
+ if (res.data.code === 200) {
71
+ self.deliver.password = ''
72
+ self.deliver.newpassword = ''
73
+ self.deliver.affirmpassword = ''
74
+ self.show = false
75
+ self.$showAlert("修改密码成功", 'success', 2000)
76
+ } else {
77
+ // 兼容旧版ldao,旧版不返回code
78
+ self.deliver.password = ''
79
+ self.deliver.newpassword = ''
80
+ self.deliver.affirmpassword = ''
81
+ self.show = false
82
+ self.$showAlert("修改密码成功", 'success', 2000)
83
+ }
84
+ } else {
85
+ if (res.data.code) {
86
+ self.$showAlert("修改密码失败,原因:" + res.data.msg, 'warning', 2000)
87
+ } else {
88
+ self.$showMessage(res.data)
89
+ }
90
+ }
91
+ }
92
+ export default {
93
+ title: '系统管理-密码修改',
94
+ data () {
95
+ return {
96
+ deliver: {
97
+ password: '',
98
+ newpassword: '',
99
+ affirmpassword: ''
100
+ },
101
+ functions: this.$login.f
102
+ }
103
+ },
104
+ props: ['show'],
105
+ methods: {
106
+ confirm () {
107
+ let gen = saveGen(this)
108
+ co(gen)
109
+ },
110
+ rest () {
111
+ this.show = false
112
+ this.deliver = {password: '', newpassword: '', affirmpassword: ''}
113
+ }
114
+ }
115
+ }
116
+ </script>
117
+ <style>
118
+ /*修改密码body界面样式*/
119
+ .modifystyle {
120
+ background: #FCFEEE;
121
+ }
122
+ .modifystyle span{
123
+ color: red;
124
+ }
125
+ </style>
@@ -0,0 +1,141 @@
1
+ <template>
2
+ <div class='over'>
3
+ <tree :model='functions' :flagres="false" :is-click="false" v-ref:tree @toggle="toggled" >
4
+ <span partial class="row" :class="{ 'tree-img': isFolder(row), 'tree-span': !isFolder(row) }">
5
+ <div class="col-sm-2" >
6
+ <img v-if="isFolder(row)" :src="row.data.icon" alt="">
7
+ </div>
8
+ <div class="col-sm-8" style="padding-left:6%;text-align: left" title="{{row.data.name}}">{{row.data.name}}
9
+ <span class="unreadResumeWarning11" v-show="row.data.name === '微信管理' && $parent.$parent.wechatnub"></span>
10
+ <span class="unreadResumeWarning" v-show="row.data.name === '投诉咨询' && $parent.$parent.wechatnub">{{$parent.$parent.wechatnub}}</span>
11
+ </div>
12
+ </span>
13
+ </tree>
14
+ </div>
15
+ </template>
16
+ <script>
17
+ import Vue from 'vue'
18
+
19
+ export default {
20
+ props: ['functions', 'userid','tabs'],
21
+ title: '左侧树菜单',
22
+ data () {
23
+ return {
24
+ index: -1,
25
+ wechatnub: 0,
26
+ name: null,
27
+ tbcg:[]
28
+ }
29
+ },
30
+ methods: {
31
+ setNum(val){
32
+ console.log("=====",val)
33
+ this.wechatnub = val
34
+ },
35
+ open (row) {
36
+ if (row.data.name === '资源管理') {
37
+ this.$parent.changeMain(row.data.id)
38
+ return
39
+ }
40
+ console.log(row.data.navigate)
41
+ if (row.data.navigate) {
42
+
43
+ let isExist = false
44
+ this.tbcg.forEach((tab) => {
45
+ if(tab.comp.name == row.data.link) {
46
+ isExist = true
47
+ }
48
+ })
49
+ if (!isExist){
50
+ this.$goto('embbed-page', {domainName: row.data.navigate, title: row.data.name, compName: row.data.link, login: Vue.$login, param: Vue.$appdata}, 'main')
51
+ }else {
52
+ console.log(isExist,'aa')
53
+ this.$emit('isnodo',row.data.link)
54
+ }
55
+ } else if (row.data.link) {
56
+ let isExist = false
57
+ this.tbcg.forEach((tab) => {
58
+ if(tab.comp.name == row.data.link) {
59
+ isExist = true
60
+ }
61
+ })
62
+ if (!isExist){
63
+ this.$goto(row.data.link, {f: this.functions}, 'main')
64
+ }else {
65
+ console.log(isExist,'saaa')
66
+ this.$emit('isnodo',row.data.link)
67
+ }
68
+ }
69
+ },
70
+ changeSelect(name) {
71
+ if (!name) {
72
+ this.$refs.tree.selectStore.select(null)
73
+ return
74
+ }
75
+ this.name = name
76
+ let index = this.selfFindIndex(name)
77
+ this.index = index
78
+ // 当前激活页签有,index为-1,说明菜单收缩
79
+ this.changeSelected(index)
80
+ },
81
+ selfFindIndex (name) {
82
+
83
+ return this.$refs.tree.toNode.findIndex((item) => {
84
+ return item.data.link === name
85
+ })
86
+ },
87
+ changeSelected (index) {
88
+
89
+ if (index === -1) {
90
+ this.$refs.tree.selectStore.select(null)
91
+ }else {
92
+ this.$refs.tree.selectStore.select(this.$refs.tree.toNode[index])
93
+ }
94
+
95
+ },
96
+ toggled () {
97
+
98
+ if (this.name && this.index === -1) {
99
+ let index = this.selfFindIndex(this.name)
100
+ if (index !== -1) {
101
+ this.changeSelected(index)
102
+ }
103
+ }
104
+ }
105
+ },
106
+ events: {
107
+ 'select-changed': function (data) {
108
+
109
+ // 事件回调内的 `this` 自动绑定到注册它的实例上
110
+ this.open(data.val)
111
+ }
112
+ },
113
+ watch:{
114
+ 'tabs'(val){
115
+ this.tbcg = val
116
+ }
117
+ }
118
+ }
119
+ </script>
120
+
121
+ <style>
122
+
123
+ .unreadResumeWarning11 {
124
+ width: 10px;
125
+ height: 10px;
126
+ border-radius: 7px;
127
+ background-color: #FF3B30;
128
+ position: absolute;
129
+ left: 70px;
130
+ top: 0px;
131
+ }
132
+ .unreadResumeWarning {
133
+ width: 20px;
134
+ height: 20px;
135
+ border-radius: 7px;
136
+ background-color: #FF3B30;
137
+ position: absolute;
138
+ left: 60px;
139
+ top: 0px;
140
+ }
141
+ </style>