system-clients 3.1.89-aode → 3.1.91

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 (45) hide show
  1. package/.eslintrc.js +16 -16
  2. package/.gradle/{5.5 → 5.2.1}/gc.properties +0 -0
  3. package/.gradle/vcs-1/gc.properties +0 -0
  4. package/build/webpack.base.conf.js +85 -78
  5. package/package.json +4 -4
  6. package/src/components/Main.vue +50 -10
  7. package/src/components/TabButton.vue +201 -0
  8. package/src/components/Tabs.vue +67 -0
  9. package/src/components/equipment/EquipmentManage.vue +65 -65
  10. package/src/components/equipment/PcAdd.vue +5 -5
  11. package/src/components/equipment/PcList.vue +5 -5
  12. package/src/components/equipment/PhoneAdd.vue +4 -4
  13. package/src/components/equipment/PhoneList.vue +4 -4
  14. package/src/components/equipment/PosAdd.vue +322 -137
  15. package/src/components/equipment/PosList.vue +294 -164
  16. package/src/components/equipment/PosManage.vue +138 -67
  17. package/src/components/equipment/PosManageBoth.vue +125 -0
  18. package/src/components/equipment/PosParamAdd.vue +234 -0
  19. package/src/components/equipment/PosParamList.vue +121 -0
  20. package/src/components/equipment/PosParamManage.vue +51 -0
  21. package/src/components/parammanage/ParamManage.vue +2 -2
  22. package/src/components/parammanage/ParamPage.vue +7 -7
  23. package/src/components/parammanage/SinglePage.vue +4 -4
  24. package/src/components/server/ImageVieweTest.vue +56 -0
  25. package/src/components/server/ImageViewer.vue +350 -0
  26. package/src/components/server/Login.vue +717 -693
  27. package/src/components/server/PcdBuildingSelect.vue +241 -0
  28. package/src/components/server/ResSelect.vue +5 -0
  29. package/src/components/server/ResSelectGroup.vue +155 -118
  30. package/src/components/server/RightTree.vue +348 -343
  31. package/src/plugins/GetLoginInfoService.js +514 -514
  32. package/src/styles/less/aofeng/standard.less +446 -60
  33. package/src/styles/less/aofeng/themeOne/BinaryTemplate.less +13 -13
  34. package/src/styles/less/manageStyle/manageStyle/manageChile.less +180 -0
  35. package/src/styles/less/manageStyle/manageStyle/manageStyle.less +1102 -0
  36. package/src/styles/less/manageStyle/manageStyle/safeStyle.less +498 -0
  37. package/src/styles/less/tables.less +50 -0
  38. package/src/styles/less/type.less +16 -3
  39. package/src/styles/less/variables.less +6 -3
  40. package/src/system.js +93 -83
  41. package/static/newStyle/about-us.png +0 -0
  42. package/yarn-error.log +6896 -0
  43. package/.gradle/5.5/fileChanges/last-build.bin +0 -0
  44. package/.gradle/5.5/fileHashes/fileHashes.lock +0 -0
  45. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
