system-clients 3.2.5 → 3.2.6-1

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 (80) hide show
  1. package/.eslintrc.js +16 -16
  2. package/.npmignore +10 -0
  3. package/SystemClient.iml +8 -11
  4. package/build/.npmignore +1 -0
  5. package/build/webpack.base.conf.js +21 -11
  6. package/package-lock.json +23125 -0
  7. package/package.json +6 -4
  8. package/src/.npmignore +1 -0
  9. package/src/components/Main.vue +626 -476
  10. package/src/components/TabButton.vue +201 -0
  11. package/src/components/Tabs.vue +67 -0
  12. package/src/components/addressManage/AddressCascadingMenu.vue +145 -0
  13. package/src/components/equipment/EquipmentManage.vue +1 -1
  14. package/src/components/equipment/PcAdd.vue +5 -5
  15. package/src/components/equipment/PcList.vue +5 -5
  16. package/src/components/equipment/PhoneAdd.vue +26 -13
  17. package/src/components/equipment/PhoneList.vue +31 -21
  18. package/src/components/equipment/PosAdd.vue +231 -45
  19. package/src/components/equipment/PosList.vue +198 -68
  20. package/src/components/equipment/PosManage.vue +80 -9
  21. package/src/components/equipment/PosManageBoth.vue +125 -0
  22. package/src/components/equipment/PosParamAdd.vue +236 -0
  23. package/src/components/equipment/PosParamList.vue +121 -0
  24. package/src/components/equipment/PosParamManage.vue +51 -0
  25. package/src/components/parammanage/ParamManage.vue +2 -2
  26. package/src/components/parammanage/ParamPage.vue +30 -8
  27. package/src/components/parammanage/SinglePage.vue +4 -4
  28. package/src/components/server/ImageVieweTest.vue +56 -0
  29. package/src/components/server/ImageViewer.vue +350 -0
  30. package/src/components/server/LoadData.vue +21 -2
  31. package/src/components/server/Login.vue +784 -519
  32. package/src/components/server/ModifyPw.vue +12 -7
  33. package/src/components/server/PcdBuildingSelect.vue +241 -0
  34. package/src/components/server/ResSelect.vue +5 -0
  35. package/src/components/server/ResSelectGroup.vue +159 -103
  36. package/src/components/server/RightTree.vue +289 -204
  37. package/src/filiale/dongguan/Login.vue +889 -0
  38. package/src/filiale/dongguan/Main.vue +715 -0
  39. package/src/filiale/dongguan/system.js +6 -0
  40. package/src/filiale/konggang/Login.vue +840 -0
  41. package/src/filiale/konggang/system.js +7 -0
  42. package/src/filiale/qianneng/ModifyPw.vue +107 -0
  43. package/src/filiale/qianneng/system.js +7 -0
  44. package/src/filiale/rizhao/LeftTree.vue +111 -0
  45. package/src/filiale/rizhao/Login.vue +791 -0
  46. package/src/filiale/rizhao/Main.vue +606 -0
  47. package/src/filiale/rizhao/system.js +14 -0
  48. package/src/filiale/yuchuan/Login.vue +889 -0
  49. package/src/filiale/yuchuan/Main.vue +773 -0
  50. package/src/filiale/yuchuan/system.js +10 -0
  51. package/src/plugins/EncryptUtil.js +53 -0
  52. package/src/plugins/GetLoginInfoService.js +76 -70
  53. package/src/plugins/HeatGetLoginInfoService.js +491 -0
  54. package/src/plugins/validation.js +9 -1
  55. package/src/stores/HeatAppData.js +38 -0
  56. package/src/styles/less/aofeng/standard.less +446 -60
  57. package/src/styles/less/aofeng/themeOne/BinaryTemplate.less +13 -13
  58. package/src/styles/less/aofeng/themeOne/systemStyle.less +12 -12
  59. package/src/styles/less/aofeng/themeOne.less +4 -1
  60. package/src/styles/less/manageStyle/manageStyle/manageChile.less +180 -0
  61. package/src/styles/less/manageStyle/manageStyle/manageStyle.less +1102 -0
  62. package/src/styles/less/manageStyle/manageStyle/safeStyle.less +498 -0
  63. package/src/styles/less/tables.less +50 -0
  64. package/src/styles/less/type.less +16 -3
  65. package/src/styles/less/variables.less +6 -3
  66. package/src/system.js +34 -1
  67. package/src/util/Daiban.json +12 -0
  68. package/static/images/lefticon//345/220/210/345/220/214/347/256/241/347/220/206.png +0 -0
  69. package/static/logo.png +0 -0
  70. package/static/newStyle/about-us.png +0 -0
  71. package/static/rizhao.png +0 -0
  72. package/yarn-error.log +6896 -0
  73. package/.gradle/3.5/file-changes/last-build.bin +0 -0
  74. package/.gradle/3.5/taskHistory/taskHistory.lock +0 -0
  75. package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
  76. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  77. package/.gradle/5.2.1/gc.properties +0 -0
  78. package/.gradle/buildOutputCleanup/built.bin +0 -0
  79. package/.gradle/buildOutputCleanup/cache.properties +0 -2
  80. package/.gradle/buildOutputCleanup/cache.properties.lock +0 -1
