dingxin 6 yıl önce
ebeveyn
işleme
ffb55508bb

+ 131
- 153
CODE/smart-community-word/.idea/workspace.xml Dosyayı Görüntüle

@@ -3,6 +3,9 @@
3 3
   <component name="ChangeListManager">
4 4
     <list default="true" id="051ae1e0-ece1-4622-91c0-3f05ac339943" name="Default Changelist" comment="">
5 5
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
6
+      <change beforePath="$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/ImageController.java" beforeDir="false" afterPath="$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/ImageController.java" afterDir="false" />
7
+      <change beforePath="$PROJECT_DIR$/../../VUECODE/smart-property-manage/src/api/ticket.js" beforeDir="false" afterPath="$PROJECT_DIR$/../../VUECODE/smart-property-manage/src/api/ticket.js" afterDir="false" />
8
+      <change beforePath="$PROJECT_DIR$/../../VUECODE/smart-property-manage/src/store/modules/ticket.js" beforeDir="false" afterPath="$PROJECT_DIR$/../../VUECODE/smart-property-manage/src/store/modules/ticket.js" afterDir="false" />
6 9
       <change beforePath="$PROJECT_DIR$/../../VUECODE/smart-property-manage/src/views/ticket/details.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../../VUECODE/smart-property-manage/src/views/ticket/details.vue" afterDir="false" />
7 10
     </list>
8 11
     <ignored path="$PROJECT_DIR$/../smart-community/eureka-sever/target/" />
@@ -23,65 +26,41 @@
23 26
   </component>
24 27
   <component name="FileEditorManager">
25 28
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
26
-      <file pinned="false" current-in-tab="false">
27
-        <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/impl/TpTicketServiceImpl.java">
28
-          <provider selected="true" editor-type-id="text-editor">
29
-            <state relative-caret-position="7776">
30
-              <caret line="307" selection-start-line="307" selection-end-line="307" />
31
-            </state>
32
-          </provider>
33
-        </entry>
34
-      </file>
35
-      <file pinned="false" current-in-tab="false">
36
-        <entry file="file://$PROJECT_DIR$/../smart-community/app-api/src/main/java/com/community/huiju/controller/TicketController.java">
37
-          <provider selected="true" editor-type-id="text-editor">
38
-            <state relative-caret-position="3267">
39
-              <caret line="143" column="43" selection-start-line="143" selection-start-column="38" selection-end-line="143" selection-end-column="56" />
40
-            </state>
41
-          </provider>
42
-        </entry>
43
-      </file>
44 29
       <file pinned="false" current-in-tab="true">
45
-        <entry file="file://$PROJECT_DIR$/../smart-community/app-api/src/main/java/com/community/huiju/service/impl/TicketServiceImpl.java">
46
-          <provider selected="true" editor-type-id="text-editor">
47
-            <state relative-caret-position="3">
48
-              <caret line="296" lean-forward="true" selection-start-line="296" selection-end-line="296" />
49
-            </state>
50
-          </provider>
51
-        </entry>
52
-      </file>
53
-      <file pinned="false" current-in-tab="false">
54
-        <entry file="jar://F:/maven3.5/maven/serverRepository/org/springframework/spring-core/5.0.8.RELEASE/spring-core-5.0.8.RELEASE.jar!/org/springframework/cglib/proxy/MethodProxy.class">
30
+        <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/ImageController.java">
55 31
           <provider selected="true" editor-type-id="text-editor">
56
-            <state relative-caret-position="2403">
57
-              <caret line="104" selection-start-line="104" selection-end-line="104" />
32
+            <state relative-caret-position="275">
33
+              <caret line="62" column="48" lean-forward="true" selection-start-line="62" selection-start-column="48" selection-end-line="62" selection-end-column="48" />
34
+              <folding>
35
+                <element signature="e#2452#2460#0" expanded="true" />
36
+              </folding>
58 37
             </state>
59 38
           </provider>
60 39
         </entry>
61 40
       </file>
62 41
       <file pinned="false" current-in-tab="false">
63
-        <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/model/TpTicketRecordComment.java">
42
+        <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/ImageServiceI.java">
64 43
           <provider selected="true" editor-type-id="text-editor">
65
-            <state relative-caret-position="432">
66
-              <caret line="26" column="13" selection-start-line="26" selection-start-column="13" selection-end-line="26" selection-end-column="13" />
44
+            <state relative-caret-position="312">
45
+              <caret line="22" column="11" selection-start-line="22" selection-start-column="11" selection-end-line="22" selection-end-column="11" />
67 46
             </state>
68 47
           </provider>
69 48
         </entry>
70 49
       </file>
71 50
       <file pinned="false" current-in-tab="false">
72
-        <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/TpTicketController.java">
51
+        <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/BillController.java">
73 52
           <provider selected="true" editor-type-id="text-editor">
74
-            <state relative-caret-position="2511">
75
-              <caret line="109" column="60" selection-start-line="109" selection-start-column="53" selection-end-line="109" selection-end-column="65" />
53
+            <state relative-caret-position="246">
54
+              <caret line="90" column="6" lean-forward="true" selection-start-line="90" selection-start-column="6" selection-end-line="90" selection-end-column="6" />
76 55
             </state>
77 56
           </provider>
78 57
         </entry>
79 58
       </file>
80 59
       <file pinned="false" current-in-tab="false">
81
-        <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/TpTicketService.java">
60
+        <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/impl/ImageServiceimpl.java">
82 61
           <provider selected="true" editor-type-id="text-editor">
