sale-client 4.2.144 → 4.2.146

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 (100) hide show
  1. package/build/dev-server.js +48 -28
  2. package/index.html +7 -2
  3. package/package.json +1 -1
  4. package/src/App.vue +1 -1
  5. package/src/components/revenue/HandManager/MeterBookUser.vue +726 -726
  6. package/src/components/revenue/base/CardServer/ReadCard.vue +98 -98
  7. package/src/components/revenue/comprehen/ComprehenOperation/QrPay/QrPaymentDetailed.vue +423 -423
  8. package/src/components/revenue/comprehen/Maintenance/hand/handOperate.vue +469 -469
  9. package/src/components/revenue/machineHandManage/ArrearsQuery.vue +938 -938
  10. package/src/filiale/alashan/eticket/EticketRecordList.vue +428 -428
  11. package/src/filiale/bayan/ChargeList.vue +1010 -1010
  12. package/src/filiale/bayan/StockListmain.vue +543 -543
  13. package/src/filiale/bazhong/UserInfoDetailManageNew.vue +245 -245
  14. package/src/filiale/bazhong/ic_detail/ChangeMeterQueryUser.vue +370 -370
  15. package/src/filiale/bazhong/sale.js +8 -8
  16. package/src/filiale/beifangshiye/OtherChargeNew.vue +625 -625
  17. package/src/filiale/lixianV3/ArrearsQuery.vue +938 -938
  18. package/src/filiale/lixianV3/InsuranceChargesDetails.vue +425 -425
  19. package/src/filiale/meihekou/MeterOperatemain.vue +59 -3
  20. package/src/filiale/meihekou/common/userinfo_detail/ic_detail/MachineRecordQuery.vue +281 -281
  21. package/src/filiale/meihekou/handAudit/MeterReadAudit.vue +32 -6
  22. package/src/filiale/meihekou/replacementSingleInfoOperation.vue +50 -0
  23. package/src/filiale/ronghao/ArrearsQuery.vue +974 -974
  24. package/src/filiale/ronghao/CardService.js +2144 -2144
  25. package/src/filiale/ronghao/InsuranceManage.vue +58 -58
  26. package/src/filiale/ronghao/MachineChargeService.js +149 -149
  27. package/src/filiale/ronghao/PaymentCode.vue +60 -42
  28. package/src/filiale/ronghao/PriceChangeCompensation/CompensationManage.vue +26 -26
  29. package/src/filiale/ronghao/PriceChangeCompensation/JbCompensation.vue +343 -343
  30. package/src/filiale/ronghao/PriceChangeCompensation/SurplusRecordDetail.vue +74 -74
  31. package/src/filiale/ronghao/ReplaceCardManage.vue +415 -415
  32. package/src/filiale/ronghao/Upload.vue +654 -654
  33. package/src/filiale/ronghao/cardDown.vue +1141 -1141
  34. package/src/filiale/ronghao/changemeterOperate.vue +315 -315
  35. package/src/filiale/ronghao/fillgasSpecific.vue +313 -313
  36. package/src/filiale/ronghao/ic_detail/ChargeRecordQuery.vue +106 -106
  37. package/src/filiale/ronghao/ic_detail/WatchCollection.vue +115 -115
  38. package/src/filiale/ronghao/ic_detail/WebHandQueryUser.vue +411 -411
  39. package/src/filiale/ronghao/machineDown.vue +1176 -1176
  40. package/src/filiale/ronghao/replacementSingleInfoOperation.vue +315 -315
  41. package/src/filiale/ronghao/specificInformation.vue +537 -537
  42. package/src/filiale/yangchun/ChargeList.vue +954 -954
  43. package/src/filiale/yuncheng/ChangeMeter.vue +1149 -1149
  44. package/src/filiale/yuncheng/FileManageService.js +469 -469
  45. package/src/filiale/yuncheng/ParamHistory.vue +147 -0
  46. package/src/filiale/yuncheng/changemeterListMaintain.vue +504 -504
  47. package/src/filiale/yuncheng/sale.js +1 -0
  48. package/src/filiale/zhongsheng/BlackListList.vue +293 -293
  49. package/src/filiale/zhongyi/HandQueryUser.vue +389 -389
  50. package/src/main.js +3 -3
  51. package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
  52. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  53. package/.gradle/5.2.1/gc.properties +0 -0
  54. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  55. package/.gradle/buildOutputCleanup/cache.properties +0 -2
  56. package/.gradle/vcs-1/gc.properties +0 -0
  57. package/hs_err_pid255736.log +0 -796
  58. package/src/components/FilesManage/addressts/FileUserFilests.vue +0 -671
  59. package/src/components/FilesManage/ncUserinfoList.vue +0 -315
  60. package/src/components/SellGasCharge/MeterCharge/CardDataRewrite.vue +0 -107
  61. package/src/components/SendCard/SendCardData.vue +0 -208
  62. package/src/components/accounts/accountAdd.vue +0 -276
  63. package/src/components/accounts/accountsList.vue +0 -183
  64. package/src/components/accounts/accountsManage.vue +0 -87
  65. package/src/components/common/chargeinfo/chargeinfo.vue +0 -55
  66. package/src/components/common/userinfo_detail/config/exportConfig.js +0 -85
  67. package/src/components/ncarchives/ncArchivesAdd.vue +0 -468
  68. package/src/components/ncarchives/ncArchivesList.vue +0 -159
  69. package/src/components/ncarchives/ncUserfilesList.vue +0 -373
  70. package/src/components/ncarchives/ncarchivesmanage.vue +0 -80
  71. package/src/components/revenue/IOTArrears/arrears.vue +0 -323
  72. package/src/components/revenue/IOTArrears/iotRechargeAudit.vue +0 -369
  73. package/src/components/revenue/base/rightview/carddetail/cardiotfeeChangeDetail.vue +0 -59
  74. package/src/components/revenue/base/rightview/carddetail/reduceChangeDetail.vue +0 -59
  75. package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchCancellationts.vue +0 -73
  76. package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchEnablets.vue +0 -73
  77. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/ReduceAddGas.vue +0 -199
  78. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionManage.vue +0 -24
  79. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionYSManage.vue +0 -24
  80. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeDeduction.vue +0 -185
  81. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeYSDeduction.vue +0 -185
  82. package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/ChangeFlowMeter.vue +0 -356
  83. package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/CorrectionMeter.vue +0 -148
  84. package/src/components/revenue/comprehen/SpecialUser/BlackList/BlackUserList.vue +0 -136
  85. package/src/components/revenue/recordMainten/sellinggas/AddWarehousemain.vue +0 -65
  86. package/src/components/revenue/recordMainten/sellinggas/MeterOperateAdd.vue +0 -483
  87. package/src/components/revenue/recordMainten/sellinggas/MeterOperatemain.vue +0 -279
  88. package/src/components/revenue/recordMainten/sellinggas/MeterOperatemainImport.vue +0 -265
  89. package/src/components/thirdapply/thirdAdd.vue +0 -289
  90. package/src/components/thirdapply/thirdList.vue +0 -162
  91. package/src/components/thirdapply/thirdManage.vue +0 -74
  92. package/src/components/webMeter/InstructQuery.vue +0 -414
  93. package/src/components/webMeter/ParamSet/ParamSet.vue +0 -556
  94. package/src/components/webMeter/ParamSet/ParamSetForm.vue +0 -296
  95. package/src/components/webMeter/WebUserHand.vue +0 -483
  96. package/src/components/webMeter/instructionView/NewQueryInstruct.vue +0 -509
  97. package/src/components/webMeter/instructionView/NewQueryInstructMain.vue +0 -48
  98. package/src/components/webMeter/webManage/NewMeterList.vue +0 -461
  99. package/src/plugins/FileManageServicets.js +0 -214
  100. package/src/plugins/GetImg.js +0 -53