@@ -2,156 +2,286 @@
2
2
  <div class="flex">
3
3
  <criteria-paged :model="model" v-ref:paged>
4
4
 
5
- <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
5
+ <criteria partial='criteria' style="background-color: white;" @condition-changed='$parent.selfSearch' v-ref:cri>
6
6
  <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
7
  <div class="row">
8
- <div class="col-sm-3">
9
- <label class="font_normal_body">使用公司</label>
8
+ <div class="col-sm-3 form-group">
9
+ <label class="font_normal_body">公&nbsp;&nbsp;&nbsp;司</label>
10
10
  <res-select restype='organization'
11
11
  is-mul="false"
12
12
  @res-select="$parent.$parent.getorg"
13
13
  :initresid="$parent.$parent.curorgid">
14
14
  </res-select>
15
15
  </div>
16
- <div class="col-sm-3">
16
+ <div class="col-sm-3 form-group">
17
17
  <label class="font_normal_body">设备编号</label>
18
18
  <input type="text" class="input_search" style="width:60%" v-model="model.f_terminal_number"
19
19
  condition="f_terminal_number like '%{}%'" placeholder="设备编号">
20
20
  </div>
21
- <div class="col-sm-3">
22
- <label class="font_normal_body">联系电话</label>
23
- <input type="text" class="input_search" style="width:60%" v-model="model.f_phone"
24
- condition="f_phone like '%{}%'" placeholder="联系电话">
25
- </div>
26
21
 
27
- <div class="span" style="float:right;">
28
- <button type="button" class="button_search" @click="search()" v-el:cx>查询</button>
29
- <button type="button" class="button_search" @click="$parent.$parent.add()" v-el:cx>新增</button>
30
- <div style="float: right" class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
22
+
23
+ <div class="span" style="float:right;margin-top: 6px">
24
+ <button type="button" class="btn-success btn " style="border-radius: 4px"
25
+ @click="$parent.$parent.batchRoot('1')">批量启用
26
+ </button>
27
+ <button type="button" class="btn-danger btn " style="border-radius: 4px"
28
+ @click="$parent.$parent.batchRoot('0')">批量停用
29
+ </button>
30
+ <button type="button" class="button_search btn" @click="search()" v-el:cx>查询</button>
31
+ <button type="button" class="button_search btn" @click="$parent.$parent.add() " v-el:cx>新增</button>
32
+ <div style="float: right" class="button_spacing"
33
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
31
34
  @click="$parent.$parent.hidden()"></div>
32
35
  </div>
33
36
  </div>
34
37
  <div class="row" v-show="$parent.$parent.criteriaShow">
35
- <div class="col-sm-3">
36
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;所在地</label>
38
+ <div class="col-sm-3 form-group">
39
+ <label class="font_normal_body">所属人员</label>
40
+ <right-tree @re-res="$parent.$parent.getRes" :source="$parent.$parent.source"></right-tree>
41
+ </div>
42
+ <div class="col-sm-3 form-group">
43
+ <label class="font_normal_body">所在地</label>
37
44
  <input type="text" class="input_search" style="width:60%" v-model="model.f_address"
38
45
  condition="f_address like '%{}%'" placeholder="所在地">
39
46
  </div>