83
-            <state relative-caret-position="1782">
84
-              <caret line="68" selection-start-line="68" selection-end-line="68" />
62
+            <state relative-caret-position="545">
63
+              <caret line="64" selection-start-line="64" selection-end-line="64" />
85 64
             </state>
86 65
           </provider>
87 66
         </entry>
@@ -94,6 +73,7 @@
94 73
       <find>ticketId</find>
95 74
       <find>queryWrapper</find>
96 75
       <find>content</find>
76
+      <find>图片上传</find>
97 77
     </findStrings>
98 78
   </component>
99 79
   <component name="Git.Settings">
@@ -106,6 +86,7 @@
106 86
         <option value="$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/TpTicketController.java" />
107 87
         <option value="$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/TpTicketService.java" />
108 88
         <option value="$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/impl/TpTicketServiceImpl.java" />
89
+        <option value="$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/ImageController.java" />
109 90
       </list>
110 91
     </option>
111 92
   </component>
@@ -127,10 +108,10 @@
127 108
     <option name="jreName" value="1.8" />
128 109
     <option name="vmOptions" value="-DarchetypeCatalog=internal" />
129 110
   </component>
130
-  <component name="ProjectFrameBounds" extendedState="7">
131
-    <option name="x" value="197" />
132
-    <option name="y" value="131" />
133
-    <option name="width" value="1687" />
111
+  <component name="ProjectFrameBounds" extendedState="6">
112
+    <option name="x" value="793" />
113
+    <option name="y" value="2" />
114
+    <option name="width" value="1628" />
134 115
     <option name="height" value="1061" />
135 116
   </component>
136 117
   <component name="ProjectLevelVcsManager" settingsEditedManually="true" />
@@ -140,7 +121,6 @@
140 121
     </navigator>
141 122
     <panes>
142 123
       <pane id="PackagesPane" />
143
-      <pane id="Scope" />
144 124
       <pane id="ProjectPane">
145 125
         <subPane>
146 126
           <expand>
@@ -148,90 +128,6 @@
148 128
               <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
149 129
               <item name="smart-community" type="462c0819:PsiDirectoryNode" />
150 130
             </path>
151
-            <path>
152
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
153
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
154
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
155
-            </path>
156
-            <path>
157
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
158
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
159
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
160
-              <item name="src" type="462c0819:PsiDirectoryNode" />
161
-            </path>
162
-            <path>
163
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
164
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
165
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
166
-              <item name="src" type="462c0819:PsiDirectoryNode" />
167
-              <item name="main" type="462c0819:PsiDirectoryNode" />
168
-            </path>
169
-            <path>
170
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
171
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
172
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
173
-              <item name="src" type="462c0819:PsiDirectoryNode" />
174
-              <item name="main" type="462c0819:PsiDirectoryNode" />
175
-              <item name="assembly" type="462c0819:PsiDirectoryNode" />
176
-            </path>
177
-            <path>
178
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
179
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
180
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
181
-              <item name="src" type="462c0819:PsiDirectoryNode" />
182
-              <item name="main" type="462c0819:PsiDirectoryNode" />
183
-              <item name="java" type="462c0819:PsiDirectoryNode" />
184
-            </path>
185
-            <path>
186
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
187
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
188
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
189
-              <item name="src" type="462c0819:PsiDirectoryNode" />
190
-              <item name="main" type="462c0819:PsiDirectoryNode" />
191
-              <item name="java" type="462c0819:PsiDirectoryNode" />
192
-              <item name="com" type="462c0819:PsiDirectoryNode" />
193
-            </path>
194
-            <path>
195
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
196
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
197
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
198
-              <item name="src" type="462c0819:PsiDirectoryNode" />
199
-              <item name="main" type="462c0819:PsiDirectoryNode" />
200
-              <item name="java" type="462c0819:PsiDirectoryNode" />
201
-              <item name="com" type="462c0819:PsiDirectoryNode" />
202
-              <item name="community" type="462c0819:PsiDirectoryNode" />
203
-            </path>
204
-            <path>
205
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
206
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
207
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
208
-              <item name="src" type="462c0819:PsiDirectoryNode" />
209
-              <item name="main" type="462c0819:PsiDirectoryNode" />
210
-              <item name="java" type="462c0819:PsiDirectoryNode" />
211
-              <item name="com" type="462c0819:PsiDirectoryNode" />
212
-              <item name="community" type="462c0819:PsiDirectoryNode" />
213
-              <item name="huiju" type="462c0819:PsiDirectoryNode" />
214
-            </path>
215
-            <path>
216
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
217
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
218
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
219
-              <item name="src" type="462c0819:PsiDirectoryNode" />
220
-              <item name="main" type="462c0819:PsiDirectoryNode" />
221
-              <item name="java" type="462c0819:PsiDirectoryNode" />
222
-              <item name="com" type="462c0819:PsiDirectoryNode" />
223
-              <item name="community" type="462c0819:PsiDirectoryNode" />
224
-              <item name="huiju" type="462c0819:PsiDirectoryNode" />
225
-              <item name="controller" type="462c0819:PsiDirectoryNode" />
226
-            </path>
227
-            <path>
228
-              <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
229
-              <item name="smart-community" type="462c0819:PsiDirectoryNode" />
230
-              <item name="app-api" type="462c0819:PsiDirectoryNode" />
231
-              <item name="src" type="462c0819:PsiDirectoryNode" />
232
-              <item name="main" type="462c0819:PsiDirectoryNode" />
233
-              <item name="resources" type="462c0819:PsiDirectoryNode" />
234
-            </path>
235 131
             <path>
236 132
               <item name="smart-community-word" type="b2602c69:ProjectViewProjectNode" />