package/.eslintrc.js CHANGED
@@ -1,16 +1,16 @@
1
- module.exports = {
2
- root: true,
3
- // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style
4
- extends: 'standard',
5
- // required to lint *.vue files
6
- plugins: [
7
- 'eslint-plugin-html'
8
- ],
9
- // add your custom rules here
10
- 'rules': {
11
- // allow paren-less arrow functions
12
- 'arrow-parens': 0,
13
- // allow debugger during development
14
- 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0
15
- }
16
- }
1
+ // module.exports = {
2
+ // root: true,
3
+ // // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style
4
+ // extends: 'standard',
5
+ // // required to lint *.vue files
6
+ // plugins: [
7
+ // 'eslint-plugin-html'
8
+ // ],
9
+ // // add your custom rules here
10
+ // 'rules': {
11
+ // // allow paren-less arrow functions
12
+ // 'arrow-parens': 0,
13
+ // // allow debugger during development
14
+ // 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0
15
+ // }
16
+ // }
File without changes
File without changes
@@ -1,78 +1,85 @@
1
- var path = require('path')
2
- var cssLoaders = require('./css-loaders')
3
- var projectRoot = path.resolve(__dirname, '../')
4
-
5
- module.exports = {
6
- entry: {
7
- app: './src/main.js'
8
- },
9
- output: {
10
- path: path.resolve(__dirname, '../dist/static'),
11
- publicPath: 'static/',
12
- filename: '[name].js'
13
- },
14
- resolve: {
15
- extensions: ['', '.js', '.vue'],
16
- fallback: [path.join(__dirname, '../node_modules')],
17
- alias: {
18
- 'test': path.resolve(__dirname, '../test'),
19
- 'src': path.resolve(__dirname, '../src')
20
- }
21
- },
22
- resolveLoader: {
23
- fallback: [path.join(__dirname, '../node_modules')]
24
- },
25
- module: {
26
- loaders: [
27
- {
28
- test: /\.vue$/,
29
- loader: 'vue'
30
- },
31
- {
32
- test: /\.js$/,
33
- loader: 'babel',
34
- include: [
35
- `${projectRoot}\\src`,
36
- `${projectRoot}\\build`,
37
- `${projectRoot}\\examples`,
38
- `${projectRoot}\\test`,
39
- `${projectRoot}\\node_modules\\vue-client\\src`,
40
- `${projectRoot}\\node_modules\\vue-strap\\src`
41
- ],
42
- options: {
43
- presets: ['es2015']
44
- }
45
- },
46
- {
47
- test: /\.json$/,
48
- loader: 'json'
49
- },
50
- {
51
- test: /\.html$/,
52
- loader: 'vue-html'
53
- },
54
- {
55
- test: /\.less$/,
56
- loader: 'style!css!less'
57
- },
58
- {
59
- test: /\.(png|jpg|gif|svg|woff2?|eot|ttf)(\?.*)?$/,
60
- loader: 'url',
61
- query: {
62
- limit: 10000,
63
- name: '[name].[ext]?[hash:7]'
64
- }
65
- }
66
- ]
67
- },
68
- vue: {
69
- loaders: cssLoaders({
70
- sourceMap: false,
71
- extract: false
72
- })
73
- },
74
- plugins: [],
75
- eslint: {
76
- formatter: require('eslint-friendly-formatter')
77
- }
78
- }
1
+ var path = require('path')
2
+ var cssLoaders = require('./css-loaders')
3
+ var projectRoot = path.resolve(__dirname, '../')
4
+
5
+ module.exports = {
6
+ entry: {
7
+ app: './src/main.js'
8
+ },
9
+ output: {
10
+ path: path.resolve(__dirname, '../dist/mergeUser'),
11
+ publicPath: 'mergeUser/',
12
+ filename: '[name].js'
13
+ },
14
+ resolve: {
15
+ extensions: ['', '.js', '.vue'],
16
+ fallback: [path.join(__dirname, '../node_modules')],
17
+ alias: {
18
+ 'src': path.resolve(__dirname, '../src'),
19
+ 'test': path.resolve(__dirname, '../test')
20
+ }
21
+ },
22
+ resolveLoader: {
23
+ fallback: [path.join(__dirname, '../node_modules')]
24
+ },
25
+ module: {
26
+ loaders: [
27
+ {
28
+ test: /\.vue$/,
29
+ loader: 'vue'
30
+ },
31
+ {
32
+ test: /\.js$/,
33
+ loader: 'babel',
34
+ include: [
35
+ /src/,
36
+ /build/,
37
+ /examples/,
38
+ /test/,
39
+ /node_modules\/vue-client\/src/,
40
+ /node_modules\/vue-strap\/src/,
41
+ /node_modules\/system-clients\/src/,
42
+ /node_modules\/ldap-clients\/src/,
43
+ /node_modules\/address-client\/src/
44
+ ],
45
+ options: {
46
+ presets: ['es2015']
47
+ }
48
+ },
49
+ {
50
+ test: /\.json$/,
51
+ loader: 'json'
52
+ },
53
+ {
54
+ test: /\.html$/,
55
+ loader: 'vue-html'
56
+ },
57
+ {
58
+ test: /\.less$/,
59
+ loader: 'style!css!less'
60
+ },
61
+ {
62
+ test: /\.css$/,
63
+ loader: 'style!css'
64
+ },
65
+ {
66
+ test: /\.(png|jpg|gif|svg|woff2?|eot|ttf)(\?.*)?$/,
67
+ loader: 'url',
68
+ query: {
69
+ limit: 10000,
70
+ name: '[name].[ext]?[hash:7]'
71
+ }
72
+ }
73
+ ]
74
+ },
75
+ vue: {
76
+ loaders: cssLoaders({
77
+ sourceMap: false,
78
+ extract: false
79
+ })
80
+ },
81
+ plugins: [],
82
+ eslint: {
83
+ formatter: require('eslint-friendly-formatter')
84
+ }
85
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "system-clients",
3
- "version": "3.1.89-aode",
3
+ "version": "3.1.91",
4
4
  "description": "系统基础框架",
5
5
  "main": "src/index.js",
6
6
  "directories": {
@@ -19,6 +19,7 @@
19
19
  "dependencies": {
20
20
  "base64-js": "^1.3.0",
21
21
  "js-base64": "^2.4.9",
22
+ "jsencrypt": "^3.0.0-rc.1",
22
23
  "less": "^2.7.1",
23
24
  "less-loader": "^2.2.3",
24
25
  "src": "^1.1.2",
@@ -75,7 +76,7 @@
75
76
  "style": "0.0.3",
76
77
  "style-loader": "^0.20.3",
77
78
  "url-loader": "^0.5.7",
78
- "vue-client": "1.21.60",
79
+ "vue-client": "1.24.33",
79
80
  "vue-hot-reload-api": "^1.2.0",
80
81
  "vue-html-loader": "^1.0.0",
81
82
  "vue-loader": "^8.2.1",
@@ -83,9 +84,8 @@
83
84
  "vue-router": "^0.7.13",
84
85
  "vue-strap": "^1.0.9",
85
86
  "vue-style-loader": "^1.0.0",
86
- "vue-validator": "^3.0.0-alpha.2",
87
+ "vue-validator": "2.1.7",
87
88
  "webpack": "^1.12.2",
88
- "jsencrypt": "3.0.0-rc.1",
89
89
  "webpack-dev-middleware": "^1.4.0",
90
90
  "webpack-hot-middleware": "^2.6.0",
91
91
  "webpack-merge": "^0.8.3"
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div @click="hindsetting1()">
2
+ <div @click="hindsetting1()" :class="{'with-watermark':showwatermakeflag}">
3
3
  <!-- <div class="system-main" id="box" v-el:box v-if="!isManger">-->
4
4
  <!-- <div class="system-logo" style="height: auto">-->
5
5
  <!-- <img :src="imgs.logoimg" alt=""/>-->
@@ -57,14 +57,12 @@
57
57
  <!-- </div>-->
58
58
  <!-- </div>-->
59
59
  <div class='flex-row system-main' id="box" v-el:box v-if="!isManger">
60
-
61
60
  <div class="auto " :class="{'login-operator1':$refs.mic.tabs.length === 0,'login-operator':$refs.mic.tabs.length != 0}">
62
- <span class="glyphicon glyphicon-asterisk" style="color:#a1d0f5"></span>
63
- <span>组织编码:</span>
64
- <label style="margin-right:14px;">{{$login.f.number}}</label>
65
- <span class="glyphicon glyphicon-user" style="color:#a1d0f5"></span>
66
- <span>登录人:</span>
67
- <label>{{orgpathnames}}</label>
61
+ <span>
62
+ <img
63
+ src="../assets/people.png" height="15" width="15">
64
+ 登录人:</span>
65
+ <label>{{orgpathnames}}</label>
68
66
  </div>
69
67
  <div class="system-left tree-flex" :class="{'tree-flex-icon': !treeOrIcon}" id="top" v-el:top >
70
68
  <div class="system-left-chi" :class="{'system-left-icon': !treeOrIcon}" >
@@ -123,6 +121,47 @@
123
121
  import vue from 'vue'
124
122
  import co from 'co'
125
123
 
124
+ let getwartermakr = async function(self){
125
+ let param = {
126
+ tablename:'t_singlevalue',
127
+ condition: " 1=1 and name=\'水印内容\'"
128
+ };
129
+ let result =await self.$resetpost('rs/sql/saleSingleTable',{data:param},{resolveMsg: null, rejectMsg: null});
130
+ if(result && result.data.length>0){
131
+ self.showwatermakeflag = true;
132
+ createWaterMark(result.data[0].value);
133
+ }else{
134
+ self.showwatermakeflag = false;
135
+ }
136
+ }
137
+
138
+ let createWaterMark = function(userName){
139
+ let style;
140
+ if (style) style.remove();
141
+ let width = window.parseInt(document.body.clientWidth);
142
+ let canvasWidth = width / window.parseInt(width / 320);
143
+ let fontFamily = window.getComputedStyle(document.body)["font-family"];
144
+ let canvas = document.createElement("canvas");
145
+ canvas.width = canvasWidth;
146
+ canvas.height = 200;
147
+ let ctx = canvas.getContext("2d");
148
+ ctx.rotate((-20 * Math.PI) / 180);
149
+ ctx.font = `20px ${fontFamily}`;
150
+ ctx.fillStyle = "rgba(8,8,8,.1)";
151
+ ctx.fillText(userName, 50, 200);
152
+ let imgSrc = canvas.toDataURL("image/png");
153
+ style = document.createElement("style");
154
+ style.innerHTML = `.with-watermark:before{
155
+ content: "";
156
+ width: 100%;
157
+ height: 100%;
158
+ display: block;
159
+ position: absolute;
160
+ background-image: url("${imgSrc}");
161
+ }`;
162
+ (document.head.append || document.head.appendChild).apply(document.head, [style]);
163
+ }
164
+
126
165
  window.onunload = () => {
127
166
  vue.http({url: `rs/user/update/${this.$login.f.ename}`, method: 'GET'})
128
167
  }
@@ -152,8 +191,8 @@
152
191
  tabs:[], //已初始化页签数组
153
192
  selecttab:'',
154
193
  setting:true,
155
- srcsetting:'../../static/newStyle/setting.png'
156
-
194
+ srcsetting:'../../static/newStyle/setting.png',
195
+ showwatermakeflag:false,
157
196
  // headerHint: true, // 右侧顶部提示信息
158
197
  // value: 25645.26,
159
198
  // AddChangeMsgShow: false,
@@ -161,6 +200,7 @@
161
200
  }
162
201
  },
163
202
  ready () {
203
+ getwartermakr(this);
164
204
  let component = this.$login.getUrlCompileParames('component')
165
205
  if (component) {
166
206
  this.isManger = true
@@ -0,0 +1,201 @@
1
+ <template>
2
+ <div class='flex foot_tabset1'>
3
+ <!-- Nav tabs -->
4
+ <ul class="nav nav-{{navStyle}}" role="tablist" style="margin-left: 1%">
5
+ <li style="margin-right: 10px;height: 100%"
6
+ :id="'vc-tabset-li-'+attach +'-'+$index"
7
+ v-for="r in renderData"
8
+ @click.prevent="handleTabListClick($index, r)"
9
+ :disabled="r.disabled"
10
+ >
11
+ <button v-if="button" class="button_new" style="width: max-content" v-bind:class="{
12
+ 'btn-succ': ($index === active),
13
+ 'disabled': r.disabled
14
+ }">
15
+ <slot name="header">
16
+ {{ r.header }}
17
+ </slot>
18
+ <!-- 关闭按钮 -->
19
+ <span class="glyphicon glyphicon-remove" style="margin-left: 15px;" @click="deletetTab(r)" v-if="close"
20
+ :id="'vc-tabset-close-'+attach +'-'+$index"></span>
21
+ </button>
22
+ <span v-if="!button" v-bind:class="{
23
+ 'span-active': ($index === active),
24
+ 'span-disable': ($index !== active)
25
+ }">
26
+ <slot name="header">
27
+ {{ r.header }}
28
+ </slot>
29
+ <!-- 关闭按钮 -->
30
+ <span class="glyphicon glyphicon-remove" style="margin-left: 15px;" @click="deletetTab(r)" v-if="close"
31
+ :id="'vc-tabset-close-'+attach +'-'+$index"></span>
32
+ </span>
33
+
34
+ </li>
35
+ </ul>
36
+
37
+ <!-- Tab panes -->
38
+ <div class="tab-content span" v-el:tab-content>
39
+ <slot></slot>
40
+ </div>
41
+ </div>
42
+ </template>
43
+
44
+ <script>
45
+ import {remove} from 'vue-client/src/stores/Remove.js'
46
+
47
+ export default {
48
+ props: {
49
+ navStyle: {
50
+ type: String,
51
+ default: 'tabs'
52
+ },
53
+ effect: {
54
+ type: String,
55
+ default: 'fadein'
56
+ },
57
+ active: {
58
+ type: Number,
59
+ default: 0
60
+ },
61
+ close: {
62
+ type: Boolean,
63
+ default: false
64
+ },
65
+ button: {
66
+ type: Boolean,
67
+ default: true
68
+ },
69
+ attach: {
70
+ type: String,
71
+ default: 'vuestrap'
72
+ },
73
+ content: {}
74
+ },
75
+ ready() {
76
+ remove.$on('remove', (name) => {
77
+ console.log('tabset收$on 到的名字为:', name)
78
+ this.$removeTab(name)
79
+ })
80
+ },
81
+ data() {
82
+ return {
83
+ // 数据格式:{comp, header,disabled}
84
+ // - comp: 当前页签对应的tab组件
85
+ renderData: []
86
+ }
87
+ },
88
+ methods: {
89
+ handleTabListClick(index, el) {
90
+ // 没有打开过, 则添加显示
91
+ this.$dispatch('tab-changed')
92
+ if (!this.$parent.show.includes(el.header)) {
93
+ this.$parent.show.push(el.header)
94
+ }
95
+ if (el.comp._scope && el.comp._scope.tab) {
96
+ this.$dispatch('tab-changed', el.comp._scope.tab.comp.name)
97
+ }
98
+ if (!el.disabled) this.active = index
99
+ },
100
+ // deletetab函数为自己添加
101
+ deletetTab(el) {
102
+ this.$removeTab(el.comp._scope.tab.comp.name)
103
+ remove.$emit('delete', el.comp._scope.tab.comp.name)
104
+ },
105
+ // 根据删除也下标,修改所有页签的下标
106
+ modifyAllIndex(index) {
107
+ let cur = this.active
108
+ this.$nextTick(() => {
109
+ // 关闭页签以后的多有页签的的下标向前挪动一位,之前的页签不动
110
+ for (var i = index; i < this.renderData.length; i++) {
111
+ this.renderData[i].comp.index -= 1
112
+ }
113
+ // 修改激活页
114
+ // 获取当前激活页签下标,关闭在当前激活页之后(包含当前激活页),当前激活页下标不变
115
+ // 当关闭当前激活页之前(激活页向前移动一位)
116
+ if (this.active > index || this.active === this.renderData.length) {
117
+ this.active = cur - 1
118
+ } else if (cur === 0) {
119
+ this.active = 0
120
+ } else {
121
+ this.active = cur
122
+ }
123
+ if (this.active === -1) {
124
+ this.$dispatch('tab-changed', null)
125
+ } else {
126
+ this.$dispatch('tab-changed', this.renderData[this.active].comp._scope.tab.comp.name)
127
+ }
128
+ })
129
+ }
130
+ },
131
+ events: {
132
+ 'delete'(index) {
133
+ this.modifyAllIndex(index)
134
+ }
135
+ }
136
+ }
137
+ </script>
138
+
139
+ <style scoped>
140
+ ul > li > a {
141
+ position: relative;
142
+ }
143
+
144
+ ul > li > a > span {
145
+ display: none;
146
+ }
147
+
148
+ .span-active {
149
+ width: max-content;
150
+ border-bottom: 3px solid #5ac0d9;
151
+ height: 100%;
152
+ display: inline-block;
153
+ font-size: 1.5rem;
154
+ color: #666;
155
+ font-weight: 550;
156
+ padding: 0px 10px;
157
+ padding-top: 3px;
158
+ vertical-align: bottom;
159
+ }
160
+
161
+ .span-disable {
162
+ width: max-content;
163
+ height: 100%;
164
+ display: inline-block;
165
+ font-size: 1.5rem;
166
+ color: #666;
167
+ font-weight: 550;
168
+ padding: 0px 10px;
169
+ padding-top: 3px;
170
+ vertical-align: bottom;
171
+ }
172
+
173
+ /*ul > li > a:hover > span {*/
174
+ /*display: initial;*/
175
+ /*position: absolute;*/
176
+ /*right: 0;*/
177
+ /*top: 35%;*/
178
+ /*border: 1px solid #EAEAEA;*/
179
+ /*}*/
180
+ /*ul > li > a:hover > span:hover {*/
181
+ /*border: 1px solid #EAEAEA;*/
182
+ /*color: #5cb95c;*/
183
+ /*}*/
184
+ ul > li > button {
185
+ background-color: #FFFFFF;
186
+ border-radius: 4px;
187
+ color: #999;
188
+ border: 1px solid #5cb95c;
189
+ }
190
+
191
+ .btn-succ {
192
+ background-color: #6aa6e2;
193
+ border-radius: 4px;
194
+ color: #fff;
195
+ }
196
+
197
+ .foot_tabset1 > .nav {
198
+ /*overflow-x: scroll;*/
199
+ white-space: nowrap;
200
+ }
201
+ </style>
@@ -0,0 +1,67 @@
1
+ <template>
2
+ <div role="tabpanel" class="tab-pane"
3
+ v-bind:class="{hide:!show}"
4
+ v-show="show"
5
+ :transition="transition"
6
+ >
7
+ <slot></slot>
8
+ </div>
9
+ </template>
10
+
11
+ <script>
12
+ import coerceBoolean from 'vue-client/src/vue-strap/src/utils/coerceBoolean.js'
13
+
14
+ export default {
15
+ props: {
16
+ header: {
17
+ type: String
18
+ },
19
+ disabled: {
20
+ type: Boolean,
21
+ coerce: coerceBoolean,
22
+ default: false
23
+ }
24
+ },
25
+ data () {
26
+ return {
27
+ index: 0,
28
+ show: false
29
+ }
30
+ },
31
+ watch: {
32
+ 'header' (val) {
33
+ // header变化时,通知tabset
34
+ let data = this.$parent.renderData.find((v) => v.comp === this)
35
+ data.header = val
36
+ }
37
+ },
38
+ computed: {
39
+ show () {
40
+ return (this.$parent.active === this.index)
41
+ },
42
+ transition () {
43
+ return this.$parent.effect
44
+ }
45
+ },
46
+ created () {
47
+ this.$parent.renderData.push({
48
+ comp: this,
49
+ header: this.header,
50
+ disabled: this.disabled
51
+ })
52
+ },
53
+ ready () {
54
+ // 找到当前tab的索引
55
+ this.index = this.$parent.$children.findIndex((v) => v.$el === this.$el)
56
+ },
57
+ beforeDestroy () {
58
+ this.$parent.renderData.splice(this.index, 1)
59
+ }
60
+ }
61
+ </script>
62
+
63
+ <style scoped>
64
+ .tab-content > .tab-pane {
65
+ display: block;
66
+ }
67
+ </style>