40
- <div class="col-sm-3">
47
+ <div class="col-sm-3 form-group">
41
48
  <label class="font_normal_body">设备名称</label>
42
49
  <input type="text" class="input_search" style="width:60%" v-model="model.f_terminal_name"
43
50
  condition="f_terminal_name like '%{}%'" placeholder="设备名称">
44
51
  </div>
45
- <div class="col-sm-3">
52
+ <div class="col-sm-3 form-group">
46
53
  <label class="font_normal_body">机器编号</label>
47
54
  <input type="text" class="input_search" style="width:60%" v-model="model.f_machine_number"
48
55
  condition="f_machine_number like '%{}%'" placeholder="机器编号">
49
56
  </div>
50
- <div class="col-sm-3">
57
+ <div class="col-sm-3 form-group">
51
58
  <label class="font_normal_body">所属银行</label>
52
59
  <input type="text" class="input_search" style="width:60%" v-model="model.f_bank_name"
53
60
  condition="f_bank_name like '%{}%'" placeholder="所属银行">
54
61
  </div>
62
+ <div class="col-sm-3 form-group">
63
+ <label class="font_normal_body">联系电话</label>
64
+ <input type="text" class="input_search" style="width:60%" v-model="model.f_phone"
65
+ condition="f_phone like '%{}%'" placeholder="联系电话">
66
+ </div>
55
67
  </div>
56
68
  </div>
57
69
  </criteria>
58
70
  <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid >
59
71
  <template partial='head'>
60
72
  <tr>
61
- <th>序号</th>
62
- <th>设备编号</th>
63
- <th>设备名称</th>
64
- <th>机器编号</th>
65
- <th>联系电话</th>
66
- <th>所在地</th>
67
- <th>所属银行</th>
68
- <th>电池电量</th>
69
- <th>是否登录</th>
70
- <th>更新时间</th>
71
- <th>软件版本</th>
72
- <th>操作</th>
73
+ <th><input type="checkbox" name="ischeckbox_all_id" v-model="$parent.$parent.$parent.isSelAll" :value.sync="$parent.$parent.$parent.isSelAll" /></th>
74
+ <th style="text-align:center;white-space:nowrap;">序号</th>
75
+ <th style="text-align:center;white-space:nowrap;">设备编号</th>
76
+ <th style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">设备类型</th>
77
+ <th style="text-align:center;white-space:nowrap;">设备名称</th>
78
+ <th style="text-align:center;white-space:nowrap;">所属公司</th>
79
+ <th style="text-align:center;white-space:nowrap;">所属部门</th>
80
+ <th style="text-align:center;white-space:nowrap;">所属人员</th>
81
+ <th style="text-align:center;white-space:nowrap;">状态</th>
82
+ <th style="text-align:center;white-space:nowrap;">机器编号</th>
83
+ <th style="text-align:center;white-space:nowrap;">联系电话</th>
84
+ <th style="text-align:center;white-space:nowrap;">所在地</th>
85
+ <th style="text-align:center;white-space:nowrap;">所属银行</th>
86
+ <th style="text-align:center;white-space:nowrap;">电池电量</th>
87
+ <th style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">是否登录</th>
88
+ <th style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">更新时间</th>
89
+ <th style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">操作时间</th>
90
+ <th style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">软件版本</th>
91
+ <!-- <th style="text-align:center;white-space:nowrap;">使用人员</th>-->
92
+ <th style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">操作人</th>
93
+ <th style="text-align:center;white-space:nowrap;">失联状态</th>
73
94
  </tr>
74
95
  </template>
75
96
  <template partial='body':model="model">
76
97
  <tr>