237 133
               <item name="smart-community" type="462c0819:PsiDirectoryNode" />
@@ -334,6 +230,7 @@
334 230
           <select />
335 231
         </subPane>
336 232
       </pane>
233
+      <pane id="Scope" />
337 234
     </panes>
338 235
   </component>
339 236
   <component name="PropertiesComponent">
@@ -343,7 +240,7 @@
343 240
     <property name="RequestMappingsPanelWidth1" value="75" />
344 241
     <property name="WebServerToolWindowFactoryState" value="false" />
345 242
     <property name="aspect.path.notification.shown" value="true" />
346
-    <property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1550663036257" />
243
+    <property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1550743197830" />
347 244
     <property name="last_opened_file_path" value="D:/java/workspace/heishi/wx_project" />
348 245
     <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
349 246
     <property name="nodejs_npm_path_reset_for_default_project" value="true" />
@@ -474,18 +371,19 @@
474 371
       <workItem from="1550547903821" duration="17904000" />
475 372
       <workItem from="1550580590425" duration="175000" />
476 373
       <workItem from="1550625046867" duration="10953000" />
477
-      <workItem from="1550663154868" duration="247000" />
374
+      <workItem from="1550663154868" duration="404000" />
375
+      <workItem from="1550711362440" duration="13311000" />
478 376
     </task>
479 377
     <servers />
480 378
   </component>
481 379
   <component name="TimeTrackingManager">
482
-    <option name="totallyTimeSpent" value="30321000" />
380
+    <option name="totallyTimeSpent" value="43789000" />
483 381
   </component>
484 382
   <component name="ToolWindowManager">
485 383
     <frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
486 384
     <editor active="true" />
487 385
     <layout>
488
-      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.24200426" />
386
+      <window_info content_ui="combo" id="Project" order="0" weight="0.15242778" />
489 387
       <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
490 388
       <window_info id="Designer" order="2" />
491 389
       <window_info id="Image Layers" order="3" />
@@ -495,16 +393,16 @@
495 393
       <window_info id="Web" order="7" side_tool="true" />
496 394
       <window_info anchor="bottom" id="Message" order="0" />
497 395
       <window_info anchor="bottom" id="Find" order="1" />
498
-      <window_info active="true" anchor="bottom" id="Run" order="2" sideWeight="0.70042646" visible="true" weight="0.96659243" />
499
-      <window_info anchor="bottom" id="Debug" order="3" sideWeight="0.91518134" weight="0.12624584" />
396
+      <window_info anchor="bottom" id="Run" order="2" sideWeight="0.6998934" weight="0.36302894" />
397
+      <window_info active="true" anchor="bottom" id="Debug" order="3" sideWeight="0.91518134" visible="true" weight="0.3530067" />
500 398
       <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
501 399
       <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
502 400
       <window_info anchor="bottom" id="TODO" order="6" />
503 401
       <window_info anchor="bottom" id="Spring" order="7" />
504 402
       <window_info anchor="bottom" id="Terminal" order="8" />
505 403
       <window_info anchor="bottom" id="Docker" order="9" show_stripe_button="false" />
506
-      <window_info anchor="bottom" id="Event Log" order="10" sideWeight="0.29957357" side_tool="true" visible="true" weight="0.96659243" />
507
-      <window_info anchor="bottom" id="Messages" order="11" sideWeight="0.49969268" weight="0.7696567" />
404
+      <window_info anchor="bottom" id="Event Log" order="10" sideWeight="0.3001066" side_tool="true" weight="0.5222717" />
405
+      <window_info anchor="bottom" id="Messages" order="11" sideWeight="0.49969268" weight="0.19376393" />
508 406
       <window_info anchor="bottom" id="Java Enterprise" order="12" />
509 407
       <window_info anchor="bottom" id="Database Changes" order="13" />
510 408
       <window_info anchor="bottom" id="Version Control" order="14" />
@@ -519,6 +417,41 @@
519 417
       <window_info anchor="right" id="Theme Preview" order="8" />
520 418
       <window_info anchor="right" id="Bean Validation" order="9" weight="0.32983872" />
521 419
     </layout>
420
+    <layout-to-restore>
421
+      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.15242778" />
422
+      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
423
+      <window_info id="Designer" order="2" />
424
+      <window_info id="Image Layers" order="3" />
425
+      <window_info id="Capture Tool" order="4" />
426
+      <window_info id="UI Designer" order="5" />
427
+      <window_info id="Favorites" order="6" side_tool="true" />
428
+      <window_info id="Web" order="7" side_tool="true" />
429
+      <window_info anchor="bottom" id="Message" order="0" />
430
+      <window_info anchor="bottom" id="Find" order="1" />
431
+      <window_info anchor="bottom" id="Run" order="2" sideWeight="0.6998934" weight="0.36302894" />
432
+      <window_info active="true" anchor="bottom" id="Debug" order="3" sideWeight="0.91518134" visible="true" weight="0.3776301" />
433
+      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
434
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
435
+      <window_info anchor="bottom" id="TODO" order="6" />
436
+      <window_info anchor="bottom" id="Spring" order="7" />
437
+      <window_info anchor="bottom" id="Terminal" order="8" />
438
+      <window_info anchor="bottom" id="Docker" order="9" show_stripe_button="false" />
439
+      <window_info anchor="bottom" id="Event Log" order="10" sideWeight="0.3001066" side_tool="true" weight="0.5222717" />
440
+      <window_info anchor="bottom" id="Messages" order="11" sideWeight="0.49969268" weight="0.19376393" />
441
+      <window_info anchor="bottom" id="Java Enterprise" order="12" />
442
+      <window_info anchor="bottom" id="Database Changes" order="13" />
443
+      <window_info anchor="bottom" id="Version Control" order="14" />
444
+      <window_info anchor="right" id="Commander" order="0" weight="0.4" />
445
+      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
446
+      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
447
+      <window_info anchor="right" id="Maven" order="3" weight="0.025806451" />
448
+      <window_info anchor="right" id="Palette" order="4" />
449
+      <window_info anchor="right" id="Capture Analysis" order="5" />
450
+      <window_info anchor="right" id="Database" order="6" />
451
+      <window_info anchor="right" id="Palette&#9;" order="7" />
452
+      <window_info anchor="right" id="Theme Preview" order="8" />
453
+      <window_info anchor="right" id="Bean Validation" order="9" weight="0.32983872" />
454
+    </layout-to-restore>
522 455
   </component>