@@ -1,654 +1,654 @@
1
- <template>
2
- <div style="background-color: #FFFFFF;" id="fileupload">
3
- <div class="row" style="background-color: #FFFFFF;height: auto;border-radius: 8px">
4
- <div style="width:75%;margin: 30px auto 10px auto;padding-bottom: 10px">
5
- <div class="inpGroup col-sm-7">
6
- <div class="col-sm-10 form-input-group">
7
- <label class="font_normal_body col-sm-6" style="text-align: center">文件说明</label>
8
- <input v-model="headers.fremarks" class="input_search" placeholder="文件说明"
9
- style="vertical-align:middle;width: 60%"/>
10
- </div>
11
- <div class="col-sm-10 form-input-group" style="margin-top:10px;" title="参数管理:附件使用类型">
12
- <label class="font_normal_body col-sm-6" style="text-align: center">使用类型</label>
13
- <v-select type="button" placeholder="使用类型" :options="foptions"
14
- close-on-select
15
- direction="up"
16
- :value.sync="fusetype" v-model="fusetype" style="vertical-align:middle;width: 60%">
17
- </v-select>
18
- </div>
19
- </div>
20
- <div class="col-sm-5 resBtn">
21
- <button class="button_search btn-gn" @click="upload()" v-show="!takeimg">拍照</button>
22
- <button class="button_search btn-gn" @click="fileUpload()" v-show="!isupload">审核资料上传</button>
23
- </div>
24
- </div>
25
- <div class="showList col-sm-12"
26
- style="padding: 10px;margin-top: 20px;">
27
- <hr style="width: 90%;border: #ccc 1px solid;margin:0 auto"/>
28
- <div :class="cols ? cols : 'col-sm-6'" style="padding:10px 10px 0px 10px;height: auto;box-sizing: border-box"
29
- v-for="row in fileInfoData">
30
- <div class="showData">
31
- <div class="left">
32
- <a href="#" class="thumbnail" style="width:100%;height:100%">
33
- <img
34
- v-if="(row.f_filetype.toLowerCase()==='jpg'||row.f_filetype.toLowerCase()==='png'||row.f_filetype.toLowerCase()==='gif'||row.f_filetype.toLowerCase()==='bmp')&&!rotating"
35
- :src="row.f_downloadURL" alt="..."/>
36
- <img-self
37
- v-if="(row.f_filetype.toLowerCase()==='jpg'||row.f_filetype.toLowerCase()==='png'||row.f_filetype.toLowerCase()==='gif'||row.f_filetype.toLowerCase()==='bmp')&&rotating"
38
- :width="width?width:60" :height="height?height:60" :src="row.f_downloadURL" alt="..."></img-self>
39
- <img v-if="row.f_filetype.toLowerCase()==='pdf'" src="../../../static/mainicon/pdf.jpg" alt="" style="width:66%"/>
40
- <img-self v-if="row.f_filetype.toLowerCase()==='pdf'&&rotating" :width="width?width:60"
41
- :height="height?height:60" src="../../../static/mainicon/pdf.jpg" alt="..."></img-self>
42
- <img v-if="row.f_filetype.toLowerCase().match('/wav|mp3|amr/')" src="../../../static/mainicon/sound.png" alt=""
43
- style="width:66%"/>
44
- <img v-if="row.f_filetype.toLowerCase()==='xls'||row.f_filetype.toLowerCase()==='xlsx'"
45
- src="../../../static/mainicon/excel.jpg" alt="" style="width:66%"/>
46
- <img-self v-if="row.f_filetype.toLowerCase()==='xls'||row.f_filetype.toLowerCase()==='xlsx'&&rotating"
47
- :width="width?width:60" :height="height?height:60" src="../../../static/mainicon/excel.jpg"
48
- alt="..."></img-self>
49
- <img v-if="row.f_filetype.toLowerCase()==='doc'||row.f_filetype.toLowerCase()==='docx'"
50
- src="../../../static/mainicon/doc.jpg" alt="" style="width:66%"/>
51
- <img-self v-if="row.f_filetype.toLowerCase()==='doc'||row.f_filetype.toLowerCase()==='docx'&&rotating"
52
- :width="width?width:60" :height="height?height:60" src="../../../static/mainicon/doc.jpg" alt="..."></img-self>
53
- </a>
54
- </div>
55
- <div class="right">
56
- <p :title="row.f_uploaddate" class="top clears">
57
- <strong>上传时间</strong>:&nbsp;<span>{{ row.f_uploaddate }}</span></p>
58
- <p :title="row.f_username" class="top clears">
59
- <strong>操作员</strong>:&nbsp;<span>{{ row.f_username }}</span></p>
60
- <p :title="row.f_filename" class="top clears"><strong>文件名</strong>:&nbsp;{{ row.f_filename }}</p>
61
- <p :title="row.fremarks" class="top clears"><strong>文件说明</strong>:&nbsp;{{ row.fremarks }}</p>
62
- <p>
63
- <a
64
- v-if="row.f_filetype.toLowerCase()==='jpg'||row.f_filetype.toLowerCase()==='png'||row.f_filetype.toLowerCase()==='gif'||row.f_filetype.toLowerCase()==='bmp'"
65
- :href="row.f_downloadURL" style="background:#6aa6e2" class="btn btn-primary" target="_blank"
66
- role="button">预览</a>
67
- <button class="button_search btn-gn"
68
- v-if="row.f_filetype.toLowerCase().match('/wav|mp3|amr/')||row.f_filetype.toLowerCase()==='pdf'||row.f_filetype.toLowerCase()==='xls'||row.f_filetype.toLowerCase()==='xlsx'||row.f_filetype.toLowerCase()==='doc'||row.f_filetype.toLowerCase()==='docx'"
69
- @click="downloadfile(row.f_downloadURL)">下载
70
- </button>
71
- <a v-if="isDelete == '1'" @click="delet($index,row)" href="#" class="btn btn-default"
72
- role="button">删除</a>
73
- </p>
74
- </div>
75
- </div>
76
- </div>
77
- </div>
78
- </div>
79
- <modal :show.sync="showUpload" styles="border-radius:20px;margin-top:300px" v-ref:modal backdrop="false"
80
- :width="700">
81
- <header slot="modal-header" class="modal-header">
82
- <button type="button" class="close" @click="close"><span class="glyphicon glyphicon-remove"></span></button>
83
- <h4 class="modal-title" style="text-align: center">文件上传</h4>
84
- </header>
85
- <article slot="modal-body" class="modal-body" style="height: 70px">
86
- <div class="form-group">
87
- <file-upload style="margin-left:100px;padding-top:20px" class="my-file-uploader" :name="'myFile' + blodid"
88
- action="api/af-revenue/file/uploadFile" tagname="文件上传" :headers="headers" multiple
89
- v-ref:file></file-upload>
90
- </div>
91
- </article>
92
- <footer slot="modal-footer" class="modal-footer">
93
- </footer>
94
- </modal>
95
- </div>
96
-
97
- <high-meter :show.sync="showhighmeter" @photo-finish="newPhoto" v-if="showhighmeter"
98
- v-on:confirminfo="confirmIdCard"></high-meter>
99
- </template>
100
- <script>
101
- import { HttpResetClass } from 'vue-client'
102
- import Vue from 'vue'
103
- export default {
104
- title: '附件',
105
- props: ['blodid', 'businessid', 'isremark', 'isusetype', 'takeimg', 'defname', 'isupload', 'fusetype', 'cols', 'width', 'height'],
106
- data () {
107
- return {
108
- isDelete: '0', // 删除按钮,可以进行控制(权限等)
109
- fileInfoData: [], // 数据库存储的文件记录对象数组
110
- headers: {
111
- 'username': this.$login.f.name,
112
- 'blodid': '',
113
- 'businessid': '',
114
- 'fremarks': '',
115
- 'defname': '',
116
- 'fusetype': this.fusetype ? this.fusetype : ''
117
- }, // 调用api/af-revenue/file/uploadFile 的参数
118
- showUpload: false, // 上传模态框控制
119
- showhighmeter: false, // 高拍仪组件控制
120
- fileRemark: '', // 文件说明
121
- rotating: this.$appdata.getSingleValue('图片附加功能') // 文件是否旋转
122
- }
123
- },
124
- methods: {
125
- confirmIdCard (IdCardInfo) {
126
- this.showhighmeter = !this.showhighmeter
127
- },
128
- // 查询按钮事件
129
- delet (index, row) {
130
- this.$resetdelete('api/af-revenue/entity/t_files', {id: row.id}, {
131
- resolveMsg: '删除成功',
132
- rejectMsg: '删除失败'
133
- }).then((res) => {
134
- this.$dispatch('delResid', row.id)
135
- this.fileInfoData.splice(index, 1)
136
- })
137
- },
138
- downloadfile (filepath) {
139
- var link = document.createElement('a')
140
- // let pathName = "http://" + location.host + filepath;
141
- link.href = filepath
142
- link.target = '_blank'
143
- link.dispatchEvent(new MouseEvent('click'))
144
- },
145
- GetRequest () {
146
- var url = location.search
147
- var theRequest = new Object()
148
- if (url.indexOf('?') != -1) {
149
- var str = url.substr(1)
150
- let strs = str.split('&')
151
- for (var i = 0; i < strs.length; i++) {
152
- theRequest[strs[i].split('=')[0]] = decodeURIComponent(strs[i].split('=')[1])
153
- }
154
- }
155
- return theRequest
156
- },
157
- upload () {
158
- if (this.showhighmeter) {
159
- console.log(this, '测试')
160
- this.$refs.ltgao.closeVideo()
161
- }
162
- console.log('测试1')
163
- this.showhighmeter = !this.showhighmeter
164
- },
165
- async load (self) {
166
- let condition = ''
167
- if (this.businessid) {
168
- condition = `f_businessid= '${self.headers.businessid}' `
169
- } else {
170
- condition = `f_blobid= '${self.headers.blodid}' `
171
- }
172
- if (this.fusetype) {
173
- condition += ` and fusetype like '%${this.fusetype}%'`
174
- }
175
- var http = new HttpResetClass()
176
- let data = {
177
- condition: condition
178
- }
179
- let getFile = []
180
- try {
181
- getFile = await http.load('POST', 'api/af-revenue/sql/getFiles', {data: data}, {
182
- warnMsg: null,
183
- resolveMsg: null
184
- })
185
- } catch (e) {
186
- console.log(e)
187
- }
188
- for (var i = 0; i < getFile.data.length; i++) {
189
- // 如果使用类型包含导入字样,则是execl文件导入的,不做显示
190
- if (getFile.data[i].fusetype && (getFile.data[i].fusetype.includes('execl导入'))) {
191
- getFile.data.splice(i, 1)
192
- i--
193
- continue
194
- }
195
- let temp = getFile.data[i].f_downloadpath
196
- let URL = ''
197
- if (temp.lastIndexOf(':\\') > -1) {
198
- URL = temp.substring(temp.lastIndexOf(':\\') + 2)
199
- } else {
200
- URL = temp.substring(temp.lastIndexOf('://') + 2)
201
- }
202
-
203
- var xy = this.$appdata.getSingleValue('协议') ? this.$appdata.getSingleValue('协议') : 'http://'
204
- getFile.data[i].f_downloadURL = xy + location.host + '/' + URL
205
- }
206
- self.fileInfoData = []
207
- self.fileInfoData = getFile.data
208
- },
209
- // 数据库时间格式化
210
- formatdate (val) {
211
- // 20180914151603 : 2018-09-14 15:16:03
212
- if (val.length != 14) { return }
213
- let year = val.substr(0, 4)
214
- let month = val.substr(4, 2)
215
- let day = val.substr(6, 2)
216
- let hour = val.substr(8, 2)
217
- let min = val.substr(10, 2)
218
- let second = val.substr(12, 2)
219
- return year + '-' + month + '-' + day + ' ' + hour + ':' + min + ':' + second
220
- },
221
- // 打开文件上传对话框
222
- fileUpload () {
223
- this.showUpload = true
224
- },
225
- // 关闭文件上传对话框
226
- close () {
227
- this.showUpload = false
228
- // 将选的文件清空
229
- this.$refs.file.$el.querySelector('input').value = ''
230
- this.load(this)
231
- },
232
- convertBase64ToBlob (base64String) {
233
- // 将base64解码
234
- var bytes = atob(base64String)
235
- // var bytes = base64;
236
- var bytesCode = new ArrayBuffer(bytes.length)
237
- // 转换为类型化数组
238
- var byteArray = new Uint8Array(bytesCode)
239
-
240
- // 将base64转换为ascii码
241
- for (var i = 0; i < bytes.length; i++) {
242
- byteArray[i] = bytes.charCodeAt(i)
243
- }
244
- // 生成Blob对象(文件对象)
245
- return new Blob([bytesCode], {type: 'image/jpeg'})
246
- },
247
- newPhoto (data) {
248
- console.log(data.img)
249
- data.name = 'GaoPaiYi'
250
- let form = new FormData()
251
- let xhr = new XMLHttpRequest()
252
- let formDataBoundary = '----WebkitFormBoundary' + 'GaoPaiYi'
253
- form.append('Content-Type', 'multipart/form-data;boundary=' + formDataBoundary)
254
- form.append('file', this.convertBase64ToBlob(data.img), `${data.name}.png`)
255
-
256
- xhr.open('POST', 'api/af-revenue/file/uploadFile')
257
- if (this.headers) {
258
- this.headers.blodid = this.blodid
259
- for (var header in this.headers) {
260
- xhr.setRequestHeader(header, encodeURIComponent(this.headers[header]))
261
- }
262
- }
263
- if (Vue.$login && Vue.$login.jwt) {
264
- xhr.setRequestHeader('Authorization', 'Bearer ' + Vue.$login.jwtNew)
265
- xhr.setRequestHeader('Token', Vue.$login.jwt)
266
- }
267
- xhr.send(form)
268
- setTimeout(() => {
269
- this.load(this)
270
- }, 5000)
271
- }
272
- },
273
- ready () {
274
- if (this.$login.r.find(value => value == '上传附件删除')) {
275
- // 有删除权限
276
- this.isDelete = '1'
277
- }
278
- this.headers.blodid = this.blodid
279
- this.headers.businessid = this.businessid
280
- console.log('123222', this.businessid)
281
- if (this.blodid || this.businessid) {
282
- this.load(this)
283
- }
284
- },
285
- watch: {
286
- 'blodid' (val) {
287
- if (val) {
288
- console.log('观察blodid', val)
289
- this.headers.blodid = this.blodid
290
- this.load(this)
291
- }
292
- },
293
- 'businessid' (val) {
294
- console.log('观察businessid')
295
- if (val) {
296
- console.log('观察businessid', val)
297
- this.headers.businessid = this.businessid
298
- this.load(this)
299
- }
300
- },
301
- 'defname' () {
302
- this.headers.defname = this.defname
303
- }
304
- },
305
- computed: {
306
- foptions () {
307
- let default_type = ['档案信息', '发卡售气', '卡表收费', '物联网表收费',
308
- '机表收费', '表具停用', '换表&清零', '其他补气', '补气购气',
309
- '预存收费', '调价补差', '黑名单', '补卡', '限购', '销户', '过户', '签约信息']
310
- return !this.$appdata.getParam('附件使用类型') || !this.$appdata.getParam('附件使用类型').length
311
- ? default_type.map((item) => {
312
- return {label: item, value: item}
313
- }) : this.$appdata.getParam('附件使用类型')
314
- }
315
- },
316
- events: {
317
- onFileUpload: function (file, res) {
318
- console.log('上传完毕', res)
319
- this.$dispatch('resid', res.id)
320
- this.headers.fremarks = ''
321
- this.close()
322
- }
323
- }
324
- }
325
- </script>
326
- <style scoped>
327
-
328
- * {
329
- padding: 0px;
330
- margin: 0px;
331
- }
332
-
333
- .inpGroup {
334
- font-family: "微软雅黑";
335
- }
336
-
337
- .navWin {
338
- position: relative;
339
- }
340
-
341
- .navWin .navShow {
342
- margin-top: 5px;
343
- height: 34px;
344
- font-size: 20px;
345
- line-height: 34px;
346
- color: rgb(180, 180, 180);
347
- }
348
-
349
- .navWin .navShow span {
350
- display: inline-block;
351
- height: 34px;
352
- }
353
-
354
- .navWin .navShow .icon {
355
- height: 34px;
356
- margin-right: 10px;
357
- color: rgb(200, 200, 200);
358
- }
359
-
360
- .navWin .navList {
361
- position: absolute;
362
- width: 100%;
363
- z-index: 99;
364
- list-style: none;
365
- background-color: rgba(241, 241, 241, 0.9);
366
- line-height: 34px;
367
- color: #8d8d8d;
368
- visibility: hidden;
369
- }
370
-
371
- .navWin:hover .navList {
372
- visibility: visible;
373
- }
374
-
375
- .navWin .navList li {
376
- font-size: 18px;
377
- padding-left: 30px;
378
- }
379
-
380
- .navWin .navList li:hover {
381
- background-color: rgba(220, 220, 220, 0.9);
382
- }
383
-
384
- .inp {
385
- box-sizing: border-box;
386
- width: 79%;
387
- padding: 0px 10px;
388
- height: 34px;
389
- font-size: 14px;
390
- line-height: 36px;
391
- color: #999999;
392
- border: solid 1px #c1c1c1;
393
- border-radius: 2px;
394
- background: none;
395
- outline: none;
396
- }
397
-
398
- .inp::-webkit-input-placeholder {
399
- color: #999999;
400
- }
401
-
402
- .inp_button {
403
- float: right;
404
- margin-left: 10px;
405
- /* position: absolute;
406
- right: 35px;
407
- height: 40px;*/
408
- width: 100px;
409
- font-size: 14px;
410
- line-height: 34px;
411
- color: #ffffff;
412
- text-align: center;
413
- background-color: rgb(90, 180, 90);
414
- border-radius: 4px;
415
- cursor: pointer;
416
- }
417
-
418
- .btn-group {
419
- height: 34px;
420
- }
421
-
422
- .inp_button2 {
423
- float: right;
424
- margin-left: 10px;
425
- /* position: absolute;
426
- right: 35px;
427
- height: 40px;*/
428
- width: auto;
429
- font-size: 16px;
430
- line-height: 34px;
431
- color: #ffffff;
432
- text-align: center;
433
- border-radius: 4px;
434
- cursor: pointer;
435
- }
436
-
437
- .inp_button:hover {
438
- /*background-color: rgb(80, 150, 80);*/
439
- }
440
-
441
- .inp_button:active {
442
- font-size: 20px;
443
- /*background-color: rgb(150, 200, 150);*/
444
- }
445
-
446
- .showData {
447
- height: auto;
448
- position: relative;
449
- padding-bottom: 7px;
450
- border-bottom: solid 1px #c1c1c1;
451
- font-family: "微软雅黑";
452
- }
453
-
454
- .showData .left {
455
- height: 180px;
456
- width: 210px;
457
- background-color: rgb(240, 240, 240);
458
- overflow: hidden;
459
- line-height: 180px;
460
- }
461
-
462
- .showData .left img {
463
- width: 100%;
464
- height: auto;
465
- }
466
-
467
- .showData .right {
468
- position: absolute;
469
- top: 0px;
470
- left: 220px;
471
- right: 0px;
472
- height: 180px;
473
- }
474
-
475
- .showData .right .top {
476
- height: 30px;
477
- line-height: 30px;
478
- color: rgb(98, 98, 98);
479
- }
480
-
481
- .showData .right .top .topleft {
482
- float: left;
483
- font-size: 16px;
484
- margin-right: 20px;
485
- }
486
-
487
- .showData .right .top .topright {
488
- float: right;
489
- margin-left: 20px;
490
- }
491
-
492
- .showData .right .text {
493
- word-wrap: break-word;
494
- overflow: hidden;
495
- /*height: 100px;*/
496
- color: #999999;
497
- /*padding: 8px 0px;*/
498
- }
499
-
500
- .showData .right ul {
501
- height: 20px;
502
- padding: 0px;
503
- margin: 0px;
504
- font-size: 0px;
505
- }
506
-
507
- .showData .right ul li {
508
- display: inline-block;
509
- height: 20px;
510
- list-style: none;
511
- font-size: 16px;
512
- line-height: 20px;
513
- padding: 0px 7px;
514
- margin-right: 10px;
515
- cursor: pointer;
516
- background-color: none;
517
- font-weight: bold;
518
- color: #006fa3;
519
- }
520
-
521
- .showData .right ul li:hover {
522
- color: #006fb3;
523
- }
524
-
525
- .showData .right ul li:active {
526
- color: #006fb3;
527
- }
528
-
529
- .showData .right ul li a {
530
- width: 100%;
531
- height: 100%;
532
- text-decoration: none;
533
- color: #FFFFFF;
534
- }
535
-
536
- body {
537
- color: black;
538
- }
539
-
540
- .search {
541
- width: 75%;
542
- margin: 10px auto 30px auto;
543
- }
544
-
545
- .search .searchAll {
546
- height: 34px;
547
- font-size: 18px;
548
- color: #999999;
549
- line-height: 34px;
550
- }
551
-
552
- .search .searchAll span {
553
- display: inline-block;
554
- width: 15px;
555
- height: 15px;
556
- border: #999999 1px solid;
557
- position: relative;
558
- top: 2px;
559
- }
560
-
561
- .search .searchAll .spanAll {
562
- background-color: rgb(90, 180, 90);
563
- }
564
-
565
- .search .itemList {
566
- font-size: 16px;
567
- color: #999999;
568
- line-height: 34px;
569
- }
570
-
571
- .search .itemList .item {
572
- height: 34px;
573
- position: relative;
574
- }
575
-
576
- .search .itemList .item .descript {
577
- display: inline-block;
578
- width: 80px;
579
- }
580
-
581
- .search .itemList .item .inputBox {
582
- height: 30px;
583
- position: absolute;
584
- top: 0px;
585
- left: 80px;
586
- right: 20px;
587
- }
588
-
589
- .search .itemList .item .inputBox input {
590
- width: 100%;
591
- height: 100%;
592
- outline: none;
593
- padding: 0px 5px;
594
- }
595
-
596
- .search .itemList .item .inputBox input::-webkit-input-placeholder {
597
- color: #999999;
598
- }
599
-
600
- .searchItem {
601
- height: 30px;
602
- position: absolute;
603
- top: 0px;
604
- left: 80px;
605
- right: 20px;
606
- }
607
-
608
- .searchItem .show {
609
- padding-left: 10px;
610
- }
611
-
612
- .searchItem ul {
613
- position: relative;
614
- list-style: none;
615
- background-color: none;
616
- font-weight: bold;
617
- color: #006fa3;
618
-
619
- z-index: 99;
620
- visibility: hidden;
621
- }
622
-
623
- .searchItem ul li {
624
- padding-left: 10px;
625
- }
626
-
627
- .searchItem:hover ul {
628
- visibility: visible;
629
- }
630
-
631
- .searchItem ul li:hover {
632
- color: #006fb1;
633
- }
634
-
635
- .clears {
636
- overflow: hidden;
637
- text-overflow: ellipsis;
638
- white-space: nowrap;
639
- }
640
-
641
- #fileupload {
642
- .resBtn {
643
- display: flex;
644
- align-items: center;
645
- justify-content: center;
646
- margin-top: 2%;
647
-
648
- button {
649
- white-space: nowrap;
650
- margin-right: 10px;
651
- }
652
- }
653
- }
654
- </style>
1
+ <template>
2
+ <div style="background-color: #FFFFFF;" id="fileupload">
3
+ <div class="row" style="background-color: #FFFFFF;height: auto;border-radius: 8px">
4
+ <div style="width:75%;margin: 30px auto 10px auto;padding-bottom: 10px">
5
+ <div class="inpGroup col-sm-7">
6
+ <div class="col-sm-10 form-input-group">
7
+ <label class="font_normal_body col-sm-6" style="text-align: center">文件说明</label>
8
+ <input v-model="headers.fremarks" class="input_search" placeholder="文件说明"
9
+ style="vertical-align:middle;width: 60%"/>
10
+ </div>
11
+ <div class="col-sm-10 form-input-group" style="margin-top:10px;" title="参数管理:附件使用类型">
12
+ <label class="font_normal_body col-sm-6" style="text-align: center">使用类型</label>
13
+ <v-select type="button" placeholder="使用类型" :options="foptions"
14
+ close-on-select
15
+ direction="up"
16
+ :value.sync="fusetype" v-model="fusetype" style="vertical-align:middle;width: 60%">
17
+ </v-select>
18
+ </div>
19
+ </div>
20
+ <div class="col-sm-5 resBtn">
21
+ <button class="button_search btn-gn" @click="upload()" v-show="!takeimg">拍照</button>
22
+ <button class="button_search btn-gn" @click="fileUpload()" v-show="!isupload">审核资料上传</button>
23
+ </div>
24
+ </div>
25
+ <div class="showList col-sm-12"
26
+ style="padding: 10px;margin-top: 20px;">
27
+ <hr style="width: 90%;border: #ccc 1px solid;margin:0 auto"/>
28
+ <div :class="cols ? cols : 'col-sm-6'" style="padding:10px 10px 0px 10px;height: auto;box-sizing: border-box"
29
+ v-for="row in fileInfoData">
30
+ <div class="showData">
31
+ <div class="left">
32
+ <a href="#" class="thumbnail" style="width:100%;height:100%">
33
+ <img
34
+ v-if="(row.f_filetype.toLowerCase()==='jpg'||row.f_filetype.toLowerCase()==='png'||row.f_filetype.toLowerCase()==='gif'||row.f_filetype.toLowerCase()==='bmp')&&!rotating"
35
+ :src="row.f_downloadURL" alt="..."/>
36
+ <img-self
37
+ v-if="(row.f_filetype.toLowerCase()==='jpg'||row.f_filetype.toLowerCase()==='png'||row.f_filetype.toLowerCase()==='gif'||row.f_filetype.toLowerCase()==='bmp')&&rotating"
38
+ :width="width?width:60" :height="height?height:60" :src="row.f_downloadURL" alt="..."></img-self>
39
+ <img v-if="row.f_filetype.toLowerCase()==='pdf'" src="../../../static/mainicon/pdf.jpg" alt="" style="width:66%"/>
40
+ <img-self v-if="row.f_filetype.toLowerCase()==='pdf'&&rotating" :width="width?width:60"
41
+ :height="height?height:60" src="../../../static/mainicon/pdf.jpg" alt="..."></img-self>
42
+ <img v-if="row.f_filetype.toLowerCase().match('/wav|mp3|amr/')" src="../../../static/mainicon/sound.png" alt=""
43
+ style="width:66%"/>
44
+ <img v-if="row.f_filetype.toLowerCase()==='xls'||row.f_filetype.toLowerCase()==='xlsx'"
45
+ src="../../../static/mainicon/excel.jpg" alt="" style="width:66%"/>
46
+ <img-self v-if="row.f_filetype.toLowerCase()==='xls'||row.f_filetype.toLowerCase()==='xlsx'&&rotating"
47
+ :width="width?width:60" :height="height?height:60" src="../../../static/mainicon/excel.jpg"
48
+ alt="..."></img-self>
49
+ <img v-if="row.f_filetype.toLowerCase()==='doc'||row.f_filetype.toLowerCase()==='docx'"
50
+ src="../../../static/mainicon/doc.jpg" alt="" style="width:66%"/>
51
+ <img-self v-if="row.f_filetype.toLowerCase()==='doc'||row.f_filetype.toLowerCase()==='docx'&&rotating"
52
+ :width="width?width:60" :height="height?height:60" src="../../../static/mainicon/doc.jpg" alt="..."></img-self>
53
+ </a>
54
+ </div>
55
+ <div class="right">
56
+ <p :title="row.f_uploaddate" class="top clears">
57
+ <strong>上传时间</strong>:&nbsp;<span>{{ row.f_uploaddate }}</span></p>
58
+ <p :title="row.f_username" class="top clears">
59
+ <strong>操作员</strong>:&nbsp;<span>{{ row.f_username }}</span></p>
60
+ <p :title="row.f_filename" class="top clears"><strong>文件名</strong>:&nbsp;{{ row.f_filename }}</p>
61
+ <p :title="row.fremarks" class="top clears"><strong>文件说明</strong>:&nbsp;{{ row.fremarks }}</p>
62
+ <p>
63
+ <a
64
+ v-if="row.f_filetype.toLowerCase()==='jpg'||row.f_filetype.toLowerCase()==='png'||row.f_filetype.toLowerCase()==='gif'||row.f_filetype.toLowerCase()==='bmp'"
65
+ :href="row.f_downloadURL" style="background:#6aa6e2" class="btn btn-primary" target="_blank"
66
+ role="button">预览</a>
67
+ <button class="button_search btn-gn"
68
+ v-if="row.f_filetype.toLowerCase().match('/wav|mp3|amr/')||row.f_filetype.toLowerCase()==='pdf'||row.f_filetype.toLowerCase()==='xls'||row.f_filetype.toLowerCase()==='xlsx'||row.f_filetype.toLowerCase()==='doc'||row.f_filetype.toLowerCase()==='docx'"
69
+ @click="downloadfile(row.f_downloadURL)">下载
70
+ </button>
71
+ <a v-if="isDelete == '1'" @click="delet($index,row)" href="#" class="btn btn-default"
72
+ role="button">删除</a>
73
+ </p>
74
+ </div>
75
+ </div>
76
+ </div>
77
+ </div>
78
+ </div>
79
+ <modal :show.sync="showUpload" styles="border-radius:20px;margin-top:300px" v-ref:modal backdrop="false"
80
+ :width="700">
81
+ <header slot="modal-header" class="modal-header">
82
+ <button type="button" class="close" @click="close"><span class="glyphicon glyphicon-remove"></span></button>
83
+ <h4 class="modal-title" style="text-align: center">文件上传</h4>
84
+ </header>
85
+ <article slot="modal-body" class="modal-body" style="height: 70px">
86
+ <div class="form-group">
87
+ <file-upload style="margin-left:100px;padding-top:20px" class="my-file-uploader" :name="'myFile' + blodid"
88
+ action="api/af-revenue/file/uploadFile" tagname="文件上传" :headers="headers" multiple
89
+ v-ref:file></file-upload>
90
+ </div>
91
+ </article>
92
+ <footer slot="modal-footer" class="modal-footer">
93
+ </footer>
94
+ </modal>
95
+ </div>
96
+
97
+ <high-meter :show.sync="showhighmeter" @photo-finish="newPhoto" v-if="showhighmeter"
98
+ v-on:confirminfo="confirmIdCard"></high-meter>
99
+ </template>
100
+ <script>
101
+ import { HttpResetClass } from 'vue-client'
102
+ import Vue from 'vue'
103
+ export default {
104
+ title: '附件',
105
+ props: ['blodid', 'businessid', 'isremark', 'isusetype', 'takeimg', 'defname', 'isupload', 'fusetype', 'cols', 'width', 'height'],
106
+ data () {
107
+ return {
108
+ isDelete: '0', // 删除按钮,可以进行控制(权限等)
109
+ fileInfoData: [], // 数据库存储的文件记录对象数组
110
+ headers: {
111
+ 'username': this.$login.f.name,
112
+ 'blodid': '',
113
+ 'businessid': '',
114
+ 'fremarks': '',
115
+ 'defname': '',
116
+ 'fusetype': this.fusetype ? this.fusetype : ''
117
+ }, // 调用api/af-revenue/file/uploadFile 的参数
118
+ showUpload: false, // 上传模态框控制
119
+ showhighmeter: false, // 高拍仪组件控制
120
+ fileRemark: '', // 文件说明
121
+ rotating: this.$appdata.getSingleValue('图片附加功能') // 文件是否旋转
122
+ }
123
+ },
124
+ methods: {
125
+ confirmIdCard (IdCardInfo) {
126
+ this.showhighmeter = !this.showhighmeter
127
+ },
128
+ // 查询按钮事件
129
+ delet (index, row) {
130
+ this.$resetdelete('api/af-revenue/entity/t_files', {id: row.id}, {
131
+ resolveMsg: '删除成功',
132
+ rejectMsg: '删除失败'
133
+ }).then((res) => {
134
+ this.$dispatch('delResid', row.id)
135
+ this.fileInfoData.splice(index, 1)
136
+ })
137
+ },
138
+ downloadfile (filepath) {
139
+ var link = document.createElement('a')
140
+ // let pathName = "http://" + location.host + filepath;
141
+ link.href = filepath
142
+ link.target = '_blank'
143
+ link.dispatchEvent(new MouseEvent('click'))
144
+ },
145
+ GetRequest () {
146
+ var url = location.search
147
+ var theRequest = new Object()
148
+ if (url.indexOf('?') != -1) {
149
+ var str = url.substr(1)
150
+ let strs = str.split('&')
151
+ for (var i = 0; i < strs.length; i++) {
152
+ theRequest[strs[i].split('=')[0]] = decodeURIComponent(strs[i].split('=')[1])
153
+ }
154
+ }
155
+ return theRequest
156
+ },
157
+ upload () {
158
+ if (this.showhighmeter) {
159
+ console.log(this, '测试')
160
+ this.$refs.ltgao.closeVideo()
161
+ }
162
+ console.log('测试1')
163
+ this.showhighmeter = !this.showhighmeter
164
+ },
165
+ async load (self) {
166
+ let condition = ''
167
+ if (this.businessid) {
168
+ condition = `f_businessid= '${self.headers.businessid}' `
169
+ } else {
170
+ condition = `f_blobid= '${self.headers.blodid}' `
171
+ }
172
+ if (this.fusetype) {
173
+ condition += ` and fusetype like '%${this.fusetype}%'`
174
+ }
175
+ var http = new HttpResetClass()
176
+ let data = {
177
+ condition: condition
178
+ }
179
+ let getFile = []
180
+ try {
181
+ getFile = await http.load('POST', 'api/af-revenue/sql/getFiles', {data: data}, {
182
+ warnMsg: null,
183
+ resolveMsg: null
184
+ })
185
+ } catch (e) {
186
+ console.log(e)
187
+ }
188
+ for (var i = 0; i < getFile.data.length; i++) {
189
+ // 如果使用类型包含导入字样,则是execl文件导入的,不做显示
190
+ if (getFile.data[i].fusetype && (getFile.data[i].fusetype.includes('execl导入'))) {
191
+ getFile.data.splice(i, 1)
192
+ i--
193
+ continue
194
+ }
195
+ let temp = getFile.data[i].f_downloadpath
196
+ let URL = ''
197
+ if (temp.lastIndexOf(':\\') > -1) {
198
+ URL = temp.substring(temp.lastIndexOf(':\\') + 2)
199
+ } else {
200
+ URL = temp.substring(temp.lastIndexOf('://') + 2)
201
+ }
202
+
203
+ var xy = this.$appdata.getSingleValue('协议') ? this.$appdata.getSingleValue('协议') : 'http://'
204
+ getFile.data[i].f_downloadURL = xy + location.host + '/' + URL
205
+ }
206
+ self.fileInfoData = []
207
+ self.fileInfoData = getFile.data
208
+ },
209
+ // 数据库时间格式化
210
+ formatdate (val) {
211
+ // 20180914151603 : 2018-09-14 15:16:03
212
+ if (val.length != 14) { return }
213
+ let year = val.substr(0, 4)
214
+ let month = val.substr(4, 2)
215
+ let day = val.substr(6, 2)
216
+ let hour = val.substr(8, 2)
217
+ let min = val.substr(10, 2)
218
+ let second = val.substr(12, 2)
219
+ return year + '-' + month + '-' + day + ' ' + hour + ':' + min + ':' + second
220
+ },
221
+ // 打开文件上传对话框
222
+ fileUpload () {
223
+ this.showUpload = true
224
+ },
225
+ // 关闭文件上传对话框
226
+ close () {
227
+ this.showUpload = false
228
+ // 将选的文件清空
229
+ this.$refs.file.$el.querySelector('input').value = ''
230
+ this.load(this)
231
+ },
232
+ convertBase64ToBlob (base64String) {
233
+ // 将base64解码
234
+ var bytes = atob(base64String)
235
+ // var bytes = base64;
236
+ var bytesCode = new ArrayBuffer(bytes.length)
237
+ // 转换为类型化数组
238
+ var byteArray = new Uint8Array(bytesCode)
239
+
240
+ // 将base64转换为ascii码
241
+ for (var i = 0; i < bytes.length; i++) {
242
+ byteArray[i] = bytes.charCodeAt(i)
243
+ }
244
+ // 生成Blob对象(文件对象)
245
+ return new Blob([bytesCode], {type: 'image/jpeg'})
246
+ },
247
+ newPhoto (data) {
248
+ console.log(data.img)
249
+ data.name = 'GaoPaiYi'
250
+ let form = new FormData()
251
+ let xhr = new XMLHttpRequest()
252
+ let formDataBoundary = '----WebkitFormBoundary' + 'GaoPaiYi'
253
+ form.append('Content-Type', 'multipart/form-data;boundary=' + formDataBoundary)
254
+ form.append('file', this.convertBase64ToBlob(data.img), `${data.name}.png`)
255
+
256
+ xhr.open('POST', 'api/af-revenue/file/uploadFile')
257
+ if (this.headers) {
258
+ this.headers.blodid = this.blodid
259
+ for (var header in this.headers) {
260
+ xhr.setRequestHeader(header, encodeURIComponent(this.headers[header]))
261
+ }
262
+ }
263
+ if (Vue.$login && Vue.$login.jwt) {
264
+ xhr.setRequestHeader('Authorization', 'Bearer ' + Vue.$login.jwtNew)
265
+ xhr.setRequestHeader('Token', Vue.$login.jwt)
266
+ }
267
+ xhr.send(form)
268
+ setTimeout(() => {
269
+ this.load(this)
270
+ }, 5000)
271
+ }
272
+ },
273
+ ready () {
274
+ if (this.$login.r.find(value => value == '上传附件删除')) {
275
+ // 有删除权限
276
+ this.isDelete = '1'
277
+ }
278
+ this.headers.blodid = this.blodid
279
+ this.headers.businessid = this.businessid
280
+ console.log('123222', this.businessid)
281
+ if (this.blodid || this.businessid) {
282
+ this.load(this)
283
+ }
284
+ },
285
+ watch: {
286
+ 'blodid' (val) {
287
+ if (val) {
288
+ console.log('观察blodid', val)
289
+ this.headers.blodid = this.blodid
290
+ this.load(this)
291
+ }
292
+ },
293
+ 'businessid' (val) {
294
+ console.log('观察businessid')
295
+ if (val) {
296
+ console.log('观察businessid', val)
297
+ this.headers.businessid = this.businessid
298
+ this.load(this)
299
+ }
300
+ },
301
+ 'defname' () {
302
+ this.headers.defname = this.defname
303
+ }
304
+ },
305
+ computed: {
306
+ foptions () {
307
+ let default_type = ['档案信息', '发卡售气', '卡表收费', '物联网表收费',
308
+ '机表收费', '表具停用', '换表&清零', '其他补气', '补气购气',
309
+ '预存收费', '调价补差', '黑名单', '补卡', '限购', '销户', '过户', '签约信息']
310
+ return !this.$appdata.getParam('附件使用类型') || !this.$appdata.getParam('附件使用类型').length
311
+ ? default_type.map((item) => {
312
+ return {label: item, value: item}
313
+ }) : this.$appdata.getParam('附件使用类型')
314
+ }
315
+ },
316
+ events: {
317
+ onFileUpload: function (file, res) {
318
+ console.log('上传完毕', res)
319
+ this.$dispatch('resid', res.id)
320
+ this.headers.fremarks = ''
321
+ this.close()
322
+ }
323
+ }
324
+ }
325
+ </script>
326
+ <style scoped>
327
+
328
+ * {
329
+ padding: 0px;
330
+ margin: 0px;
331
+ }
332
+
333
+ .inpGroup {
334
+ font-family: "微软雅黑";
335
+ }
336
+
337
+ .navWin {
338
+ position: relative;
339
+ }
340
+
341
+ .navWin .navShow {
342
+ margin-top: 5px;
343
+ height: 34px;
344
+ font-size: 20px;
345
+ line-height: 34px;
346
+ color: rgb(180, 180, 180);
347
+ }
348
+
349
+ .navWin .navShow span {
350
+ display: inline-block;
351
+ height: 34px;
352
+ }
353
+
354
+ .navWin .navShow .icon {
355
+ height: 34px;
356
+ margin-right: 10px;
357
+ color: rgb(200, 200, 200);
358
+ }
359
+
360
+ .navWin .navList {
361
+ position: absolute;
362
+ width: 100%;
363
+ z-index: 99;
364
+ list-style: none;
365
+ background-color: rgba(241, 241, 241, 0.9);
366
+ line-height: 34px;
367
+ color: #8d8d8d;
368
+ visibility: hidden;
369
+ }
370
+
371
+ .navWin:hover .navList {
372
+ visibility: visible;
373
+ }
374
+
375
+ .navWin .navList li {
376
+ font-size: 18px;
377
+ padding-left: 30px;
378
+ }
379
+
380
+ .navWin .navList li:hover {
381
+ background-color: rgba(220, 220, 220, 0.9);
382
+ }
383
+
384
+ .inp {
385
+ box-sizing: border-box;
386
+ width: 79%;
387
+ padding: 0px 10px;
388
+ height: 34px;
389
+ font-size: 14px;
390
+ line-height: 36px;
391
+ color: #999999;
392
+ border: solid 1px #c1c1c1;
393
+ border-radius: 2px;
394
+ background: none;
395
+ outline: none;
396
+ }
397
+
398
+ .inp::-webkit-input-placeholder {
399
+ color: #999999;
400
+ }
401
+
402
+ .inp_button {
403
+ float: right;
404
+ margin-left: 10px;
405
+ /* position: absolute;
406
+ right: 35px;
407
+ height: 40px;*/
408
+ width: 100px;
409
+ font-size: 14px;
410
+ line-height: 34px;
411
+ color: #ffffff;
412
+ text-align: center;
413
+ background-color: rgb(90, 180, 90);
414
+ border-radius: 4px;
415
+ cursor: pointer;
416
+ }
417
+
418
+ .btn-group {
419
+ height: 34px;
420
+ }
421
+
422
+ .inp_button2 {
423
+ float: right;
424
+ margin-left: 10px;
425
+ /* position: absolute;
426
+ right: 35px;
427
+ height: 40px;*/
428
+ width: auto;
429
+ font-size: 16px;
430
+ line-height: 34px;
431
+ color: #ffffff;
432
+ text-align: center;
433
+ border-radius: 4px;
434
+ cursor: pointer;
435
+ }
436
+
437
+ .inp_button:hover {
438
+ /*background-color: rgb(80, 150, 80);*/
439
+ }
440
+
441
+ .inp_button:active {
442
+ font-size: 20px;
443
+ /*background-color: rgb(150, 200, 150);*/
444
+ }
445
+
446
+ .showData {
447
+ height: auto;
448
+ position: relative;
449
+ padding-bottom: 7px;
450
+ border-bottom: solid 1px #c1c1c1;
451
+ font-family: "微软雅黑";
452
+ }
453
+
454
+ .showData .left {
455
+ height: 180px;
456
+ width: 210px;
457
+ background-color: rgb(240, 240, 240);
458
+ overflow: hidden;
459
+ line-height: 180px;
460
+ }
461
+
462
+ .showData .left img {
463
+ width: 100%;
464
+ height: auto;
465
+ }
466
+
467
+ .showData .right {
468
+ position: absolute;
469
+ top: 0px;
470
+ left: 220px;
471
+ right: 0px;
472
+ height: 180px;
473
+ }
474
+
475
+ .showData .right .top {
476
+ height: 30px;
477
+ line-height: 30px;
478
+ color: rgb(98, 98, 98);
479
+ }
480
+
481
+ .showData .right .top .topleft {
482
+ float: left;
483
+ font-size: 16px;
484
+ margin-right: 20px;
485
+ }
486
+
487
+ .showData .right .top .topright {
488
+ float: right;
489
+ margin-left: 20px;
490
+ }
491
+
492
+ .showData .right .text {
493
+ word-wrap: break-word;
494
+ overflow: hidden;
495
+ /*height: 100px;*/
496
+ color: #999999;
497
+ /*padding: 8px 0px;*/
498
+ }
499
+
500
+ .showData .right ul {
501
+ height: 20px;
502
+ padding: 0px;
503
+ margin: 0px;
504
+ font-size: 0px;
505
+ }
506
+
507
+ .showData .right ul li {
508
+ display: inline-block;
509
+ height: 20px;
510
+ list-style: none;
511
+ font-size: 16px;
512
+ line-height: 20px;
513
+ padding: 0px 7px;
514
+ margin-right: 10px;
515
+ cursor: pointer;
516
+ background-color: none;
517
+ font-weight: bold;
518
+ color: #006fa3;
519
+ }
520
+
521
+ .showData .right ul li:hover {
522
+ color: #006fb3;
523
+ }
524
+
525
+ .showData .right ul li:active {
526
+ color: #006fb3;
527
+ }
528
+
529
+ .showData .right ul li a {
530
+ width: 100%;
531
+ height: 100%;
532
+ text-decoration: none;
533
+ color: #FFFFFF;
534
+ }
535
+
536
+ body {
537
+ color: black;
538
+ }
539
+
540
+ .search {
541
+ width: 75%;
542
+ margin: 10px auto 30px auto;
543
+ }
544
+
545
+ .search .searchAll {
546
+ height: 34px;
547
+ font-size: 18px;
548
+ color: #999999;
549
+ line-height: 34px;
550
+ }
551
+
552
+ .search .searchAll span {
553
+ display: inline-block;
554
+ width: 15px;
555
+ height: 15px;
556
+ border: #999999 1px solid;
557
+ position: relative;
558
+ top: 2px;
559
+ }
560
+
561
+ .search .searchAll .spanAll {
562
+ background-color: rgb(90, 180, 90);
563
+ }
564
+
565
+ .search .itemList {
566
+ font-size: 16px;
567
+ color: #999999;
568
+ line-height: 34px;
569
+ }
570
+
571
+ .search .itemList .item {
572
+ height: 34px;
573
+ position: relative;
574
+ }
575
+
576
+ .search .itemList .item .descript {
577
+ display: inline-block;
578
+ width: 80px;
579
+ }
580
+
581
+ .search .itemList .item .inputBox {
582
+ height: 30px;
583
+ position: absolute;
584
+ top: 0px;
585
+ left: 80px;
586
+ right: 20px;
587
+ }
588
+
589
+ .search .itemList .item .inputBox input {
590
+ width: 100%;
591
+ height: 100%;
592
+ outline: none;
593
+ padding: 0px 5px;
594
+ }
595
+
596
+ .search .itemList .item .inputBox input::-webkit-input-placeholder {
597
+ color: #999999;
598
+ }
599
+
600
+ .searchItem {
601
+ height: 30px;
602
+ position: absolute;
603
+ top: 0px;
604
+ left: 80px;
605
+ right: 20px;
606
+ }
607
+
608
+ .searchItem .show {
609
+ padding-left: 10px;
610
+ }
611
+
612
+ .searchItem ul {
613
+ position: relative;
614
+ list-style: none;
615
+ background-color: none;
616
+ font-weight: bold;
617
+ color: #006fa3;
618
+
619
+ z-index: 99;
620
+ visibility: hidden;
621
+ }
622
+
623
+ .searchItem ul li {
624
+ padding-left: 10px;
625
+ }
626
+
627
+ .searchItem:hover ul {
628
+ visibility: visible;
629
+ }
630
+
631
+ .searchItem ul li:hover {
632
+ color: #006fb1;
633
+ }
634
+
635
+ .clears {
636
+ overflow: hidden;
637
+ text-overflow: ellipsis;
638
+ white-space: nowrap;
639
+ }
640
+
641
+ #fileupload {
642
+ .resBtn {
643
+ display: flex;
644
+ align-items: center;
645
+ justify-content: center;
646
+ margin-top: 2%;
647
+
648
+ button {
649
+ white-space: nowrap;
650
+ margin-right: 10px;
651
+ }
652
+ }
653
+ }
654
+ </style>