77
- <td style="text-align:center">{{$index+1}}</td>
78
- <td style="text-align:center">{{row.f_terminal_number}}</td>
79
- <td style="text-align:center">{{row.f_terminal_name}}</td>
80
- <td style="text-align:center">{{row.f_machine_number}}</td>
81
- <td style="text-align:center">{{row.f_phone}}</td>
82
- <td style="text-align:center">{{row.f_address}}</td>
83
- <td style="text-align:center">{{row.f_bank_name}}</td>
84
- <td style="text-align:center">{{row.f_battery_level}}</td>
85
- <td style="text-align:center">{{row.f_is_login}}</td>
86
- <td style="text-align:center">{{row.f_hybrid_version}}</td>
87
- <td style="text-align:center">{{row.f_appVer}}</td>
88
- <td style="text-align:center">
89
- <button class="btn btn-link" @click.stop="$parent.$parent.$parent.del(row)">删除</button>
90
- </td>
98
+ <td><input type="checkbox" name="checkbox_id" v-model="$parent.$parent.$parent.selPos" :value.sync="row"></td>
99
+ <td style="text-align:center;white-space:nowrap;">{{$index+1}}</td>
100
+ <td style="text-align:center;white-space:nowrap;"><span title="点击查看历史" @click="$parent.$parent.$parent.abcd(row)"><a>{{row.f_terminal_number}}</a></span></td>
101
+ <td style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">{{row.f_equipment_type}}</td>
102
+ <td style="text-align:center;white-space:nowrap;">{{row.f_terminal_name}}</td>
103
+ <td style="text-align:center;white-space:nowrap;">{{row.f_user_orgname}}</td>
104
+ <td style="text-align:center;white-space:nowrap;">{{row.f_depname}}</td>
105
+ <td style="text-align:center;white-space:nowrap;">{{row.f_operator}}</td>
106
+
107
+ <td style="text-align:center;white-space:nowrap;">{{row.f_state}}</td>
108
+ <td style="text-align:center;white-space:nowrap;">{{row.f_machine_number}}</td>
109
+ <td style="text-align:center;white-space:nowrap;">{{row.f_phone}}</td>
110
+ <td style="text-align:center;white-space:nowrap;">{{row.f_address}}</td>
111
+ <td style="text-align:center;white-space:nowrap;">{{row.f_bank_name}}</td>
112
+ <td style="text-align:center;white-space:nowrap;">{{row.f_battery_level}}</td>
113
+ <td style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">{{row.f_is_login}}</td>
114
+ <td style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">{{row.f_hybrid_version}}</td>
115
+ <td style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">{{row.f_operate_date}}</td>
116
+ <td style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">{{row.f_appVer}}</td>
117
+ <!-- <td style="text-align:center;white-space:nowrap;" >{{row.f_username}}</td>-->
118
+ <td style="text-align:center;white-space:nowrap;" v-show="!$parent.$parent.$parent.isshowless">{{row.f_operator}}</td>
119
+ <td style="text-align:center;white-space:nowrap;" >{{row.isunknown}}</td>
91
120
  </tr>
92
121
  </template>
93
122
  </data-grid>
94
123
  </criteria-paged>
95
124
  </div>
125
+ <modal v-show="infoshow" :show.sync="infoshow" v-ref:modal backdrop="false" width="800px" title="终端历史信息">
126
+ <article slot="modal-body" class="modal-body">
127
+ <criteria-paged :model="model2" v-ref:paged2>
128
+ <data-grid :model="model2" v-ref:grid2 partial='list'>
129
+ <template partial='head'>
130
+ <tr>
131
+ <!--<th style="padding: 0;border: 0">
132
+ <input type="checkbox" id="f_operator" v-model="$parent.$parent.$parent.all[model.pageIndex-1]"
133
+ @change="$parent.$parent.$parent.select()" style="width: 22px;height: 22px"/>
134
+ </th>-->
135
+ <th><nobr>序号</nobr></th>
136
+ <th><nobr>终端号</nobr></th>
137
+ <th><nobr>上次上报时间</nobr></th>
138
+ <th><nobr>本次上报时间</nobr></th>
139
+ <th><nobr><b>状态</b></nobr></th>
140
+ </tr>
141
+ </template>
142
+ <template partial='body'>
143
+ <td style="text-align: center;">{{$index + 1}}</td>
144
+ <td style="text-align: center;">{{row.f_terminal_number}}</td>
145
+ <td style="text-align: center;">{{row.f_update_date}}</td>
146
+ <td style="text-align: center;">{{row.f_update_date }}</td>
147
+ <td style="text-align: center;"><b>{{row.f_pos_state}}</b></td>
148
+ </template>
149
+ </data-grid>
150
+ </criteria-paged>
151
+ </article>
152
+ <footer slot="modal-footer" class="modal-footer">
153
+ <button type="button" class="btn btn-success" @click='infoclose'>关闭</button>
154
+ </footer>
155
+ </modal>
96
156
  </template>