523 456
   <component name="TypeScriptGeneratedFilesManager">
524 457
     <option name="version" value="1" />
@@ -594,52 +527,97 @@
594 527
         </state>
595 528
       </provider>
596 529
     </entry>
597
-    <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/impl/TpTicketServiceImpl.java">
598
-      <provider selected="true" editor-type-id="text-editor">
599
-        <state relative-caret-position="7776">
600
-          <caret line="307" selection-start-line="307" selection-end-line="307" />
601
-        </state>
602
-      </provider>
603
-    </entry>
604 530
     <entry file="file://$PROJECT_DIR$/../smart-community/app-api/src/main/java/com/community/huiju/controller/TicketController.java">
605 531
       <provider selected="true" editor-type-id="text-editor">
606
-        <state relative-caret-position="3267">
532
+        <state>
607 533
           <caret line="143" column="43" selection-start-line="143" selection-start-column="38" selection-end-line="143" selection-end-column="56" />
608 534
         </state>
609 535
       </provider>
610 536
     </entry>
611
-    <entry file="jar://F:/maven3.5/maven/serverRepository/org/springframework/spring-core/5.0.8.RELEASE/spring-core-5.0.8.RELEASE.jar!/org/springframework/cglib/proxy/MethodProxy.class">
537
+    <entry file="file://$PROJECT_DIR$/../smart-community/app-api/src/main/java/com/community/huiju/service/impl/TicketServiceImpl.java">
612 538
       <provider selected="true" editor-type-id="text-editor">
613
-        <state relative-caret-position="2403">
614
-          <caret line="104" selection-start-line="104" selection-end-line="104" />
539
+        <state>
540
+          <caret line="296" selection-start-line="296" selection-end-line="296" />
615 541
         </state>
616 542
       </provider>
617 543
     </entry>
618 544
     <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/model/TpTicketRecordComment.java">
619 545
       <provider selected="true" editor-type-id="text-editor">
620
-        <state relative-caret-position="432">
546
+        <state>
621 547
           <caret line="26" column="13" selection-start-line="26" selection-start-column="13" selection-end-line="26" selection-end-column="13" />
622 548
         </state>
623 549
       </provider>
624 550
     </entry>
625 551
     <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/TpTicketController.java">
626 552
       <provider selected="true" editor-type-id="text-editor">
627
-        <state relative-caret-position="2511">
553
+        <state>
628 554
           <caret line="109" column="60" selection-start-line="109" selection-start-column="53" selection-end-line="109" selection-end-column="65" />
629 555
         </state>
630 556
       </provider>
631 557
     </entry>
632 558
     <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/TpTicketService.java">
633 559
       <provider selected="true" editor-type-id="text-editor">
634
-        <state relative-caret-position="1782">
560
+        <state>
635 561
           <caret line="68" selection-start-line="68" selection-end-line="68" />
636 562
         </state>
637 563
       </provider>
638 564
     </entry>
639
-    <entry file="file://$PROJECT_DIR$/../smart-community/app-api/src/main/java/com/community/huiju/service/impl/TicketServiceImpl.java">
565
+    <entry file="jar://F:/maven3.5/maven/serverRepository/org/springframework/spring-core/5.0.8.RELEASE/spring-core-5.0.8.RELEASE.jar!/org/springframework/cglib/proxy/MethodProxy.class">
566
+      <provider selected="true" editor-type-id="text-editor">
567
+        <state relative-caret-position="27">
568
+          <caret line="104" selection-start-line="104" selection-end-line="104" />
569
+        </state>
570
+      </provider>
571
+    </entry>
572
+    <entry file="file://$PROJECT_DIR$/../smart-community/operate-api/src/main/java/com/community/huiju/controller/ImageController.java">
573
+      <provider selected="true" editor-type-id="text-editor">
574
+        <state relative-caret-position="159">
575
+          <caret line="32" lean-forward="true" selection-start-line="32" selection-end-line="32" />
576
+        </state>
577
+      </provider>
578
+    </entry>
579
+    <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/impl/TpTicketServiceImpl.java">
580
+      <provider selected="true" editor-type-id="text-editor">
581
+        <state relative-caret-position="79">
582
+          <caret line="157" column="58" lean-forward="true" selection-start-line="157" selection-start-column="58" selection-end-line="157" selection-end-column="58" />
583
+        </state>
584
+      </provider>
585
+    </entry>
586
+    <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/BillController.java">
587
+      <provider selected="true" editor-type-id="text-editor">
588
+        <state relative-caret-position="246">
589
+          <caret line="90" column="6" lean-forward="true" selection-start-line="90" selection-start-column="6" selection-end-line="90" selection-end-column="6" />
590
+        </state>
591
+      </provider>
592
+    </entry>
593
+    <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/impl/ImageServiceimpl.java">
594
+      <provider selected="true" editor-type-id="text-editor">
595
+        <state relative-caret-position="545">
596
+          <caret line="64" selection-start-line="64" selection-end-line="64" />
597
+        </state>
598
+      </provider>
599
+    </entry>
600
+    <entry file="jar://D:/Program Files/Java/jdk1.8.0_121/src.zip!/java/lang/String.java">
640 601
       <provider selected="true" editor-type-id="text-editor">
