sale-client 3.4.76 → 3.4.80

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 (97) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/.gradle/{5.5/fileChanges → 3.5/file-changes}/last-build.bin +0 -0
  4. package/.gradle/3.5/taskHistory/taskHistory.lock +0 -0
  5. package/.gradle/{5.5/gc.properties → buildOutputCleanup/built.bin} +0 -0
  6. package/.gradle/buildOutputCleanup/cache.properties +2 -2
  7. package/.gradle/buildOutputCleanup/cache.properties.lock +1 -0
  8. package/.project +11 -11
  9. package/README.md +38 -38
  10. package/build/css-loaders.js +34 -34
  11. package/build/dev-client.js +8 -8
  12. package/build/dev-server.js +2 -2
  13. package/build/release.sh +28 -28
  14. package/build/utils.js +71 -71
  15. package/build/webpack.dev.conf.js +31 -31
  16. package/build/webpack.example.conf.js +49 -49
  17. package/build/webpack.test.conf.js +31 -31
  18. package/config/dev.env.js +6 -6
  19. package/config/index.js +38 -38
  20. package/config/prod.env.js +3 -3
  21. package/config/test.env.js +6 -6
  22. package/examples/ReadCard/index.html +11 -11
  23. package/package.json +2 -2
  24. package/release.bat +5 -5
  25. package/sale-client.iml +8 -8
  26. package/src/assets/binding.svg +1 -1
  27. package/src/assets/unbind.svg +1 -1
  28. package/src/assets//345/205/254/345/221/212.svg +1 -1
  29. package/src/assets//347/207/203/346/260/224/347/274/264/350/264/271.eps +116 -116
  30. package/src/assets//350/201/224/347/263/273/346/210/221/344/273/254.svg +1 -1
  31. package/src/components/Hello.vue +39 -39
  32. package/src/components/List.vue +51 -51
  33. package/src/components/SellGasCharge/FakaList.vue +23 -23
  34. package/src/components/UserFiles/admissibility.vue +46 -46
  35. package/src/components/common/userinfo_detail/UserBaseInfoNew.vue +346 -346
  36. package/src/components/getNowDate.js +25 -25
  37. package/src/components/revenue/HandManager/MeterBookUser.vue +1 -0
  38. package/src/components/revenue/bank/BankDocking.vue +62 -62
  39. package/src/components/revenue/base/CardServer/CardInfoModal.vue +52 -52
  40. package/src/components/revenue/base/rightview/carddetail/StopApplyDetail.vue +70 -70
  41. package/src/components/revenue/comprehen/CardManage/CardManage.vue +83 -83
  42. package/src/components/revenue/comprehen/ComprehenOperation/ChangeMeter/NoMessage.vue +30 -30
  43. package/src/components/revenue/comprehen/ComprehenOperation/ComprehenSearch.vue +13 -13
  44. package/src/components/revenue/comprehen/Message/MessageList.vue +499 -499
  45. package/src/components/revenue/comprehen/TotalSplit/TotalSplitManage.vue +45 -45
  46. package/src/components/webMeter/meterinfo/NewMeterList.vue +26 -26
  47. package/src/components/webMeter/webInfo/WebMeterList.vue +26 -9
  48. package/src/filiale/rongcheng/FilesManageNew/UserGeneralInfoTest.vue +1 -1
  49. package/src/filiale/tongchuan/Message/AllUser.vue +569 -569
  50. package/src/filiale/tongchuan/Message/MessageManage.vue +137 -137
  51. package/src/filiale/tongchuan/sale.js +102 -102
  52. package/src/main.js +23 -23
  53. package/src/plugins/CardListen.js +29 -29
  54. package/src/plugins/CardManageService.js +21 -21
  55. package/src/plugins/LogicService.js +477 -477
  56. package/src/plugins/SelectService.js +41 -41
  57. package/src/project/ProjectPage.vue +24 -24
  58. package/src/project/State.js +17 -17
  59. package/test/e2e/custom-assertions/elementCount.js +26 -26
  60. package/test/e2e/nightwatch.conf.js +40 -40
  61. package/test/e2e/runner.js +30 -30
  62. package/test/e2e/specs/test.js +13 -13
  63. package/test/unit/.eslintrc +5 -5
  64. package/test/unit/context.html +20 -20
  65. package/test/unit/index.js +13 -13
  66. package/test/unit/init.js +13 -13
  67. package/test/unit/karma.conf.js +55 -55
  68. package/test/unit/specs/components/UserFiles/AreaList.spec.js +25 -25
  69. package/test/unit/specs/components/UserFiles/UserFiles.spec.js +22 -22
  70. package/test/unit/specs/components/UserFiles/UserGeneralInfo.spec.js +55 -55
  71. package/test/unit/specs/components/revenue/Common/ReissueBill.spec.js +29 -29
  72. package/test/unit/specs/components/revenue/base/CardServer/ReadCard.spec.js +23 -23
  73. package/test/unit/specs/components/revenue/base/UserList.spec.js +21 -21
  74. package/test/unit/specs/components/revenue/base/rightview/CardList.spec.js +29 -29
  75. package/test/unit/specs/components/revenue/todoList/ToDoListManage.spec.js +20 -20
  76. package/test/unit/specs/service/delete.spec.js +8 -8
  77. package/test/unit/specs/service/getSaleInitData.spec.js +16 -16
  78. package/test/unit/specs/service/uploadFile.spec.js +8 -8
  79. package/.gradle/5.5/executionHistory/executionHistory.bin +0 -0
  80. package/.gradle/5.5/executionHistory/executionHistory.lock +0 -0
  81. package/.gradle/5.5/fileContent/fileContent.lock +0 -0
  82. package/.gradle/5.5/fileHashes/fileHashes.bin +0 -0
  83. package/.gradle/5.5/fileHashes/fileHashes.lock +0 -0
  84. package/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  85. package/.gradle/7.1/dependencies-accessors/gc.properties +0 -0
  86. package/.gradle/7.1/executionHistory/executionHistory.bin +0 -0
  87. package/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  88. package/.gradle/7.1/fileChanges/last-build.bin +0 -0
  89. package/.gradle/7.1/fileHashes/fileHashes.bin +0 -0
  90. package/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  91. package/.gradle/7.1/gc.properties +0 -0
  92. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  93. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  94. package/.gradle/checksums/checksums.lock +0 -0
  95. package/.gradle/vcs-1/gc.properties +0 -0
  96. package/build/libs/SaleClient-3.1.1-11.jar +0 -0
  97. package/build/tmp/jar/MANIFEST.MF +0 -2