97
157
 
98
158
  <script>
99
159
 
100
- import { PagedList } from 'vue-client'
160
+ import {PagedList} from 'vue-client'
101
161
 
102
162
  export default {
103
163
  title: '终端控制',
104
164
  components: {},
105
165
  data () {
106
166
  return {
167
+ source: `tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() != $role$))`,
107
168
  model: new PagedList('rs/sql/equipmentQuery', 20),
169
+ model2: new PagedList('rs/sql/singleTable', 30, {tablename: '`t_poshistory`'}),
108
170
  curorgid: [this.f_filialeid],
109
171
  f_orgid: '',
110
- f_filialeids:'',
111
- criteriaShow: false
172
+ f_filialeids: '',
173
+ criteriaShow: false,
174
+ infoadd: false,
175
+ selPos: [],
176
+ isSelAll: false, // 默认不全选
177
+ infoshow: false
112
178
  }
113
179
  },
114
- props: ['f_filialeid'],
180
+ props: ['f_filialeid','isshowless'],
115
181
  ready () {
116
182
  this.search()
117
183
  },
184
+ watch:{
185
+ // 'selPos'(val){
186
+ // console.log(val)
187
+ // },
188
+ 'isSelAll'(val){
189
+ console.log('-------', val)
190
+ if (val) {
191
+ // 对当前页面全选
192
+ this.selPos = []
193
+ for (const sel of this.model.rows) {
194
+ // if (this.selPos.indexOf(sel.id) < 0){
195
+ this.selPos.push(sel)
196
+ // }
197
+ }
198
+ } else {
199
+ // 取消全选
200
+ this.selPos = []
201
+ }
202
+ }
203
+ },
118
204
  methods: {
119
-
205
+ getRes(val){
206
+ if (val.orgobj.length === 1 && val.orgobj[0].resourcetype === 'user'){
207
+ this.$refs.paged.$refs.cri.model.f_user_operatorid=val.orgobj[0].userid
208
+ this.$refs.paged.$refs.cri.model.f_user_operator=val.orgobj[0].name
209
+ } else {
210
+ this.$refs.paged.$refs.cri.model.f_user_operatorid=''
211
+ this.$refs.paged.$refs.cri.model.f_user_operator=''
212
+ }
213
+ },
214
+ infoclose(){
215
+ this.infoshow=false
216
+ },
217
+ // 批量操作
218
+ async batchRoot(val) {
219
+ let arrs = []
220
+ let alertMessage = ''
221
+ let selPos = this.selPos
222
+ if (val === '0') {
223
+ alertMessage = '停用'
224
+ for (const tmp of selPos) {
225
+ if (tmp.f_state === '正常') arrs.push(tmp)
226
+ }
227
+ } else if (val === '1') {
228
+ alertMessage = '启用'
229
+ for (const tmp of selPos) {
230
+ if (tmp.f_state === '停用') arrs.push(tmp)
231
+ }
232
+ } else if (val === '2') {
233
+ alertMessage = '升级'
234
+ for (const tmp of selPos) {
235
+ if (tmp.f_state === '正常') arrs.push(tmp)
236
+ }
237
+ } else {
238
+ this.showAlert('出现异常,请重新进操作')
239
+ return
240
+ }
241
+ await this.$resetpost('rs/logic/batchPos', {data: {tasks: arrs, taskState: val}}, {
242
+ rejectMsg: null,
243
+ resolveMsg: null
244
+ })
245
+ // 需要提示
246
+ this.$showAlert(`已经开始批量${alertMessage},选择${selPos.length},其中${arrs.length}台可以正常${alertMessage},具体请留意设备情况,并刷新列表查看执行结果!`,'success', 2500)
247
+ this.$dispatch('close')
248
+ },
249
+ abcd (row) {
250
+ console.log("chakan",row)
251
+ let condition = `f_terminal_number = '${row.f_terminal_number}' order by id desc`
252
+ this.model2.search(condition)
253
+ this.infoshow = true
254
+ },
120
255
  search () {
121
256
  console.log("111111111111111111111111111111111111")
122
257
  this.$refs.paged.$refs.cri.search()
123
258
  },
124
259
 
125
260
  selfSearch (args) {
126
- args.condition = `${args.condition} and f_equipment_type = 'POS' and f_state = '正常' and f_orgid = '${this.f_filialeid ? this.f_orgid: this.$login.f.orgid}'`
261
+ console.log(args)
262
+ if (args.model.f_user_operatorid && args.model.f_user_operator){
263
+ args.condition = `${args.condition} and f_user_operatorid = '${args.model.f_user_operatorid}'
264
+ and f_user_operator = '${args.model.f_user_operator}'`
265
+ }
266
+ args.condition = `${args.condition} and f_equipment_type = 'POS' and f_orgid = '${this.f_filialeid ? this.f_orgid: this.$login.f.orgid}'`
127
267
  this.model.search(args.condition, this.model)
128
268
  this.$dispatch('research')
129
269
  },
130
270
 
131
271
  add () {
132
- if (this.f_filialeid) {
133
- this.$parent.f_filialeid=this.f_filialeid
134
- this.$dispatch('add')
135
- } else {
136
- this.$showAlert('请先选择左上角的所在分公司', 'warning', 2000)
137
- }
138
-
139
- },
140
-
141
- del (row) {
142
- console.log('要删除了', row)
143
- row.f_state = '已删除'
144
- this.$resetpost('rs/entity/t_equipment', row, {warnMsg: '确定要删除这条信息吗?', resolveMsg: '删除成功', rejectMsg: '删除失败'}).then((res) => {
145
- this.$dispatch('refresh')
146
- }).catch((error) => {
147
- this.$dispatch('refresh')
148
- })
272
+ this.infoadd=false
273
+ // if (this.f_filialeid) {
274
+ this.$dispatch('add', this.f_filialeid)
275
+ // } else {
276
+ // this.$showAlert('请先选择左上角的所在分公司', 'warning', 2000)
277
+ // }
149
278
  },
150
279
 
151
280
  getorg (val) {
281
+ console.log("====================", val)
152
282
  this.f_orgid = val[0]
153
283
  this.f_filialeid = val[0]
154
- this.search()
284
+ // this.search()
155
285
  },
156
286
  hidden(){
157
287
  this.criteriaShow = !this.criteriaShow
@@ -1,11 +1,36 @@
1
1
  <template>
2
2
  <div class="flex-row">
3
3
  <div :class="{'basic-main':!isChange,'binary-left':isChange}">
4
- <pos-list :row="row" @select-changed="selected" style="width:auto;" :f_filialeid.sync="f_filialeids" v-ref:list ></pos-list>
4
+ <pos-list :row="row" @dblclick="selected" style="width:auto;" :f_filialeid.sync="f_filialeids" :isshowless="isChange" v-ref:list ></pos-list>
5
5
  </div>
6
- <div class="binary-right" style="margin-left: 10px; width: 50%;" v-if="isChange">
7
- <pos-add :data="row" :f_filialeids.sync="f_filialeids" v-ref:addbox></pos-add>
6
+ <div class="binary-right" style="margin-left: 10px; width: 40%;" v-if="isChange">
7
+ <pos-add :data="row" :info="infoadd" :f_filialeids.sync="f_filialeids" v-ref:addbox></pos-add>
8
8
  </div>
9
+
10
+ <!-- <modal v-if="batchPos" :show.sync="batchPos" backdrop="false" >-->
11
+ <!-- <header slot="modal-header" class="modal-header">-->
12
+ <!-- <button type="button" class="close" @click="close"><span>&times;</span></button>-->
13
+ <!-- <h4 class="modal-title">批量操作</h4>-->
14
+ <!-- </header>-->
15
+ <!-- <article slot="modal-body" class="modal-body">-->
16
+ <!-- <form class="form-horizontal">-->
17
+ <!-- <div class="row">-->
18
+ <!-- <div>-->
19
+ <!-- <h4>注意事项</h4>-->
20
+ <!-- <p>1.如果需要对POS设备进行升级,批量选择的POS设备包含非正常状态,则只会对状态为正常的设备进行升级。</p>-->
21
+ <!-- <p>2.如果POS设备处于停用状态,则可以进行启用操作。如果设备处于启用状态,则可以进行停用和升级操作。</p>-->
22
+ <!-- <p>3.批量操作可能耗时较长,请刷新列表查看结果。</p>-->
23
+ <!-- </div>-->
24
+ <!-- </div>-->
25
+ <!-- </form>-->
26
+ <!-- </article>-->
27
+ <!-- <footer slot="modal-footer" class="modal-footer">-->
28
+ <!--&lt;!&ndash; <button type="button" class="button_search button_spacing" @click="batchRoot('2')">批量升级</button>&ndash;&gt;-->
29
+ <!-- <button type="button" class="button_search button_spacing" @click="batchRoot('1')">批量启用</button>-->
30
+ <!-- <button type="button" class="button_search button_spacing" @click="batchRoot('0')">批量停用</button>-->
31
+ <!-- <button type="button" class="button_clear button_spacing" @click='close'>退出</button>-->
32
+ <!-- </footer>-->
33
+ <!-- </modal>-->
9
34
  </div>
10
35
  </template>
11
36
  <script>
@@ -22,18 +47,61 @@
22
47
  return {
23
48
  isChange: false,
24
49
  row: null,
25
-
50
+ infoadd: true, // 判断是否显示 升级 等按钮(true/false)
51
+ batchPos: false,
26
52
  f_filialeids: ''
27
53
  }
28
54
  },
29
55
  methods: {
30
- selected (obj) {
31
- this.isChange = true
32
- this.row = obj.val
56
+ // 批量操作
57
+ // async batchRoot(val){
58
+ // let arrs = []
59
+ // let alertMessage=''
60
+ // let selPos = this.$refs.list.selPos
61
+ // if (val==='0'){
62
+ // alertMessage='停用'
63
+ // for (const tmp of selPos) {
64
+ // if (tmp.f_state==='正常') arrs.push(tmp)
65
+ // }
66
+ // } else if (val==='1'){
67
+ // alertMessage='启用'
68
+ // for (const tmp of selPos) {
69
+ // if (tmp.f_state==='停用') arrs.push(tmp)
70
+ // }
71
+ // } else if(val==='2'){
72
+ // alertMessage='升级'
73
+ // for (const tmp of selPos) {
74
+ // if (tmp.f_state==='正常') arrs.push(tmp)
75
+ // }
76
+ // } else {
77
+ // this.showAlert('出现异常,请重新进操作')
78
+ // return
79
+ // }
80
+ //
81
+ // await this.$resetpost('rs/logic/batchPos',{data: {tasks: arrs, taskState: val}}, {rejectMsg: null, resolveMsg: null})
82
+ //
83
+ // // 需要提示
84
+ // this.$showAlert(`已经开始批量${alertMessage},选择${selPos.length},其中${arrs.length}台可以正常${alertMessage},具体请留意设备情况,并刷新列表查看执行结果!`)
85
+ // this.isChange = false
86
+ // this.close()
87
+ // },
88
+ close(){
89
+ this.batchPos = false
90
+ },
91
+ selected(obj, idx) {
92
+ console.log(obj)
93
+ if (!(obj instanceof MouseEvent)) {
94
+ this.isChange = true
95
+ this.infoadd = true
96
+ this.row = obj
97
+ } else {
98
+ this.$showAlert('如需新增,请点击增加按钮!', 'info', 1000)
99
+ }
33
100
  }
34
101
  },
35
102
  events: {
36
103
  'search' () {
104
+ this.infoadd=true
37
105
  this.isChange = false
38
106
  this.row = null
39
107
  this.$refs.list.$refs.paged.$refs.cri.search()
@@ -55,9 +123,12 @@
55
123
  'close' () {
56
124
  this.isChange = false
57
125
  this.row = null
58
- this.$refs.list.search()
126
+
127
+ // this.$refs.list.search()
59
128
  },
60
- 'add' () {
129
+ 'add' (val) {
130
+ this.f_filialeids = val
131
+ this.infoadd=false
61
132
  this.row = null
62
133
  this.isChange = true
63
134
  this.$refs.list.$refs.paged.$refs.grid.selectStore.selected = null
@@ -0,0 +1,125 @@
1
+ <template>
2
+ <div class="flex-row" v-if="$login.r.includes('POS参数管理')">
3
+ <tab-button :button="false" :class="{'basic-main':!isChange&&!isParamChange,'binary-left':isChange||isParamChange}">
4
+ <tabs header="设备管理">
5
+ <pos-list :row="row" @dblclick="selected" style="width:auto;" :f_filialeid.sync="f_filialeids"
6
+ :isshowless="isChange" v-ref:poslist></pos-list>
7
+ </tabs>
8
+ <tabs header="POS参数管理">
9
+ <pos-param-list @add="addParam" @close="closeParam" v-ref:listp></pos-param-list>
10
+ </tabs>
11
+ </tab-button>
12
+ <div class="binary-right" style="margin-left: 5px;overflow-x: scroll" v-if="isChange||isParamChange">
13
+ <pos-param-add :param_id="param_id" v-ref:addp v-if="isParamChange"></pos-param-add>
14
+ <pos-add :data="row" :info="infoadd" :f_filialeids.sync="f_filialeids" v-if="isChange"
15
+ v-ref:addbox></pos-add>
16
+ </div>
17
+ </div>
18
+ <pos-manage v-if="!$login.r.includes('POS参数管理')"></pos-manage>
19
+ </template>
20
+
21
+ <script>
22
+ import TabButton from '../TabButton'
23
+ import Tabs from '../Tabs'
24
+ import PosList from "./PosList";
25
+ import PosAdd from "./PosAdd";
26
+ import PosParamList from './PosParamList'
27
+ import PosParamAdd from './PosParamAdd'
28
+
29
+ export default {
30
+ name: "PosManageBoth",
31
+ title: 'POS管理',
32
+ data() {
33
+ return {
34
+ show: [],
35
+ data: {},
36
+ param_id: '',
37
+ f_filialeids: '',
38
+ isChange: false,
39
+ isParamChange: false,
40
+ row: null,
41
+ infoadd: true, // 判断是否显示 升级 等按钮(true/false)
42
+ batchPos: false,
43
+ }
44
+ },
45
+ components: {Tabs, TabButton, PosList, PosAdd, PosParamList, PosParamAdd},
46
+ ready() {
47
+ },
48
+ methods: {
49
+ selected(obj, idx) {
50
+ console.log(obj)
51
+ if (!(obj instanceof MouseEvent)) {
52
+ this.isChange = true
53
+ this.infoadd = true
54
+ this.row = obj
55
+ } else {
56
+ this.$showAlert('如需新增,请点击增加按钮!', 'info', 1000)
57
+ }
58
+ },
59
+ addParam() {
60
+ this.isParamChange = true
61
+ this.isChange = false
62
+ setTimeout(() => {
63
+ this.$refs.addp.initModel()
64
+ }, 100)
65
+ },
66
+ closeParam() {
67
+ this.isParamChange = false
68
+ }
69
+ },
70
+ events: {
71
+ 'researchParam'() {
72
+ this.$refs.listp.search()
73
+ this.isParamChange = false
74
+ this.isChange = false
75
+ },
76
+ 'search'() {
77
+ this.infoadd = true
78
+ this.isParamChange = false
79
+ this.isChange = false
80
+ this.row = null
81
+ this.$refs.list.$refs.paged.$refs.cri.search()
82
+ },
83
+ 'tab-changed'() {
84
+ console.log("tabchanged")
85
+ this.isParamChange = false
86
+ this.isChange = false
87
+ },
88
+ 'refresh'() {
89
+ this.isParamChange = false
90
+ this.isChange = false
91
+ this.row = null
92
+ this.$refs.poslist.search()
93
+ },
94
+ 'error'(name, row, res) {
95
+ this.isParamChange = false
96
+ this.isChange = false
97
+ this.row = null
98
+ },
99
+ 'close'() {
100
+ this.isParamChange = false
101
+ this.isChange = false
102
+ this.row = null
103
+ },
104
+ 'add'(val) {
105
+ this.f_filialeids = val
106
+ this.infoadd = false
107
+ this.row = null
108
+ this.isChange = true
109
+ this.$refs.list.$refs.paged.$refs.grid.selectStore.selected = null
110
+ },
111
+ 'modify'(row) {
112
+ this.isChange = false
113
+ this.isParamChange = true
114
+ setTimeout(() => {
115
+ this.$refs.addp.curorgid = []
116
+ this.$refs.addp.edit(row.f_param_id)
117
+ }, 100)
118
+ }
119
+ }
120
+ }
121
+ </script>
122
+
123
+ <style scoped>
124
+
125
+ </style>