641
-        <state relative-caret-position="3">
642
-          <caret line="296" lean-forward="true" selection-start-line="296" selection-end-line="296" />
602
+        <state relative-caret-position="392">
603
+          <caret line="1932" column="78" selection-start-line="1932" selection-start-column="72" selection-end-line="1932" selection-end-column="78" />
604
+        </state>
605
+      </provider>
606
+    </entry>
607
+    <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/service/ImageServiceI.java">
608
+      <provider selected="true" editor-type-id="text-editor">
609
+        <state relative-caret-position="312">
610
+          <caret line="22" column="11" selection-start-line="22" selection-start-column="11" selection-end-line="22" selection-end-column="11" />
611
+        </state>
612
+      </provider>
613
+    </entry>
614
+    <entry file="file://$PROJECT_DIR$/../smart-community/property-api/src/main/java/com/community/huiju/controller/ImageController.java">
615
+      <provider selected="true" editor-type-id="text-editor">
616
+        <state relative-caret-position="275">
617
+          <caret line="62" column="48" lean-forward="true" selection-start-line="62" selection-start-column="48" selection-end-line="62" selection-end-column="48" />
618
+          <folding>
619
+            <element signature="e#2452#2460#0" expanded="true" />
620
+          </folding>
643 621
         </state>
644 622
       </provider>
645 623
     </entry>

+ 18
- 8
CODE/smart-community/property-api/src/main/java/com/community/huiju/controller/ImageController.java Dosyayı Görüntüle

@@ -13,12 +13,15 @@ import org.springframework.cloud.context.config.annotation.RefreshScope;
13 13
 import org.springframework.mock.web.MockMultipartFile;
14 14
 import org.springframework.web.bind.annotation.PostMapping;
15 15
 import org.springframework.web.bind.annotation.RequestMapping;
16
+import org.springframework.web.bind.annotation.RequestParam;
16 17
 import org.springframework.web.bind.annotation.RestController;
17 18
 import org.springframework.web.multipart.MultipartFile;
18 19
 import org.springframework.web.multipart.commons.CommonsMultipartFile;
19 20
 import sun.misc.BASE64Decoder;
20 21
 
22
+import javax.sql.rowset.serial.SerialBlob;
21 23
 import java.io.ByteArrayInputStream;
24
+import java.io.File;
22 25
 import java.util.ArrayList;
23 26
 import java.util.List;
24 27
 
@@ -52,17 +55,24 @@ public class ImageController extends BaseController {
52 55
 
53 56
     @ApiOperation(value = "图片上传以及获取url", notes = "图片上传以及获取url")
54 57
     @PostMapping(value = "/uploadimageBase64")
55
-    public ResponseBean uploadImgBase64AndGetUrl(@ApiParam(value = "uploadFiles" ,required = true) String[] uploadFiles) throws Exception {
58
+    public ResponseBean uploadImgBase64AndGetUrl(@ApiParam(value = "uploadFiles" ,required = true) String uploadFiles) throws Exception {
56 59
         ResponseBean responseBean = new ResponseBean();
57 60
         List<String> urls = new ArrayList<String>();
58
-        for (String base64Url : uploadFiles) {
59
-            BASE64Decoder base64Decoder = new BASE64Decoder();
60
-            byte[] bytes = base64Decoder.decodeBuffer(base64Url);
61
-            ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
62
-            String url = imageService.getImageUrl(byteArrayInputStream);
63
-            urls.add(url);
64
-        }
61
+        BASE64Decoder base64Decoder = new BASE64Decoder();
62
+        // int index = uploadFiles.indexOf("data:image/jpeg;base64,");
63
+        uploadFiles = uploadFiles.substring(23);
64
+        SerialBlob serialBlob = decodeToImage(uploadFiles);
65
+
66
+        String url = imageService.getImageUrl(serialBlob.getBinaryStream());
67
+        urls.add(url);
65 68
         responseBean.addSuccess(urls);
66 69
         return responseBean;
67 70
     }
71
+
72
+    public static SerialBlob decodeToImage(String imageString) throws Exception {
73
+        BASE64Decoder decoder = new BASE64Decoder();
74
+        byte[] imageByte = decoder.decodeBuffer(imageString);
75
+        return new SerialBlob(imageByte);
76
+    }
77
+
68 78
 }

+ 12
- 1
VUECODE/smart-property-manage/src/api/ticket.js Dosyayı Görüntüle

@@ -34,7 +34,7 @@ export function addRecordComment(data) {
34 34
     data: {
35 35
       ticketId: data.id,
36 36
       content: data.textContent,
37
-      imageUrl: data.img
37
+      imageUrl: data.contentImgAA
38 38
     }
39 39
   })
40 40
 }
@@ -72,3 +72,14 @@ export function updateTicket(data) {
72 72
   })
73 73
 }
74 74
 
75
+// // headers: {
76
+//   'Content-Type': 'application/x-www-form-urlencoded'
77
+// },
78
+export function imgAdd(data) {
79
+  return request({
80
+    url: '/uploadimageBase64',
81
+    method: 'post',
82
+    data: data
83
+  })
84
+}
85
+