@@ -1,499 +1,499 @@
1
- <template>
2
-
3
- <criteria-paged :model="model" v-ref:paged >
4
- <p class="bg-info text-center" style="padding: 8px;font-size: 20px">短信信息
5
- </p>
6
- <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
7
- <div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
8
- <div class="row">
9
- <div class="form-group col-sm-3">
10
- <label class="font_normal_body">短信类型</label>
11
- <v-select id="f_send_type"
12
- v-model="model.f_send_type"
13
- placeholder='短信类型'
14
- style="width: 60%"
15
- :value.sync="model.f_send_type"
16
- :options='$parent.$parent.getsendType'
17
- condition= "f_send_type = '{}'"
18
- close-on-select>
19
- </v-select>
20
- </div>
21
- <div class="form-group col-sm-3">
22
- <label class="font_normal_body">发送状态</label>
23
- <v-select id="f_send"
24
- v-model="model.f_send"
25
- placeholder='发送状态'
26
- style="width: 60%"
27
- :value.sync="model.f_send"
28
- :options='$parent.$parent.sendType'
29
- condition= "f_send = '{}'"
30
- close-on-select>
31
- </v-select>
32
- </div>
33
-
34
-
35
- <div class="span" style="float:right;">
36
- <button class="button_search button_spacing width-60" @click="$parent.$parent.search()" v-el:cba>查询</button>
37
- <button class="button_clear button_spacing width-60" @click="$parent.$parent.confirms()" v-el:cba>发送</button>
38
- <button class="button_delete button_spacing width-60" @click="$parent.$parent.delete()" v-el:cba>删除</button>
39
- <button class="button_delete button_spacing width-60" @click="$parent.$parent.deleteAll()" v-el:cba>删除全部</button>
40
- <button v-show="$parent.$parent.alllist" class="button_clear button_spacing width-60" @click="$parent.$parent.retrun()" v-el:cba>返回</button>
41
- <button class="button_export button_spacing" title="权限:短信导入" v-show="$parent.$parent.smsMessaage.includes('短信导入')" @click="$parent.$parent.importSMS()">导入</button>
42
- <export-excel :data="$parent.$parent.getCondition" sql-name="salegetSendAll"
43
- template-name="短信信息导出" sqlurl="rs/logic/exportfile"
44
- :field="$parent.$parent.getfield" :choose-col="true"></export-excel>
45
- <!-- items: 'f_userinfo_id,f_user_name,f_user_phone,f_user_id, f_gas,f_amount,f_balance,f_arreamount,f_arrears_date,f_create_date,f_send_content,f_send,f_send_date, f_filiale,f_outlets',-->
46
- <!-- orderitem: 'id',tablename: 't_sms',-->
47
- <div
48
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
49
- @click="$parent.$parent.hidden()" class="button_spacing" style="float: right">
50
- </div>
51
- </div>
52
- </div>
53
- <div class="row" v-show="$parent.$parent.criteriaShow">
54
- <div class="form-group col-sm-3">
55
- <label class="font_normal_body">评价级别</label>
56
- <v-select id="f_reply_type"
57
- v-model="model.f_reply_type"
58
- placeholder='评价级别'
59
- style="width: 60%"
60
- :value.sync="model.f_reply_type"
61
- :options='$parent.$parent.replyType'
62
- condition= "f_reply_type = '{}'"
63
- close-on-select>
64
- </v-select>
65
- </div>
66
- <div class="form-group col-sm-3">
67
- <label class="font_normal_body">用户编号</label>
68
- <input type="text" class="form-control" v-model="model.f_userinfo_code" placeholder='用户编号' v-filter v-figure_filter
69
- condition="f_userinfo_code = '{}'" v-next-el='yhxm' style="width: 60%"
70
- :size="model.f_userinfo_code ? model.f_userinfo_id.length : 4">
71
- </div>
72
- <div class="form-group col-sm-3">
73
- <label class="font_normal_body">用户姓名</label>
74
- <input type="text" class="form-control" v-model="model.f_user_name" placeholder='用户姓名'
75
- condition="f_user_name like '%{}%'" v-next-el='yhxm' style="width: 60%"
76
- :size="model.f_user_name ? model.f_user_name.length : 4">
77
- </div>
78
- <div class="form-group col-sm-3">
79
- <label class="font_normal_body">用户电话</label>
80
- <input type="text" class="form-control" v-model="model.f_user_phone" placeholder='用户电话'
81
- condition="f_user_phone like '%{}%'" v-next-el='yhxm' style="width: 60%"
82
- :size="model.f_user_phone ? model.f_user_phone.length : 4">
83
- </div>
84
-
85
- <div class="form-group col-sm-3">
86
- <label class="font_normal_body">选择小区</label>
87
- <v-select :value.sync="model.f_residential_area" :value-single="true"
88
- class="select_list select"
89
- style="width: 60%"
90
- :options='$parent.$parent.residentialArea' placeholder='选择小区'
91
- close-on-select search="true">
92
- </v-select>
93
- </div>
94
- <div class="form-group col-sm-3" title="短信生成开始时间">
95
- <label class="font_normal_body">开始日期</label>
96
- <datepicker id="f_create_start_date" placeholder="开始日期"
97
- v-model="model.f_create_start_date"
98
- :value.sync="model.f_create_start_date"
99
- :disabled-days-of-Week="[]"
100
- style="width: 60%"
101
- condition="convert(varchar(10),f_sendtime,120) >= '{}'"
102
- :format="'yyyy-MM-dd'"
103
- :show-reset-button="reset">
104
- </datepicker>
105
- </div>
106
- <div class="form-group col-sm-3" title="短信生成结束时间">
107
- <label class="font_normal_body">结束日期</label>
108
- <datepicker id="f_create_end_date" placeholder="结束日期"
109
- v-model="model.f_create_end_date"
110
- :value.sync="model.f_create_end_date"
111
- :disabled-days-of-Week="[]"
112
- style="width: 60%"
113
- condition="convert(varchar(10),f_sendtime,120) <= '{}'"
114
- :format="'yyyy-MM-dd'"
115
- :show-reset-button="reset">
116
- </datepicker>
117
- </div>
118
- </div>
119
- </div>
120
- </criteria>
121
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
122
- <template partial='head'>
123
- <tr>
124
- <th>
125
- <input type="checkbox" @click="$parent.$parent.$parent.isAll(model.pageIndex)">
126
- </th>
127
- <th><nobr>序号</nobr></th>
128
- <th><nobr>用户信息</nobr></th>
129
- <th><nobr>用户编号</nobr></th>
130
- <th><nobr>电话号码</nobr></th>
131
- <th><nobr>短信类型</nobr></th>
132
- <th><nobr>短信内容</nobr></th>
133
- <th><nobr>发送状态</nobr></th>
134
- <th><nobr>发送时间</nobr></th>
135
- <th><nobr>状态报告</nobr></th>
136
- <th><nobr>评价级别</nobr></th>
137
- <th><nobr>回执状态</nobr></th>
138
- <th><nobr>评价内容</nobr></th>
139
- <th><nobr>操作人</nobr></th>
140
- <th><nobr>操作</nobr></th>
141
- </tr>
142
- </template>
143
- <template partial='body'>
144
- <td style="text-align:center">
145
- <input type="checkbox" v-model="$parent.$parent.$parent.ids"
146
- :value="row.id">
147
- </td>
148
- <td style="text-align:center"><nobr>{{$index+1}}</nobr></td>
149
- <td style="text-align:center"><nobr>{{row.f_userinfo_id}}|{{row.f_user_name}}|{{row.f_user_phone}}</nobr></td>
150
- <td style="text-align:center"><nobr>{{row.f_userinfo_code}}</nobr></td>
151
- <td style="text-align:center"><nobr>{{row.f_phone}}</nobr></td>
152
- <td style="text-align:center"><nobr>{{row.f_send_type}}</nobr></td>
153
- <td style="text-align:center;width: 20px" :title="row.f_content"><nobr>{{row.f_content.substr(0,20)}}</nobr></td>
154
- <td style="text-align:center"><nobr>{{row.f_send}}</nobr></td>
155
- <td style="text-align:center"><nobr>{{row.f_sendtime}}</nobr></td>
156
- <td style="text-align:center"><nobr>{{row.f_statedetail}}</nobr></td>
157
- <td style="text-align:center"><nobr>{{row.f_reply_type}}</nobr></td>
158
- <td style="text-align:center"><nobr>{{row.f_result_msg}}</nobr></td>
159
- <td style="text-align:center"><nobr>{{row.f_reply_content}}</nobr></td>
160
- <td style="text-align:center"><nobr>{{row.f_operator}}</nobr>
161
- </td>
162
- <td :class="'back-blue'" style="text-align: center;" >
163
- <div v-if="row.f_state == '未发'">
164
- <button class="button_clear button_spacing width-50" @click="$parent.$parent.$parent.amendment(row)">修正</button>
165
- <button class="button_delete button_spacing width-50" @click="$parent.$parent.$parent.delete2(row)">删除</button>
166
- </div>
167
- </td>
168
- </template>
169
- </data-grid>
170
- </criteria-paged>
171
-
172
- <modal :show.sync="arrshow" v-ref:modal backdrop="false">
173
- <header slot="modal-header" class="modal-header">
174
- <h4 class="modal-title">修正</h4>
175
- </header>
176
- <article slot="modal-body" class="modal-body">
177
- <div class="form-group">
178
- <input type="text" class="input_search" v-model="amendcontent" :value.sync="amendcontent"
179
- placeholder='短信内容'>
180
- </div>
181
- </article>
182
- <footer slot="modal-footer" class="modal-footer">
183
- <button v-show="arrshow" type="button" class="btn btn-default" @click='close'>取消</button>
184
- <button v-show="arrshow" type="button" class="btn btn-success" @click='create(row)'>确认</button>
185
- </footer>
186
- </modal>
187
- <modal :show.sync="showFile" v-ref:modal backdrop="true">
188
- <header slot="modal-header" class="modal-header">
189
- <button type="button" class="close" @click="closeFile"><span>&times;</span></button>
190
- <h4 class="modal-title">选择文件</h4>
191
- </header>
192
- <article slot="modal-body" class="modal-body">
193
- <div class="form-group">
194
- <file-upload class="my-file-uploader" name="importSms" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
195
- </div>
196
- </article>
197
- <footer slot="modal-footer" class="modal-footer"></footer>
198
- </modal>
199
- </template>
200
-
201
- <script>
202
- /**
203
- *阶梯气价查询列表
204
- */
205
- import { PagedList, HttpResetClass } from 'vue-client'
206
- import Vue from 'vue'
207
- export default {
208
- data () {
209
- return {
210
- criteriaShow: false,
211
- model: new PagedList('rs/sql/getSendAll', 20),
212
- f_send: '未发送',
213
- downDate: this.$login.toStandardDateString(),
214
- ids: [],
215
- show: false,
216
- pages: [],
217
- arrshow: false,
218
- alllist: false,
219
- // 修正的短信内容
220
- amendcontent: '',
221
- isFirst: true,
222
- amendid: '',
223
- // 小区
224
- residentialArea: [],
225
- sendType: [{label: '全部', value: ''}, ...this.$appdata.getParam('发送状态') ? this.$appdata.getParam('发送状态') : {}],
226
- getsendType: this.$appdata.getParam('短信类型'),
227
- replyType: this.$appdata.getParam('评价级别'),
228
- bodydata: ['f_user_name', 'f_userinfo_code', 'f_phone', 'f_send_type', 'f_content', 'f_send', 'f_sendtime', 'f_statedetail', 'f_reply_type', 'f_reply_content', 'f_reply_content'],
229
- header: ['用户姓名', '用户编号', '电话号码', '短信类型', '短信内容', '发送状态', '发送时间', '状态报告', '评价级别', '回执状态', '评价内容'],
230
- showFile: false
231
- }
232
- },
233
- props: {
234
- condition: {
235
- type: String
236
- }
237
- },
238
- computed: {
239
- getCondition () {
240
- return {condition: this.$refs.paged.$refs.cri.condition}
241
- },
242
- getfield () {
243
- let data = {}
244
- this.bodydata.forEach((value, index) => {
245
- data[this.bodydata[index]] = this.header[index]
246
- })
247
- return data
248
- console.log('field' + data)
249
- }
250
- },
251
- ready () {
252
- this.getaddress()
253
- this.search()
254
- console.log('============>')
255
- },
256
- methods: {
257
- importSMS () {
258
- this.showFile = true
259
- },
260
- // 关闭文件上传对话框
261
- closeFile () {
262
- this.showFile = false
263
- // 将选的文件清空
264
- this.$refs.file.$el.querySelector('input').value = ''
265
- },
266
- hidden () {
267
- this.criteriaShow = !this.criteriaShow
268
- },
269
- async getaddress () {
270
- console.log('开始获取小区')
271
- let HttpReset = new HttpResetClass()
272
- var data = await HttpReset.load('POST', 'rs/sql/address_getarealist', {
273
- data: {
274
- condition: '1=1'
275
- }
276
- }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
277
- console.log('小区', data)
278
- let house = []
279
- for (let row of data.data) {
280
- console.log('开始保存小区')
281
- house.push({label: row.f_residential_area, value: row.f_residential_area})
282
- }
283
- this.residentialArea = house
284
- },
285
-
286
- // 把数据库查询数据转换为下拉数据
287
- // calculate(rows){
288
- // let data = []
289
- // rows.forEach((row, n) => {
290
- // data[n] = {label: row.f_residential_area, value: row.f_residential_area}
291
- // })
292
- // return data
293
- // },
294
- amendment (row) {
295
- this.arrshow = true
296
- this.amendid = row.id
297
- },
298
- delete () {
299
- if (this.ids.length !== 0) {
300
- this.$refs.paged.$refs.cri.condition = this.$refs.paged.$refs.cri.condition + 'and id in (' + this.ids + ')'
301
- }
302
- this.$showMessage('删除后不可恢复,确认删除?', ['confirm', 'cancel']).then((res) => {
303
- if (res === 'confirm') {
304
- this.$LogicService.deletMessage(this.$refs.paged.$refs.cri.condition).then((res) => {
305
- this.$dispatch('success')
306
- }).catch((error) => {
307
- this.$dispatch('error', error)
308
- })
309
- }
310
- this.$refs.paged.$refs.cri.search()
311
- })
312
- },
313
- deleteAll () {
314
- // 删除所有查询结果
315
- let self = this;
316
- if (this.model.model.count <= 0) {
317
- this.$showAlert('无短信需要被删除!','warning',2000);
318
- return;
319
- }
320
- this.$showMessage(`本次操作将删除当前查询页面中未发送或发送失败的所有短信,确认删除?`, ['confirm', 'cancel']).then(res => {
321
- if (res === 'confirm') {
322
- self.$LogicService.deletAllMessage(this.$refs.paged.$refs.cri.condition).then((res) => {
323
- self.$dispatch('success')
324
- }).catch(error => {
325
- self.$dispatch('error', error)
326
- })
327
- }
328
- self.$refs.paged.$refs.cri.search()
329
- })
330
- },
331
- delete2 (row) {
332
- let condition = '1=1' + ' and id = ' + row.id
333
- this.$showMessage('删除后不可恢复,确认删除?', ['confirm', 'cancel']).then((res) => {
334
- console.log('删除2方法')
335
- if (res === 'confirm') {
336
- this.$LogicService.deletMessage(condition).then((res) => {
337
- this.$dispatch('success')
338
- }).catch((error) => {
339
- this.$dispatch('error', error)
340
- })
341
- }
342
- this.$refs.paged.$refs.cri.search()
343
- })
344
- },
345
- retrun () {
346
- this.alllist = false
347
- this.$dispatch('allchange2')
348
- },
349
- close () {
350
- this.arrshow = false
351
- },
352
- create () {
353
- if (this.amendcontent === '' || this.amendcontent === null) {
354
- this.$showAlert('短信内容不能为空', 'warning', 2000)
355
- return
356
- }
357
- this.arrshow = false
358
- // 组织数据
359
- let content = {
360
- // 批量减免金额
361
- f_content: this.amendcontent,
362
- f_operator: Vue.$login.f.name,
363
- f_operatorid: Vue.$login.f.id,
364
- f_orgid: Vue.$login.f.orgid,
365
- f_orgname: Vue.$login.f.orgs,
366
- f_depid: Vue.$login.f.depids,
367
- f_depname: Vue.$login.f.deps,
368
- id: this.amendid
369
-
370
- }
371
- console.log('数据id', content.id)
372
- this.$resetpost('rs/logic/amendcontent', content, {
373
- resolveMsg: null,
374
- rejectMsg: '修正短信内容出错!!!'
375
- }).then((res) => {
376
- this.search()
377
- })
378
- },
379
- confirms () {
380
- let data = {
381
- condition: this.$refs.paged.$refs.cri.condition
382
-
383
- }
384
- console.log('this.ids:', this.ids)
385
- console.log('-----------------------------' + data.condition)
386
- if (this.ids.length !== 0) {
387
- data.condition = data.condition + 'and id in (' + this.ids + ')'
388
-
389
- this.$showMessage(`您本次发送短信的条数为${this.ids.length},是否确认下发?`, ['confirm', 'cancel']).then((res) => {
390
- if (res === 'confirm') {
391
- this.ids = []
392
- console.log('data1:', data)
393
- this.$LogicService.sendMessage(data).then((res) => {
394
- this.$dispatch('success')
395
- this.$refs.paged.$refs.cri.search()
396
- }).catch((error) => {
397
- this.$dispatch('error', error)
398
- this.$refs.paged.$refs.cri.search()
399
- })
400
- }
401
- })
402
- } else {
403
- this.$showMessage('是否确认全部发送?', ['confirm', 'cancel']).then((res) => {
404
- if (res === 'confirm') {
405
- this.ids = []
406
- console.log('data2:', data)
407
- this.$LogicService.sendMessage(data).then((res) => {
408
- this.$dispatch('success')
409
- this.$refs.paged.$refs.cri.search()
410
- }).catch((error) => {
411
- this.$dispatch('error', error)
412
- this.$refs.paged.$refs.cri.search()
413
- })
414
- }
415
- })
416
- }
417
- },
418
- search () {
419
- this.$refs.paged.$refs.cri.search()
420
- if (this.isFirst) {
421
- this.isFirst = false
422
- } else {
423
- this.$dispatch('allchange')
424
- this.alllist = true
425
- }
426
- },
427
- selfSearch (args) {
428
- // this.condition = ' and convert(varchar(10),f_create_date,120) = ' + "'" + Util.toStandardDateString() + "'"
429
- // if (!Util.f.parent.parent.name.includes('统一资源管理')) {
430
- // args.condition = `${args.condition} and f_orgid = '${Vue.$login.f.orgid}'`
431
- // }
432
- // args.condition += this.condition
433
- this.model.search(args.condition, this.model)
434
- this.ids = []
435
- },
436
- isAll (page) {
437
- if (this.pages.includes(page)) { // 已添加,取消动作
438
- // 从ids中删除本页所有数据的ids
439
- this.addOrRemove(false)
440
- this.pages = this.pages.filter((item) => {
441
- return item !== page
442
- })
443
- } else { // 未添加
444
- this.pages.push(page) // 添加id,添加动作
445
- this.addOrRemove(true)
446
- }
447
- },
448
- addOrRemove (is) {
449
- let that = this
450
- if (is) { // 添加本页所有数据到ids中
451
- this.ids = []
452
- this.model.rows.forEach((row) => {
453
- if (!that.ids.includes(row.id)) {
454
- that.ids.push(row.id)
455
- }
456
- })
457
- } else { // 从ids中取消所有的数据
458
- this.ids = []
459
- this.model.rows.forEach((row) => {
460
- that.ids = that.ids.filter((item) => {
461
- return item !== row.id
462
- })
463
- })
464
- }
465
- }
466
- },
467
- events: {
468
- 'onFileUpload': async function (file, res) {
469
- console.log('上传完毕' + JSON.stringify(res))
470
- let data = {
471
- filepath: res.f_downloadpath,
472
- f_operatorid: this.$login.f.f_operatorid,
473
- f_operator: this.$login.f.f_operator
474
- }
475
- console.log('filepath=' + JSON.stringify(data))
476
- await this.$resetpost(`rs/logic/importSms`, data, {resolveMsg: null, rejectMsg: '导入失败', silent: true}, 0).then((res) => {
477
- if (res.data.type == 'success') {
478
- this.$showAlert(`导入成功信息:${res.data.allSms}条,导入失败:${res.data.errorSms}`, res.data.type, 2000)
479
- } else {
480
- this.$showMessage(res.data.msg)
481
- }
482
-
483
- // 关闭上传框
484
- this.closeFile()
485
- // 重新查询
486
- this.selfSearch()
487
- })
488
- },
489
- 'onFileError' (error) {
490
- this.$showAlert(error, 'warning', 2000)
491
- }
492
- }
493
- }
494
- </script>
495
- <style>
496
- #tooltip {
497
- height: auto;
498
- }
499
- </style>
1
+ <template>
2
+
3
+ <criteria-paged :model="model" v-ref:paged >
4
+ <p class="bg-info text-center" style="padding: 8px;font-size: 20px">短信信息
5
+ </p>
6
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
7
+ <div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
8
+ <div class="row">
9
+ <div class="form-group col-sm-3">
10
+ <label class="font_normal_body">短信类型</label>
11
+ <v-select id="f_send_type"
12
+ v-model="model.f_send_type"
13
+ placeholder='短信类型'
14
+ style="width: 60%"
15
+ :value.sync="model.f_send_type"
16
+ :options='$parent.$parent.getsendType'
17
+ condition= "f_send_type = '{}'"
18
+ close-on-select>
19
+ </v-select>
20
+ </div>
21
+ <div class="form-group col-sm-3">
22
+ <label class="font_normal_body">发送状态</label>
23
+ <v-select id="f_send"
24
+ v-model="model.f_send"
25
+ placeholder='发送状态'
26
+ style="width: 60%"
27
+ :value.sync="model.f_send"
28
+ :options='$parent.$parent.sendType'
29
+ condition= "f_send = '{}'"
30
+ close-on-select>
31
+ </v-select>
32
+ </div>
33
+
34
+
35
+ <div class="span" style="float:right;">
36
+ <button class="button_search button_spacing width-60" @click="$parent.$parent.search()" v-el:cba>查询</button>
37
+ <button class="button_clear button_spacing width-60" @click="$parent.$parent.confirms()" v-el:cba>发送</button>
38
+ <button class="button_delete button_spacing width-60" @click="$parent.$parent.delete()" v-el:cba>删除</button>
39
+ <button class="button_delete button_spacing width-60" @click="$parent.$parent.deleteAll()" v-el:cba>删除全部</button>
40
+ <button v-show="$parent.$parent.alllist" class="button_clear button_spacing width-60" @click="$parent.$parent.retrun()" v-el:cba>返回</button>
41
+ <button class="button_export button_spacing" title="权限:短信导入" v-show="$parent.$parent.smsMessaage.includes('短信导入')" @click="$parent.$parent.importSMS()">导入</button>
42
+ <export-excel :data="$parent.$parent.getCondition" sql-name="salegetSendAll"
43
+ template-name="短信信息导出" sqlurl="rs/logic/exportfile"
44
+ :field="$parent.$parent.getfield" :choose-col="true"></export-excel>
45
+ <!-- items: 'f_userinfo_id,f_user_name,f_user_phone,f_user_id, f_gas,f_amount,f_balance,f_arreamount,f_arrears_date,f_create_date,f_send_content,f_send,f_send_date, f_filiale,f_outlets',-->
46
+ <!-- orderitem: 'id',tablename: 't_sms',-->
47
+ <div
48
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
49
+ @click="$parent.$parent.hidden()" class="button_spacing" style="float: right">
50
+ </div>
51
+ </div>
52
+ </div>
53
+ <div class="row" v-show="$parent.$parent.criteriaShow">
54
+ <div class="form-group col-sm-3">
55
+ <label class="font_normal_body">评价级别</label>
56
+ <v-select id="f_reply_type"
57
+ v-model="model.f_reply_type"
58
+ placeholder='评价级别'
59
+ style="width: 60%"
60
+ :value.sync="model.f_reply_type"
61
+ :options='$parent.$parent.replyType'
62
+ condition= "f_reply_type = '{}'"
63
+ close-on-select>
64
+ </v-select>
65
+ </div>
66
+ <div class="form-group col-sm-3">
67
+ <label class="font_normal_body">用户编号</label>
68
+ <input type="text" class="form-control" v-model="model.f_userinfo_code" placeholder='用户编号' v-filter v-figure_filter
69
+ condition="f_userinfo_code = '{}'" v-next-el='yhxm' style="width: 60%"
70
+ :size="model.f_userinfo_code ? model.f_userinfo_id.length : 4">
71
+ </div>
72
+ <div class="form-group col-sm-3">
73
+ <label class="font_normal_body">用户姓名</label>
74
+ <input type="text" class="form-control" v-model="model.f_user_name" placeholder='用户姓名'
75
+ condition="f_user_name like '%{}%'" v-next-el='yhxm' style="width: 60%"
76
+ :size="model.f_user_name ? model.f_user_name.length : 4">
77
+ </div>
78
+ <div class="form-group col-sm-3">
79
+ <label class="font_normal_body">用户电话</label>
80
+ <input type="text" class="form-control" v-model="model.f_user_phone" placeholder='用户电话'
81
+ condition="f_user_phone like '%{}%'" v-next-el='yhxm' style="width: 60%"
82
+ :size="model.f_user_phone ? model.f_user_phone.length : 4">
83
+ </div>
84
+
85
+ <div class="form-group col-sm-3">
86
+ <label class="font_normal_body">选择小区</label>
87
+ <v-select :value.sync="model.f_residential_area" :value-single="true"
88
+ class="select_list select"
89
+ style="width: 60%"
90
+ :options='$parent.$parent.residentialArea' placeholder='选择小区'
91
+ close-on-select search="true">
92
+ </v-select>
93
+ </div>
94
+ <div class="form-group col-sm-3" title="短信生成开始时间">
95
+ <label class="font_normal_body">开始日期</label>
96
+ <datepicker id="f_create_start_date" placeholder="开始日期"
97
+ v-model="model.f_create_start_date"
98
+ :value.sync="model.f_create_start_date"
99
+ :disabled-days-of-Week="[]"
100
+ style="width: 60%"
101
+ condition="convert(varchar(10),f_sendtime,120) >= '{}'"
102
+ :format="'yyyy-MM-dd'"
103
+ :show-reset-button="reset">
104
+ </datepicker>
105
+ </div>
106
+ <div class="form-group col-sm-3" title="短信生成结束时间">
107
+ <label class="font_normal_body">结束日期</label>
108
+ <datepicker id="f_create_end_date" placeholder="结束日期"
109
+ v-model="model.f_create_end_date"
110
+ :value.sync="model.f_create_end_date"
111
+ :disabled-days-of-Week="[]"
112
+ style="width: 60%"
113
+ condition="convert(varchar(10),f_sendtime,120) <= '{}'"
114
+ :format="'yyyy-MM-dd'"
115
+ :show-reset-button="reset">
116
+ </datepicker>
117
+ </div>
118
+ </div>
119
+ </div>
120
+ </criteria>
121
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
122
+ <template partial='head'>
123
+ <tr>
124
+ <th>
125
+ <input type="checkbox" @click="$parent.$parent.$parent.isAll(model.pageIndex)">
126
+ </th>
127
+ <th><nobr>序号</nobr></th>
128
+ <th><nobr>用户信息</nobr></th>
129
+ <th><nobr>用户编号</nobr></th>
130
+ <th><nobr>电话号码</nobr></th>
131
+ <th><nobr>短信类型</nobr></th>
132
+ <th><nobr>短信内容</nobr></th>
133
+ <th><nobr>发送状态</nobr></th>
134
+ <th><nobr>发送时间</nobr></th>
135
+ <th><nobr>状态报告</nobr></th>
136
+ <th><nobr>评价级别</nobr></th>
137
+ <th><nobr>回执状态</nobr></th>
138
+ <th><nobr>评价内容</nobr></th>
139
+ <th><nobr>操作人</nobr></th>
140
+ <th><nobr>操作</nobr></th>
141
+ </tr>
142
+ </template>
143
+ <template partial='body'>
144
+ <td style="text-align:center">
145
+ <input type="checkbox" v-model="$parent.$parent.$parent.ids"
146
+ :value="row.id">
147
+ </td>
148
+ <td style="text-align:center"><nobr>{{$index+1}}</nobr></td>
149
+ <td style="text-align:center"><nobr>{{row.f_userinfo_id}}|{{row.f_user_name}}|{{row.f_user_phone}}</nobr></td>
150
+ <td style="text-align:center"><nobr>{{row.f_userinfo_code}}</nobr></td>
151
+ <td style="text-align:center"><nobr>{{row.f_phone}}</nobr></td>
152
+ <td style="text-align:center"><nobr>{{row.f_send_type}}</nobr></td>
153
+ <td style="text-align:center;width: 20px" :title="row.f_content"><nobr>{{row.f_content.substr(0,20)}}</nobr></td>
154
+ <td style="text-align:center"><nobr>{{row.f_send}}</nobr></td>
155
+ <td style="text-align:center"><nobr>{{row.f_sendtime}}</nobr></td>
156
+ <td style="text-align:center"><nobr>{{row.f_statedetail}}</nobr></td>
157
+ <td style="text-align:center"><nobr>{{row.f_reply_type}}</nobr></td>
158
+ <td style="text-align:center"><nobr>{{row.f_result_msg}}</nobr></td>
159
+ <td style="text-align:center"><nobr>{{row.f_reply_content}}</nobr></td>
160
+ <td style="text-align:center"><nobr>{{row.f_operator}}</nobr>
161
+ </td>
162
+ <td :class="'back-blue'" style="text-align: center;" >
163
+ <div v-if="row.f_state == '未发'">
164
+ <button class="button_clear button_spacing width-50" @click="$parent.$parent.$parent.amendment(row)">修正</button>
165
+ <button class="button_delete button_spacing width-50" @click="$parent.$parent.$parent.delete2(row)">删除</button>
166
+ </div>
167
+ </td>
168
+ </template>
169
+ </data-grid>
170
+ </criteria-paged>
171
+
172
+ <modal :show.sync="arrshow" v-ref:modal backdrop="false">
173
+ <header slot="modal-header" class="modal-header">
174
+ <h4 class="modal-title">修正</h4>
175
+ </header>
176
+ <article slot="modal-body" class="modal-body">
177
+ <div class="form-group">
178
+ <input type="text" class="input_search" v-model="amendcontent" :value.sync="amendcontent"
179
+ placeholder='短信内容'>
180
+ </div>
181
+ </article>
182
+ <footer slot="modal-footer" class="modal-footer">
183
+ <button v-show="arrshow" type="button" class="btn btn-default" @click='close'>取消</button>
184
+ <button v-show="arrshow" type="button" class="btn btn-success" @click='create(row)'>确认</button>
185
+ </footer>
186
+ </modal>
187
+ <modal :show.sync="showFile" v-ref:modal backdrop="true">
188
+ <header slot="modal-header" class="modal-header">
189
+ <button type="button" class="close" @click="closeFile"><span>&times;</span></button>
190
+ <h4 class="modal-title">选择文件</h4>
191
+ </header>
192
+ <article slot="modal-body" class="modal-body">
193
+ <div class="form-group">
194
+ <file-upload class="my-file-uploader" name="importSms" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
195
+ </div>
196
+ </article>
197
+ <footer slot="modal-footer" class="modal-footer"></footer>
198
+ </modal>
199
+ </template>
200
+
201
+ <script>
202
+ /**
203
+ *阶梯气价查询列表
204
+ */
205
+ import { PagedList, HttpResetClass } from 'vue-client'
206
+ import Vue from 'vue'
207
+ export default {
208
+ data () {
209
+ return {
210
+ criteriaShow: false,
211
+ model: new PagedList('rs/sql/getSendAll', 20),
212
+ f_send: '未发送',
213
+ downDate: this.$login.toStandardDateString(),
214
+ ids: [],
215
+ show: false,
216
+ pages: [],
217
+ arrshow: false,
218
+ alllist: false,
219
+ // 修正的短信内容
220
+ amendcontent: '',
221
+ isFirst: true,
222
+ amendid: '',
223
+ // 小区
224
+ residentialArea: [],
225
+ sendType: [{label: '全部', value: ''}, ...this.$appdata.getParam('发送状态') ? this.$appdata.getParam('发送状态') : {}],
226
+ getsendType: this.$appdata.getParam('短信类型'),
227
+ replyType: this.$appdata.getParam('评价级别'),
228
+ bodydata: ['f_user_name', 'f_userinfo_code', 'f_phone', 'f_send_type', 'f_content', 'f_send', 'f_sendtime', 'f_statedetail', 'f_reply_type', 'f_reply_content', 'f_reply_content'],
229
+ header: ['用户姓名', '用户编号', '电话号码', '短信类型', '短信内容', '发送状态', '发送时间', '状态报告', '评价级别', '回执状态', '评价内容'],
230
+ showFile: false
231
+ }
232
+ },
233
+ props: {
234
+ condition: {
235
+ type: String
236
+ }
237
+ },
238
+ computed: {
239
+ getCondition () {
240
+ return {condition: this.$refs.paged.$refs.cri.condition}
241
+ },
242
+ getfield () {
243
+ let data = {}
244
+ this.bodydata.forEach((value, index) => {
245
+ data[this.bodydata[index]] = this.header[index]
246
+ })
247
+ return data
248
+ console.log('field' + data)
249
+ }
250
+ },
251
+ ready () {
252
+ this.getaddress()
253
+ this.search()
254
+ console.log('============>')
255
+ },
256
+ methods: {
257
+ importSMS () {
258
+ this.showFile = true
259
+ },
260
+ // 关闭文件上传对话框
261
+ closeFile () {
262
+ this.showFile = false
263
+ // 将选的文件清空
264
+ this.$refs.file.$el.querySelector('input').value = ''
265
+ },
266
+ hidden () {
267
+ this.criteriaShow = !this.criteriaShow
268
+ },
269
+ async getaddress () {
270
+ console.log('开始获取小区')
271
+ let HttpReset = new HttpResetClass()
272
+ var data = await HttpReset.load('POST', 'rs/sql/address_getarealist', {
273
+ data: {
274
+ condition: '1=1'
275
+ }
276
+ }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
277
+ console.log('小区', data)
278
+ let house = []
279
+ for (let row of data.data) {
280
+ console.log('开始保存小区')
281
+ house.push({label: row.f_residential_area, value: row.f_residential_area})
282
+ }
283
+ this.residentialArea = house
284
+ },
285
+
286
+ // 把数据库查询数据转换为下拉数据
287
+ // calculate(rows){
288
+ // let data = []
289
+ // rows.forEach((row, n) => {
290
+ // data[n] = {label: row.f_residential_area, value: row.f_residential_area}
291
+ // })
292
+ // return data
293
+ // },
294
+ amendment (row) {
295
+ this.arrshow = true
296
+ this.amendid = row.id
297
+ },
298
+ delete () {
299
+ if (this.ids.length !== 0) {
300
+ this.$refs.paged.$refs.cri.condition = this.$refs.paged.$refs.cri.condition + 'and id in (' + this.ids + ')'
301
+ }
302
+ this.$showMessage('删除后不可恢复,确认删除?', ['confirm', 'cancel']).then((res) => {
303
+ if (res === 'confirm') {
304
+ this.$LogicService.deletMessage(this.$refs.paged.$refs.cri.condition).then((res) => {
305
+ this.$dispatch('success')
306
+ }).catch((error) => {
307
+ this.$dispatch('error', error)
308
+ })
309
+ }
310
+ this.$refs.paged.$refs.cri.search()
311
+ })
312
+ },
313
+ deleteAll () {
314
+ // 删除所有查询结果
315
+ let self = this;
316
+ if (this.model.model.count <= 0) {
317
+ this.$showAlert('无短信需要被删除!','warning',2000);
318
+ return;
319
+ }
320
+ this.$showMessage(`本次操作将删除当前查询页面中未发送或发送失败的所有短信,确认删除?`, ['confirm', 'cancel']).then(res => {
321
+ if (res === 'confirm') {
322
+ self.$LogicService.deletAllMessage(this.$refs.paged.$refs.cri.condition).then((res) => {
323
+ self.$dispatch('success')
324
+ }).catch(error => {
325
+ self.$dispatch('error', error)
326
+ })
327
+ }
328
+ self.$refs.paged.$refs.cri.search()
329
+ })
330
+ },
331
+ delete2 (row) {
332
+ let condition = '1=1' + ' and id = ' + row.id
333
+ this.$showMessage('删除后不可恢复,确认删除?', ['confirm', 'cancel']).then((res) => {
334
+ console.log('删除2方法')
335
+ if (res === 'confirm') {
336
+ this.$LogicService.deletMessage(condition).then((res) => {
337
+ this.$dispatch('success')
338
+ }).catch((error) => {
339
+ this.$dispatch('error', error)
340
+ })
341
+ }
342
+ this.$refs.paged.$refs.cri.search()
343
+ })
344
+ },
345
+ retrun () {
346
+ this.alllist = false
347
+ this.$dispatch('allchange2')
348
+ },
349
+ close () {
350
+ this.arrshow = false
351
+ },
352
+ create () {
353
+ if (this.amendcontent === '' || this.amendcontent === null) {
354
+ this.$showAlert('短信内容不能为空', 'warning', 2000)
355
+ return
356
+ }
357
+ this.arrshow = false
358
+ // 组织数据
359
+ let content = {
360
+ // 批量减免金额
361
+ f_content: this.amendcontent,
362
+ f_operator: Vue.$login.f.name,
363
+ f_operatorid: Vue.$login.f.id,
364
+ f_orgid: Vue.$login.f.orgid,
365
+ f_orgname: Vue.$login.f.orgs,
366
+ f_depid: Vue.$login.f.depids,
367
+ f_depname: Vue.$login.f.deps,
368
+ id: this.amendid
369
+
370
+ }
371
+ console.log('数据id', content.id)
372
+ this.$resetpost('rs/logic/amendcontent', content, {
373
+ resolveMsg: null,
374
+ rejectMsg: '修正短信内容出错!!!'
375
+ }).then((res) => {
376
+ this.search()
377
+ })
378
+ },
379
+ confirms () {
380
+ let data = {
381
+ condition: this.$refs.paged.$refs.cri.condition
382
+
383
+ }
384
+ console.log('this.ids:', this.ids)
385
+ console.log('-----------------------------' + data.condition)
386
+ if (this.ids.length !== 0) {
387
+ data.condition = data.condition + 'and id in (' + this.ids + ')'
388
+
389
+ this.$showMessage(`您本次发送短信的条数为${this.ids.length},是否确认下发?`, ['confirm', 'cancel']).then((res) => {
390
+ if (res === 'confirm') {
391
+ this.ids = []
392
+ console.log('data1:', data)
393
+ this.$LogicService.sendMessage(data).then((res) => {
394
+ this.$dispatch('success')
395
+ this.$refs.paged.$refs.cri.search()
396
+ }).catch((error) => {
397
+ this.$dispatch('error', error)
398
+ this.$refs.paged.$refs.cri.search()
399
+ })
400
+ }
401
+ })
402
+ } else {
403
+ this.$showMessage('是否确认全部发送?', ['confirm', 'cancel']).then((res) => {
404
+ if (res === 'confirm') {
405
+ this.ids = []
406
+ console.log('data2:', data)
407
+ this.$LogicService.sendMessage(data).then((res) => {
408
+ this.$dispatch('success')
409
+ this.$refs.paged.$refs.cri.search()
410
+ }).catch((error) => {
411
+ this.$dispatch('error', error)
412
+ this.$refs.paged.$refs.cri.search()
413
+ })
414
+ }
415
+ })
416
+ }
417
+ },
418
+ search () {
419
+ this.$refs.paged.$refs.cri.search()
420
+ if (this.isFirst) {
421
+ this.isFirst = false
422
+ } else {
423
+ this.$dispatch('allchange')
424
+ this.alllist = true
425
+ }
426
+ },
427
+ selfSearch (args) {
428
+ // this.condition = ' and convert(varchar(10),f_create_date,120) = ' + "'" + Util.toStandardDateString() + "'"
429
+ // if (!Util.f.parent.parent.name.includes('统一资源管理')) {
430
+ // args.condition = `${args.condition} and f_orgid = '${Vue.$login.f.orgid}'`
431
+ // }
432
+ // args.condition += this.condition
433
+ this.model.search(args.condition, this.model)
434
+ this.ids = []
435
+ },
436
+ isAll (page) {
437
+ if (this.pages.includes(page)) { // 已添加,取消动作
438
+ // 从ids中删除本页所有数据的ids
439
+ this.addOrRemove(false)
440
+ this.pages = this.pages.filter((item) => {
441
+ return item !== page
442
+ })
443
+ } else { // 未添加
444
+ this.pages.push(page) // 添加id,添加动作
445
+ this.addOrRemove(true)
446
+ }
447
+ },
448
+ addOrRemove (is) {
449
+ let that = this
450
+ if (is) { // 添加本页所有数据到ids中
451
+ this.ids = []
452
+ this.model.rows.forEach((row) => {
453
+ if (!that.ids.includes(row.id)) {
454
+ that.ids.push(row.id)
455
+ }
456
+ })
457
+ } else { // 从ids中取消所有的数据
458
+ this.ids = []
459
+ this.model.rows.forEach((row) => {
460
+ that.ids = that.ids.filter((item) => {
461
+ return item !== row.id
462
+ })
463
+ })
464
+ }
465
+ }
466
+ },
467
+ events: {
468
+ 'onFileUpload': async function (file, res) {
469
+ console.log('上传完毕' + JSON.stringify(res))
470
+ let data = {
471
+ filepath: res.f_downloadpath,
472
+ f_operatorid: this.$login.f.f_operatorid,
473
+ f_operator: this.$login.f.f_operator
474
+ }
475
+ console.log('filepath=' + JSON.stringify(data))
476
+ await this.$resetpost(`rs/logic/importSms`, data, {resolveMsg: null, rejectMsg: '导入失败', silent: true}, 0).then((res) => {
477
+ if (res.data.type == 'success') {
478
+ this.$showAlert(`导入成功信息:${res.data.allSms}条,导入失败:${res.data.errorSms}`, res.data.type, 2000)
479
+ } else {
480
+ this.$showMessage(res.data.msg)
481
+ }
482
+
483
+ // 关闭上传框
484
+ this.closeFile()
485
+ // 重新查询
486
+ this.selfSearch()
487
+ })
488
+ },
489
+ 'onFileError' (error) {
490
+ this.$showAlert(error, 'warning', 2000)
491
+ }
492
+ }
493
+ }
494
+ </script>
495
+ <style>
496
+ #tooltip {
497
+ height: auto;
498
+ }
499
+ </style>