+ 10
- 1
VUECODE/smart-property-manage/src/store/modules/ticket.js Dosyayı Görüntüle

@@ -1,4 +1,4 @@
1
-import { listTicket, ticketEdit, addRecordComment, addRecord, updateTicketStatus, updateTicket } from '@/api/ticket'
1
+import { listTicket, ticketEdit, addRecordComment, addRecord, updateTicketStatus, updateTicket, imgAdd } from '@/api/ticket'
2 2
 
3 3
 const ticket = {
4 4
   actions: {
@@ -58,6 +58,15 @@ const ticket = {
58 58
           reject(error)
59 59
         })
60 60
       })
61
+    },
62
+    ImgAdd({ commit }, data) {
63
+      return new Promise((resolve, reject) => {
64
+        imgAdd(data).then(response => {
65
+          resolve(response)
66
+        }).catch(error => {
67
+          reject(error)
68
+        })
69
+      })
61 70
     }
62 71
   }
63 72
 }

+ 108
- 141
VUECODE/smart-property-manage/src/views/ticket/details.vue Dosyayı Görüntüle

@@ -91,7 +91,7 @@
91 91
                            <td>                        
92 92
                             	<div class="processing_content_detail" style="float:left;width:70%">
93 93
                                     <span>{{itemContent.userName}}:{{itemContent.content}}                                 
94
-                                    <span style="color:#219AFF">'sssss'</span>
94
+                                    <span style="color:#219AFF"></span>
95 95
                                     </span>
96 96
                                     </div>
97 97
                               <div class="processing_content_detail" style="float:right;"><span ><i class="el-icon-time"></i>{{formatDate(itemContent.createDate)}}</span> </div>
@@ -102,7 +102,7 @@
102 102
                             	<div class="processing_content_detail" style="float:left;width:70%">
103 103
                                 <div style="float:left;width: 2px;height: 20px; background:#C7D4E9;margin-left:10px;margin-right:10px"></div> 
104 104
                                 <!-- <img :src="contentImgURL.imageUrl"  v-for="contentImgURL in itemContent.imgURL" preview preview-text="描述"  width="200" style="margin:5px;"> -->
105
-                                <img v-for="contentImgURL in itemContent.imgURL" :src="contentImgURL.imageUrl" preview width="200" height="200"  style="margin:5px;">                                                      
105
+                                <img v-for="contentImgURL in itemContent.imgURL" :src="contentImgURL.imageUrl" preview width="100" height="100"  style="margin:5px;">                                                      
106 106
                                 </div>                           
107 107
                             </td>
108 108
                           </tr>
@@ -114,7 +114,8 @@
114 114
            </el-step>
115 115
         </el-steps>
116 116
   </div>
117
-        <div v-if="listQuery.status==='0'||listQuery.status==='3'">
117
+  <!-- v-if="listQuery.status==='0'||listQuery.status==='3'" -->
118
+        <div >
118 119
         <div>
119 120
         <span>参与沟通</span>
120 121
         </div>
@@ -129,10 +130,10 @@
129 130
           :on-preview="handlePictureCardPreview"
130 131
           :on-remove="handleRemove"
131 132
           :on-success="handleSuccessContentImg"
132
-          :file-list="listQuery.img"
133
-          :show-file-list="Ass"
134 133
           name="uploadFiles"
135 134
           action="http://106.14.20.193:8086/property-api/uploadimage"
135
+          :file-list="listQuery.img"
136
+          :show-file-list="Ass"
136 137
           list-type="picture-card">
137 138
           <i class="el-icon-plus"/>
138 139
         </el-upload>
@@ -143,32 +144,32 @@
143 144
         <el-button type="primary" @click="submitContent">提交</el-button>
144 145
         </div>
145 146
         </div>
146
-
147
-        <div v-if="listQuery.status==='3'">
147
+      <!-- //v-if="listQuery.status==='3'" -->
148
+        <div >
148 149
         <div>
149
-        <span>流程操作</span>
150
+        <span>流程操作(压缩测试)</span>
150 151
         </div>
151 152
         <br>
152 153
           <div>   
153 154
           <textarea v-model="listQuery.relationContent" placeholder="请输入内容" class="textarea-inherit" id="message_textarea" rows="4"></textarea> 
154 155
         </div>
155 156
         <div>
156
-        <!-- <el-form-item label="图片附件">
157
+        <el-form-item label="图片附件">
157 158
         <el-upload
158 159
           :before-upload="handleCompress"
159 160
           :on-preview="handlePictureCardPreview"
160 161
           :on-remove="handleRemove"
161 162
           :on-success="handleSuccessContentImg"
162 163
           :file-list="contentImgList"
163
-          name="uploadFiles"
164
+           action=""
164 165
           list-type="picture-card">
165 166
           <i class="el-icon-plus"/>
166 167
           </el-upload>
167 168
         <el-dialog :visible.sync="dialogVisible">
168 169
           <img :src="dialogImageUrl" width="100%" alt="">
169 170
           </el-dialog>
170
-        </el-form-item> -->
171
-        <el-form-item label="图片附件">
171
+        </el-form-item>
172
+        <!-- <el-form-item label="图片附件">
172 173
         <el-upload
173 174
           :limit="8"
174 175
           :on-preview="handlePictureCardPreviewIO"
@@ -184,7 +185,7 @@
184 185
         <el-dialog :visible.sync="dialogVisible">
185 186
           <img :src="dialogImageUrlIO" width="100%" alt="">
186 187
         </el-dialog>
187
-      </el-form-item>
188
+      </el-form-item> -->
188 189
         <el-button type="primary" @click="succeedClick">提交</el-button>
189 190
         </div>
190 191
         </div>
@@ -206,6 +207,7 @@
206 207
 </template>
207 208
 <script>
208 209
 import { mapActions } from 'vuex'
210
+import Qs from 'qs'
209 211
 export default {
210 212
   data() {
211 213
     return {
@@ -293,6 +295,7 @@ export default {
293 295
     },
294 296
     handleSuccessContentImg(response, file, fileList) { // 配图上传成功时回调
295 297
       const resImg = response.data[0]
298
+      console.log('resImg',resImg)
296 299
       this.contentImgAA.push(resImg)
297 300
     },
298 301
     //流程
@@ -311,102 +314,92 @@ export default {
311 314
       const resImg = response.data[0]
312 315
       this.contentImgIO.push(resImg)
313 316
     },
314
-    // handleRemove(file, fileList) { // 配图移除时
315
-    //   this.listQuery.contentImg = []
316
-    //   for (let i = 0; i < fileList.length; i++) {
317
-    //     this.listQuery.contentImg.push(fileList[i].response.data[0])
318
-    //   }
319
-    //   console.log(file, fileList)
320
-    // },
321
-    // handlePictureCardPreview(file) { // 点击配图文件列表中已上传的文件时的钩子
322
-    //   this.dialogImageUrl = file.url
323
-    //   this.dialogVisible = true
324
-    // },
325
-    // handleSuccessContentImg(response, file, fileList) { // 活动上传成功时回调
326
-    //   const resImg = response.data[0]
327
-    //   this.listQuery.contentImg.push(resImg)
328
-    // },
329
-    // handleCompress(file) {  // 图片压缩
330
-    //   let self = this;
331
-    //   return new Promise((resolve, reject) => {
332
-    //     var reader = new FileReader()
333
-    //     reader.onload = function (e) {
334
-    //       var data = e.target.result
335
-    //       // 加载图片获取图片真实宽度和高度
336
-    //       var image = new Image()
337
-    //       image.onload = function () {
338
-    //         let newdata = self.compress(image);
339
-    //         let blob = self.dataURItoBlob(newdata);
340
-    //         var formData = new FormData();
341
-    //         formData.append("file", blob);
342
-    //         console.log("********将blob对象转成formData对象********");
343
-    //         console.log(formData.get("file"));
344
-    //         let config = {
345
-    //           headers: { "Content-Type": "multipart/form-data" }
346
-    //         };
347
-    //         self.axios.post(self.imgUploadUrl, formData, config).then(res => {
348
-    //           // if (res.data.code == 200) {
349
-    //           //   self.$emit(
350
-    //           //     "getImgsrc",
351
-    //           //     res.data.data.resultftphost,
352
-    //           //     res.data.data.resulturl
353
-    //           //   );
354
-    //           // } else {
355
-    //           //   self.$message({
356
-    //           //     message: "图片上传失败,请重试",
357
-    //           //     type: "warning"
358
-    //           //   });
359
-    //           // }
360
-    //         });
361
-    //       }
362
-    //       image.src = data
363
-    //     }
364
-    //     reader.readAsDataURL(file)
365
-    //   })
366
-    // },
367
-    // // 压缩图片
368
-    // compress(img) {
369
-    //   let canvas = document.createElement("canvas");
370
-    //   let ctx = canvas.getContext("2d");
371
-    //   let initSize = img.src.length;
372
-    //   let width = img.width;
373
-    //   let height = img.height;
374
-    //   canvas.width = width;
375
-    //   canvas.height = height;
376
-    //   // 铺底色
377
-    //   ctx.fillStyle = "#fff";
378
-    //   ctx.fillRect(0, 0, canvas.width, canvas.height);
379
-    //   ctx.drawImage(img, 0, 0, width, height);
317
+    handleCompress(file) {  // 图片压缩
318
+      let self = this;
319
+      return new Promise((resolve, reject) => {
320
+        var reader = new FileReader()
321
+        reader.onload = function (e) {
322
+          var data = e.target.result
323
+          // 加载图片获取图片真实宽度和高度
324
+            var image = new Image()
325
+            image.onload = function () {
326
+            let newdata = self.compress(image);
327
+            let blob = self.dataURItoBlob(newdata);
328
+            var formData = new FormData();
329
+            formData.append("file", blob);
330
+            formData.append("newdata", newdata);
331
+            console.log("********将blob对象转成formData对象********");
332
+            console.log(formData.get("file"));
333
+            console.log('formData',formData) 
334
+
335
+                console.log(formData)
336
+                let data = {"uploadFiles": newdata }
337
+
338
+                self.$store.dispatch('ImgAdd', Qs.stringify(data)).then((res) => {
339
+                if (res.data.code == 200) {
340
+                self.$emit(
341
+                  "getImgsrc",
342
+                  res.data.data.resultftphost,
343
+                  res.data.data.resulturl
344
+                );
345
+              } else {
346
+                self.$message({
347
+                  message: "图片上传失败,请重试",
348
+                  type: "warning"
349
+                });
350
+              }  
351
+          }).catch(() => {
352
+            console.log('imgAdd error')
353
+          })
354
+
355
+
356
+
357
+          }
358
+          image.src = data
359
+        }
360
+        reader.readAsDataURL(file)
361
+      })
362
+    },
363
+    // 压缩图片
364
+    compress(img) {
365
+      let canvas = document.createElement("canvas");
366
+      let ctx = canvas.getContext("2d");
367
+      let initSize = img.src.length;
368
+      let width = img.width;
369
+      let height = img.height;
370
+      canvas.width = width;
371
+      canvas.height = height;
372
+      // 铺底色
373
+      ctx.fillStyle = "#fff";
374
+      ctx.fillRect(0, 0, canvas.width, canvas.height);
375
+      ctx.drawImage(img, 0, 0, width, height);
376
+
377
+      //进行最小压缩
378
+      let ndata = canvas.toDataURL("image/jpeg", 0.1);
379
+      console.log("*******压缩后的图片大小*******");
380
+      // window.atob(ndata);
381
+      // console.log(' window.atob(ndata);', window.atob(ndata))
382
+      console.log(ndata)
383
+      console.log(ndata.length);
384
+      return ndata;
385
+    },
386
+    // base64转成bolb对象
387
+    dataURItoBlob(base64Data) {
388
+      var byteString;
389
+      if (base64Data.split(",")[0].indexOf("base64") >= 0)
390
+        byteString = atob(base64Data.split(",")[1]);
391
+      else byteString = unescape(base64Data.split(",")[1]);
392
+      var mimeString = base64Data
393
+        .split(",")[0]
394
+        .split(":")[1]
395
+        .split(";")[0];
396
+      var ia = new Uint8Array(byteString.length);
397
+      for (var i = 0; i < byteString.length; i++) {
398
+        ia[i] = byteString.charCodeAt(i);
399
+      }
400
+      return new Blob([ia], { type: mimeString });
401
+    },
380 402
 
381
-    //   //进行最小压缩
382
-    //   let ndata = canvas.toDataURL("image/jpeg", 0.1);
383
-    //   // console.log("*******压缩后的图片大小*******");
384
-    //   // console.log(ndata)
385
-    //   // console.log(ndata.length);
386
-    //   return ndata;
387
-    // },
388
-    // // base64转成bolb对象
389
-    // dataURItoBlob(base64Data) {
390
-    //   var byteString;
391
-    //   if (base64Data.split(",")[0].indexOf("base64") >= 0)
392
-    //     byteString = atob(base64Data.split(",")[1]);
393
-    //   else byteString = unescape(base64Data.split(",")[1]);
394
-    //   var mimeString = base64Data
395
-    //     .split(",")[0]
396
-    //     .split(":")[1]
397
-    //     .split(";")[0];
398
-    //   var ia = new Uint8Array(byteString.length);
399
-    //   for (var i = 0; i < byteString.length; i++) {
400
-    //     ia[i] = byteString.charCodeAt(i);
401
-    //   }
402
-    //   return new Blob([ia], { type: mimeString });
403
-    // },
404
-    // handleRemove(file, fileList) { // 配图移除时
405
-    //   this.listQuery.contentImg = []
406
-    //   for (let i = 0; i < fileList.length; i++) {
407
-    //   this.listQuery.contentImg.push(fileList[i].response.data[0])
408
-    //   }
409
-    // },
410 403
     formatDate(val) {
411 404
       var value = new Date(val)
412 405
       var year = value.getFullYear()
@@ -415,6 +408,8 @@ export default {
415 408
       var hour = value.getHours()
416 409
       var minutes = value.getMinutes()
417 410
       var seconds = value.getSeconds()
411
+      // var minut=minutes<10?minutes:'0'+minutes
412
+
418 413
       return year + '-' + month + '-' + day + ' ' + hour + ':' + minutes + ':' + seconds
419 414
       // return year + '-' + month + '-' + day
420 415
     },
@@ -433,13 +428,13 @@ export default {
433 428
          return
434 429
       }
435 430
         //  console.log("contentImg",this.listQuery.contentImg)
431
+        console.log('this.listQuery.img',this.listQuery.img)
436 432
         console.log('sss',this.listQuery.textContent)
437 433
         this.listQuery.img=this.contentImgAA
438
-        this.$store.dispatch('AddRecordComment', this.listQuery,).then((res) => {
439
-            this.Ass=false
440
-            this.contentImgAA=[]
441
-          this.dataQuery()
442
-         
434
+      this.$store.dispatch('AddRecordComment', this.listQuery,).then((res) => {
435
+          this.Ass=false
436
+          this.contentImgAA=[]
437
+          this.dataQuery()    
443 438
           this.Ass=true
444 439
           loading.close()
445 440
       }).catch(() => {
@@ -528,34 +523,6 @@ export default {
528 523
         console.log('error addRecordComment')
529 524
       })
530 525
     },
531
-
532
-    //拒绝受理弹框
533
-    // noAccept() {
534
-    //     this.$prompt('拒绝受理', {
535
-    //       confirmButtonText: '确定',
536
-    //       cancelButtonText: '取消'
537
-    //     }).then(({ value }) => {
538
-    //        updateTicketStatus(value)      
539
-    //       this.$message({
540
-    //         type: 'success',
541
-    //         message: '你的邮箱是: ' + value,
542
-           
543
-    //       });
544
-    //     }).catch(() => {
545
-    //       this.$message({
546
-    //         type: 'info',
547
-    //         message: '取消输入'
548
-    //       });       
549
-    //     });
550
-    //   },
551
-      //拒绝受理
552
-    // updateTicketStatus(value){ 
553
-    //     console.log('sss',this.listQuery.textContent)
554
-    //     this.$store.dispatch('UpdateTicketStatus', this.listQuery).then((res) => {
555
-    //   }).catch(() => {
556
-    //     console.log('error AddRecord')
557
-    //   })
558
-    // },
559 526
      next() {
560 527
         if (this.active++ > 2) this.active = 0;
561 528
       },