Commit 14a4dd7f6dd263ae031f48e5aeff18ad6aa2b3f6
Merge remote-tracking branch 'origin/Masada' into develop
# Conflicts: # src/main/java/com/huaheng/pc/config/location/mapper/LocationMapper.java # src/main/java/com/huaheng/pc/config/warehouse/mapper/WarehouseMapper.java # src/main/java/com/huaheng/pc/receipt/receiptDetail/service/ReceiptDetailServiceImpl.java # src/main/java/com/huaheng/pc/shipment/shipmentDetail/mapper/ShipmentDetailMapper.java # src/main/java/com/huaheng/pc/shipment/shipmentDetail/service/ShipmentDetailService.java # src/main/java/com/huaheng/pc/shipment/shipmentDetail/service/ShipmentDetailServiceImpl.java # src/main/resources/mybatis/config/WarehouseMapper.xml # src/main/resources/mybatis/shipment/ShipmentDetailMapper.xml # src/main/resources/templates/config/carrier/carrier.html # src/main/resources/templates/config/company/company.html # src/main/resources/templates/config/configValue/configValue.html # src/main/resources/templates/config/customer/customer.html # src/main/resources/templates/config/statusFlowHeader/statusFlowHeader.html # src/main/resources/templates/config/supplier/supplier.html # src/main/resources/templates/system/config/config.html
Showing
153 changed files
with
5456 additions
and
602 deletions
Too many changes to show.
To preserve performance only 60 of 153 files are displayed.
.idea/workspace.xml
1 | 1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | 2 | <project version="4"> |
3 | 3 | <component name="ChangeListManager"> |
4 | - <list default="true" id="baeae966-16bb-4f97-a411-22fe5a65cefd" name="Default Changelist" comment=""> | |
4 | + <list default="true" id="29079676-ace5-434e-89a2-76a325e744a5" name="Default Changelist" comment="d多种格式导出"> | |
5 | 5 | <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> |
6 | - <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/check/checkingRegister/controller/CheckingRegisterController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/check/checkingRegister/controller/CheckingRegisterController.java" afterDir="false" /> | |
7 | - <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/check/checkingRegister/service/CheckingRegisterService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/check/checkingRegister/service/CheckingRegisterService.java" afterDir="false" /> | |
8 | - <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/statusFlow/controller/StatusFlowHeaderController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/statusFlow/controller/StatusFlowHeaderController.java" afterDir="false" /> | |
9 | - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/config/filterConfigHeader/add.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/config/filterConfigHeader/add.html" afterDir="false" /> | |
10 | - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/config/receiptType/add.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/config/receiptType/add.html" afterDir="false" /> | |
11 | - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/config/statusFlowHeader/add.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/config/statusFlowHeader/add.html" afterDir="false" /> | |
12 | - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/config/statusFlowHeader/statusFlowHeader.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/config/statusFlowHeader/statusFlowHeader.html" afterDir="false" /> | |
13 | - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/receipt/receiptHeader/receiptHeader.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/receipt/receiptHeader/receiptHeader.html" afterDir="false" /> | |
6 | + <change beforePath="$PROJECT_DIR$/mypage" beforeDir="false" /> | |
7 | + <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/jasper/JasperController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/jasper/JasperController.java" afterDir="false" /> | |
8 | + <change beforePath="$PROJECT_DIR$/src/main/resources/templates/config/shipmentType/edit.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/config/shipmentType/edit.html" afterDir="false" /> | |
9 | + <change beforePath="$PROJECT_DIR$/src/main/resources/templates/shipment/shipmentContainerHeader/shipmentContainerHeader.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/shipment/shipmentContainerHeader/shipmentContainerHeader.html" afterDir="false" /> | |
14 | 10 | </list> |
11 | + <ignored path="$PROJECT_DIR$/target/" /> | |
15 | 12 | <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> |
16 | 13 | <option name="SHOW_DIALOG" value="false" /> |
17 | 14 | <option name="HIGHLIGHT_CONFLICTS" value="true" /> |
... | ... | @@ -32,22 +29,396 @@ |
32 | 29 | <expand /> |
33 | 30 | <select /> |
34 | 31 | </component> |
32 | + <component name="FileEditorManager"> | |
33 | + <leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> | |
34 | + <file pinned="false" current-in-tab="false"> | |
35 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/controller/ShipmentContainerHeaderController.java"> | |
36 | + <provider selected="true" editor-type-id="text-editor"> | |
37 | + <state relative-caret-position="300"> | |
38 | + <caret line="36" column="13" selection-start-line="36" selection-start-column="13" selection-end-line="36" selection-end-column="13" /> | |
39 | + </state> | |
40 | + </provider> | |
41 | + </entry> | |
42 | + </file> | |
43 | + <file pinned="false" current-in-tab="false"> | |
44 | + <entry file="file://$PROJECT_DIR$/src/main/resources/templates/shipment/shipmentContainerHeader/shipmentContainerHeader.html"> | |
45 | + <provider selected="true" editor-type-id="text-editor"> | |
46 | + <state relative-caret-position="100"> | |
47 | + <caret line="16" column="72" selection-start-line="16" selection-start-column="72" selection-end-line="16" selection-end-column="72" /> | |
48 | + </state> | |
49 | + </provider> | |
50 | + </entry> | |
51 | + </file> | |
52 | + <file pinned="false" current-in-tab="true"> | |
53 | + <entry file="file://$PROJECT_DIR$/src/main/resources/templates/config/shipmentType/edit.html"> | |
54 | + <provider selected="true" editor-type-id="text-editor"> | |
55 | + <state relative-caret-position="118"> | |
56 | + <caret line="63" column="37" lean-forward="true" selection-start-line="63" selection-start-column="37" selection-end-line="63" selection-end-column="37" /> | |
57 | + </state> | |
58 | + </provider> | |
59 | + </entry> | |
60 | + </file> | |
61 | + <file pinned="false" current-in-tab="false"> | |
62 | + <entry file="file://$PROJECT_DIR$/src/main/resources/templates/config/shipmentType/add.html"> | |
63 | + <provider selected="true" editor-type-id="text-editor"> | |
64 | + <state relative-caret-position="1200"> | |
65 | + <caret line="48" column="144" selection-start-line="48" selection-start-column="130" selection-end-line="48" selection-end-column="144" /> | |
66 | + </state> | |
67 | + </provider> | |
68 | + </entry> | |
69 | + </file> | |
70 | + <file pinned="false" current-in-tab="false"> | |
71 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/statusFlow/service/StatusFlowHeaderService.java"> | |
72 | + <provider selected="true" editor-type-id="text-editor"> | |
73 | + <state relative-caret-position="325"> | |
74 | + <caret line="25" column="63" selection-start-line="25" selection-start-column="53" selection-end-line="25" selection-end-column="63" /> | |
75 | + </state> | |
76 | + </provider> | |
77 | + </entry> | |
78 | + </file> | |
79 | + <file pinned="false" current-in-tab="false"> | |
80 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/shipmentType/controller/shipmentTypeController.java"> | |
81 | + <provider selected="true" editor-type-id="text-editor"> | |
82 | + <state relative-caret-position="2175"> | |
83 | + <caret line="118" column="19" selection-start-line="118" selection-start-column="19" selection-end-line="118" selection-end-column="19" /> | |
84 | + </state> | |
85 | + </provider> | |
86 | + </entry> | |
87 | + </file> | |
88 | + </leaf> | |
89 | + </component> | |
35 | 90 | <component name="FileTemplateManagerImpl"> |
36 | 91 | <option name="RECENT_TEMPLATES"> |
37 | 92 | <list> |
38 | 93 | <option value="Interface" /> |
39 | - <option value="Class" /> | |
40 | - <option value="Enum" /> | |
41 | 94 | <option value="HTML File" /> |
95 | + <option value="Enum" /> | |
96 | + <option value="Class" /> | |
42 | 97 | </list> |
43 | 98 | </option> |
44 | 99 | </component> |
100 | + <component name="FindInProjectRecents"> | |
101 | + <findStrings> | |
102 | + <find>20</find> | |
103 | + <find>30</find> | |
104 | + <find>3</find> | |
105 | + <find>40</find> | |
106 | + <find>50</find> | |
107 | + <find>0</find> | |
108 | + <find>1</find> | |
109 | + <find>5</find> | |
110 | + <find>10</find> | |
111 | + <find>runToPdfStream</find> | |
112 | + <find>\\</find> | |
113 | + </findStrings> | |
114 | + <replaceStrings> | |
115 | + <replace>/</replace> | |
116 | + </replaceStrings> | |
117 | + <dirStrings> | |
118 | + <dir>C:\Users\Administrator\IdeaProjects\wms2\src\main\resources\static\img\icon</dir> | |
119 | + </dirStrings> | |
120 | + </component> | |
45 | 121 | <component name="Git.Settings"> |
46 | 122 | <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" /> |
123 | + <option name="RECENT_BRANCH_BY_REPOSITORY"> | |
124 | + <map> | |
125 | + <entry key="$PROJECT_DIR$" value="develop" /> | |
126 | + </map> | |
127 | + </option> | |
128 | + <option name="PUSH_TAGS"> | |
129 | + <GitPushTagMode /> | |
130 | + </option> | |
131 | + </component> | |
132 | + <component name="IdeDocumentHistory"> | |
133 | + <option name="CHANGED_PATHS"> | |
134 | + <list> | |
135 | + <option value="$PROJECT_DIR$/src/main/resources/templates/config/materialType/add.html" /> | |
136 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/FilterConfigDetail/service/FilterConfigDetailService.java" /> | |
137 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/statusFlow/service/StatusFlowHeaderService.java" /> | |
138 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/materialUnit/controller/MaterialUnitController.java" /> | |
139 | + <option value="$PROJECT_DIR$/src/main/resources/templates/config/materialMultiple/add.html" /> | |
140 | + <option value="$PROJECT_DIR$/src/main/resources/templates/config/materialMultiple/materialMultiple.html" /> | |
141 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/materialMultiple/controller/MaterialMultipleController.java" /> | |
142 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/bom/controller/BomHeaderController.java" /> | |
143 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/excelTemplate/controller/excelTemplateController.java" /> | |
144 | + <option value="$PROJECT_DIR$/src/main/resources/templates/config/company/edit.html" /> | |
145 | + <option value="$PROJECT_DIR$/src/main/resources/templates/config/bomHeader/add.html" /> | |
146 | + <option value="$PROJECT_DIR$/src/main/resources/templates/config/bomHeader/edit.html" /> | |
147 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/company/service/CompanyServiceImpl.java" /> | |
148 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/material/controller/MaterialController.java" /> | |
149 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/api/wcs/service/taskInfo/TaskInfoServiceImpl.java" /> | |
150 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java" /> | |
151 | + <option value="$PROJECT_DIR$/src/main/resources/templates/task/taskHeader/taskHeader.html" /> | |
152 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/api/wcs/domain/WcsTask.java" /> | |
153 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/api/wcs/service/taskAssignService/TaskAssignServiceImpl.java" /> | |
154 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/api/wcs/service/taskCancel/TaskCancelServiceImpl.java" /> | |
155 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/api/wcs/service/taskFinish/TaskFinishServiceImpl.java" /> | |
156 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java" /> | |
157 | + <option value="$PROJECT_DIR$/src/main/resources/mybatis/config/LocationMapper.xml" /> | |
158 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/location/mapper/LocationMapper.java" /> | |
159 | + <option value="$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountHeader/add.html" /> | |
160 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/framework/jasper/JasperPdfReportView.java" /> | |
161 | + <option value="$PROJECT_DIR$/src/main/resources/fonts/fonts.xml" /> | |
162 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/report/excelReport/controller/ExcelReportController.java" /> | |
163 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptDetail/service/ReceiptDetailServiceImpl.java" /> | |
164 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/framework/jasper/JasperReportConfig.java" /> | |
165 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/report/jasper/controller/JasperController.java" /> | |
166 | + <option value="$PROJECT_DIR$/src/test/java/com.huaheng.test/ServiceTest.java" /> | |
167 | + <option value="$PROJECT_DIR$/src/main/resources/application-dev.yml" /> | |
168 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/framework/jasper/JasperReportsPdfView.java" /> | |
169 | + <option value="$PROJECT_DIR$/src/main/resources/application.yml" /> | |
170 | + <option value="$PROJECT_DIR$/src/main/resources/jasperreports_extension.properties" /> | |
171 | + <option value="$PROJECT_DIR$/pom.xml" /> | |
172 | + <option value="$PROJECT_DIR$/src/main/resources/mybatis/inventory/InventoryDetailMapper.xml" /> | |
173 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailService.java" /> | |
174 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailServiceImpl.java" /> | |
175 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/mapper/InventoryDetailMapper.java" /> | |
176 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/framework/jasper/JasperConfig.java" /> | |
177 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/jasper/JasperConfig.java" /> | |
178 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/common/jasper/DocType.java" /> | |
179 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/common/jasper/DocTypeUtil.java" /> | |
180 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/common/jasper/JasperUtils.java" /> | |
181 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/common/jasper/JasperreportUtils.java" /> | |
182 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/jasper/JasperController.java" /> | |
183 | + <option value="$PROJECT_DIR$/src/main/resources/templates/shipment/shipmentContainerHeader/shipmentContainerHeader.html" /> | |
184 | + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/shipmentType/controller/shipmentTypeController.java" /> | |
185 | + <option value="$PROJECT_DIR$/src/main/resources/templates/config/shipmentType/edit.html" /> | |
186 | + </list> | |
187 | + </option> | |
188 | + </component> | |
189 | + <component name="MavenImportPreferences"> | |
190 | + <option name="importingSettings"> | |
191 | + <MavenImportingSettings> | |
192 | + <option name="importAutomatically" value="true" /> | |
193 | + </MavenImportingSettings> | |
194 | + </option> | |
195 | + </component> | |
196 | + <component name="MavenProjectNavigator"> | |
197 | + <treeState> | |
198 | + <expand> | |
199 | + <path> | |
200 | + <item name="" type="16c1761:MavenProjectsStructure$RootNode" /> | |
201 | + <item name="huaheng" type="9519ce18:MavenProjectsStructure$ProjectNode" /> | |
202 | + </path> | |
203 | + <path> | |
204 | + <item name="" type="16c1761:MavenProjectsStructure$RootNode" /> | |
205 | + <item name="huaheng" type="9519ce18:MavenProjectsStructure$ProjectNode" /> | |
206 | + <item name="Dependencies" type="f4be9f2a:MavenProjectsStructure$DependenciesNode" /> | |
207 | + </path> | |
208 | + </expand> | |
209 | + <select /> | |
210 | + </treeState> | |
211 | + </component> | |
212 | + <component name="ProjectFrameBounds" extendedState="6"> | |
213 | + <option name="x" value="-10" /> | |
214 | + <option name="y" value="-10" /> | |
215 | + <option name="width" value="1940" /> | |
216 | + <option name="height" value="1050" /> | |
47 | 217 | </component> |
48 | 218 | <component name="ProjectId" id="1QOzUtfkdeRmYuw3MIDHXXMLsFH" /> |
49 | 219 | <component name="ProjectLevelVcsManager"> |
50 | 220 | <OptionsSetting value="false" id="Update" /> |
221 | + <ConfirmationsSetting value="2" id="Add" /> | |
222 | + </component> | |
223 | + <component name="ProjectView"> | |
224 | + <navigator proportions="" version="1"> | |
225 | + <foldersAlwaysOnTop value="true" /> | |
226 | + </navigator> | |
227 | + <panes> | |
228 | + <pane id="Scope" /> | |
229 | + <pane id="ProjectPane"> | |
230 | + <subPane> | |
231 | + <expand> | |
232 | + <path> | |
233 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
234 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
235 | + </path> | |
236 | + <path> | |
237 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
238 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
239 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
240 | + </path> | |
241 | + <path> | |
242 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
243 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
244 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
245 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
246 | + </path> | |
247 | + <path> | |
248 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
249 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
250 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
251 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
252 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
253 | + </path> | |
254 | + <path> | |
255 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
256 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
257 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
258 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
259 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
260 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
261 | + </path> | |
262 | + <path> | |
263 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
264 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
265 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
266 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
267 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
268 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
269 | + <item name="huaheng" type="462c0819:PsiDirectoryNode" /> | |
270 | + </path> | |
271 | + <path> | |
272 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
273 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
274 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
275 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
276 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
277 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
278 | + <item name="huaheng" type="462c0819:PsiDirectoryNode" /> | |
279 | + <item name="common" type="462c0819:PsiDirectoryNode" /> | |
280 | + </path> | |
281 | + <path> | |
282 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
283 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
284 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
285 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
286 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
287 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
288 | + <item name="huaheng" type="462c0819:PsiDirectoryNode" /> | |
289 | + <item name="pc" type="462c0819:PsiDirectoryNode" /> | |
290 | + </path> | |
291 | + <path> | |
292 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
293 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
294 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
295 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
296 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
297 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
298 | + <item name="huaheng" type="462c0819:PsiDirectoryNode" /> | |
299 | + <item name="pc" type="462c0819:PsiDirectoryNode" /> | |
300 | + <item name="config" type="462c0819:PsiDirectoryNode" /> | |
301 | + </path> | |
302 | + <path> | |
303 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
304 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
305 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
306 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
307 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
308 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
309 | + <item name="huaheng" type="462c0819:PsiDirectoryNode" /> | |
310 | + <item name="pc" type="462c0819:PsiDirectoryNode" /> | |
311 | + <item name="config" type="462c0819:PsiDirectoryNode" /> | |
312 | + <item name="shipmentType" type="462c0819:PsiDirectoryNode" /> | |
313 | + </path> | |
314 | + <path> | |
315 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
316 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
317 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
318 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
319 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
320 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
321 | + <item name="huaheng" type="462c0819:PsiDirectoryNode" /> | |
322 | + <item name="pc" type="462c0819:PsiDirectoryNode" /> | |
323 | + <item name="config" type="462c0819:PsiDirectoryNode" /> | |
324 | + <item name="shipmentType" type="462c0819:PsiDirectoryNode" /> | |
325 | + <item name="controller" type="462c0819:PsiDirectoryNode" /> | |
326 | + </path> | |
327 | + <path> | |
328 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
329 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
330 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
331 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
332 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
333 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
334 | + <item name="huaheng" type="462c0819:PsiDirectoryNode" /> | |
335 | + <item name="pc" type="462c0819:PsiDirectoryNode" /> | |
336 | + <item name="shipment" type="462c0819:PsiDirectoryNode" /> | |
337 | + </path> | |
338 | + <path> | |
339 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
340 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
341 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
342 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
343 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
344 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
345 | + <item name="huaheng" type="462c0819:PsiDirectoryNode" /> | |
346 | + <item name="pc" type="462c0819:PsiDirectoryNode" /> | |
347 | + <item name="shipment" type="462c0819:PsiDirectoryNode" /> | |
348 | + <item name="shipmentContainerHeader" type="462c0819:PsiDirectoryNode" /> | |
349 | + </path> | |
350 | + <path> | |
351 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
352 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
353 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
354 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
355 | + <item name="java" type="462c0819:PsiDirectoryNode" /> | |
356 | + <item name="com" type="462c0819:PsiDirectoryNode" /> | |
357 | + <item name="huaheng" type="462c0819:PsiDirectoryNode" /> | |
358 | + <item name="pc" type="462c0819:PsiDirectoryNode" /> | |
359 | + <item name="shipment" type="462c0819:PsiDirectoryNode" /> | |
360 | + <item name="shipmentContainerHeader" type="462c0819:PsiDirectoryNode" /> | |
361 | + <item name="controller" type="462c0819:PsiDirectoryNode" /> | |
362 | + </path> | |
363 | + <path> | |
364 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
365 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
366 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
367 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
368 | + <item name="resources" type="462c0819:PsiDirectoryNode" /> | |
369 | + </path> | |
370 | + <path> | |
371 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
372 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
373 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
374 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
375 | + <item name="resources" type="462c0819:PsiDirectoryNode" /> | |
376 | + <item name="templates" type="462c0819:PsiDirectoryNode" /> | |
377 | + </path> | |
378 | + <path> | |
379 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
380 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
381 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
382 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
383 | + <item name="resources" type="462c0819:PsiDirectoryNode" /> | |
384 | + <item name="templates" type="462c0819:PsiDirectoryNode" /> | |
385 | + <item name="config" type="462c0819:PsiDirectoryNode" /> | |
386 | + </path> | |
387 | + <path> | |
388 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
389 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
390 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
391 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
392 | + <item name="resources" type="462c0819:PsiDirectoryNode" /> | |
393 | + <item name="templates" type="462c0819:PsiDirectoryNode" /> | |
394 | + <item name="config" type="462c0819:PsiDirectoryNode" /> | |
395 | + <item name="shipmentType" type="462c0819:PsiDirectoryNode" /> | |
396 | + </path> | |
397 | + <path> | |
398 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
399 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
400 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
401 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
402 | + <item name="resources" type="462c0819:PsiDirectoryNode" /> | |
403 | + <item name="templates" type="462c0819:PsiDirectoryNode" /> | |
404 | + <item name="shipment" type="462c0819:PsiDirectoryNode" /> | |
405 | + </path> | |
406 | + <path> | |
407 | + <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> | |
408 | + <item name="wms2" type="462c0819:PsiDirectoryNode" /> | |
409 | + <item name="src" type="462c0819:PsiDirectoryNode" /> | |
410 | + <item name="main" type="462c0819:PsiDirectoryNode" /> | |
411 | + <item name="resources" type="462c0819:PsiDirectoryNode" /> | |
412 | + <item name="templates" type="462c0819:PsiDirectoryNode" /> | |
413 | + <item name="shipment" type="462c0819:PsiDirectoryNode" /> | |
414 | + <item name="shipmentContainerHeader" type="462c0819:PsiDirectoryNode" /> | |
415 | + </path> | |
416 | + </expand> | |
417 | + <select /> | |
418 | + </subPane> | |
419 | + </pane> | |
420 | + <pane id="PackagesPane" /> | |
421 | + </panes> | |
51 | 422 | </component> |
52 | 423 | <component name="PropertiesComponent"> |
53 | 424 | <property name="ASKED_ADD_EXTERNAL_FILES" value="true" /> |
... | ... | @@ -58,15 +429,16 @@ |
58 | 429 | <property name="RequestMappingsPanelWidth1" value="75" /> |
59 | 430 | <property name="WebServerToolWindowFactoryState" value="false" /> |
60 | 431 | <property name="aspect.path.notification.shown" value="true" /> |
432 | + <property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1574413107783" /> | |
61 | 433 | <property name="full.screen.before.presentation.mode" value="false" /> |
62 | - <property name="last_opened_file_path" value="$PROJECT_DIR$/src/main/resources/static/ajax/libs/bootstrap-table/extensions/editable" /> | |
434 | + <property name="last_opened_file_path" value="$MAVEN_REPOSITORY$/com/font/fonts/1.0.0/fonts-1.0.0.jar!/" /> | |
63 | 435 | <property name="node.js.detected.package.eslint" value="true" /> |
64 | 436 | <property name="node.js.detected.package.tslint" value="true" /> |
65 | 437 | <property name="node.js.path.for.package.eslint" value="project" /> |
66 | 438 | <property name="node.js.path.for.package.tslint" value="project" /> |
67 | 439 | <property name="node.js.selected.package.eslint" value="(autodetect)" /> |
68 | 440 | <property name="node.js.selected.package.tslint" value="(autodetect)" /> |
69 | - <property name="project.structure.last.edited" value="Modules" /> | |
441 | + <property name="project.structure.last.edited" value="Libraries" /> | |
70 | 442 | <property name="project.structure.proportion" value="0.15429688" /> |
71 | 443 | <property name="project.structure.side.proportion" value="0.2" /> |
72 | 444 | <property name="run.code.analysis.last.selected.profile" value="pProject Default" /> |
... | ... | @@ -74,7 +446,18 @@ |
74 | 446 | </component> |
75 | 447 | <component name="RecentsManager"> |
76 | 448 | <key name="CopyFile.RECENT_KEYS"> |
77 | - <recent name="E:\code\wms2\src\main\resources\static\ajax\libs\bootstrap-table\extensions\editable" /> | |
449 | + <recent name="C:\Users\Administrator\IdeaProjects\wms2\src\main\resources\jaspers" /> | |
450 | + <recent name="C:\Users\Administrator\IdeaProjects\wms2\src\main\resources" /> | |
451 | + <recent name="C:\Users\Administrator\IdeaProjects\wms2\src\main\resources\templates" /> | |
452 | + <recent name="C:\Users\Administrator\IdeaProjects\wms2\src\main\resources\fonts" /> | |
453 | + <recent name="C:\Users\Administrator\IdeaProjects\wms2\src\main\resources\static\js" /> | |
454 | + </key> | |
455 | + <key name="CopyClassDialog.RECENTS_KEY"> | |
456 | + <recent name="com.huaheng.pc.jasper" /> | |
457 | + </key> | |
458 | + <key name="MoveFile.RECENT_KEYS"> | |
459 | + <recent name="C:\Users\Administrator\IdeaProjects\wms2\src\main\resources\jaspers" /> | |
460 | + <recent name="C:\Users\Administrator\Desktop" /> | |
78 | 461 | </key> |
79 | 462 | </component> |
80 | 463 | <component name="RunDashboard"> |
... | ... | @@ -93,6 +476,7 @@ |
93 | 476 | </RuleState> |
94 | 477 | </list> |
95 | 478 | </option> |
479 | + <option name="contentProportion" value="0.15846995" /> | |
96 | 480 | </component> |
97 | 481 | <component name="RunManager" selected="Spring Boot.HuaHengApplication"> |
98 | 482 | <configuration name="ReceiptContainerHeaderServiceImpl" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true"> |
... | ... | @@ -108,6 +492,22 @@ |
108 | 492 | <option name="Make" enabled="true" /> |
109 | 493 | </method> |
110 | 494 | </configuration> |
495 | + <configuration name="ServiceTest.jasper" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true"> | |
496 | + <module name="wms2" /> | |
497 | + <extension name="coverage"> | |
498 | + <pattern> | |
499 | + <option name="PATTERN" value="com.huaheng.test.*" /> | |
500 | + <option name="ENABLED" value="true" /> | |
501 | + </pattern> | |
502 | + </extension> | |
503 | + <option name="PACKAGE_NAME" value="com.huaheng.test" /> | |
504 | + <option name="MAIN_CLASS_NAME" value="com.huaheng.test.ServiceTest" /> | |
505 | + <option name="METHOD_NAME" value="jasper" /> | |
506 | + <option name="TEST_OBJECT" value="method" /> | |
507 | + <method v="2"> | |
508 | + <option name="Make" enabled="true" /> | |
509 | + </method> | |
510 | + </configuration> | |
111 | 511 | <configuration name="ServiceTest.sendSimpleMail" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true"> |
112 | 512 | <module name="huaheng" /> |
113 | 513 | <extension name="coverage"> |
... | ... | @@ -124,8 +524,69 @@ |
124 | 524 | <option name="Make" enabled="true" /> |
125 | 525 | </method> |
126 | 526 | </configuration> |
527 | + <configuration name="HuaHengApplication (1)" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot" temporary="true" nameIsGenerated="true"> | |
528 | + <module name="wms2" /> | |
529 | + <extension name="coverage"> | |
530 | + <pattern> | |
531 | + <option name="PATTERN" value="com.huaheng.*" /> | |
532 | + <option name="ENABLED" value="true" /> | |
533 | + </pattern> | |
534 | + </extension> | |
535 | + <option name="SPRING_BOOT_MAIN_CLASS" value="com.huaheng.HuaHengApplication" /> | |
536 | + <method v="2"> | |
537 | + <option name="Make" enabled="true" /> | |
538 | + </method> | |
539 | + </configuration> | |
127 | 540 | <configuration name="HuaHengApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot" temporary="true" nameIsGenerated="true"> |
128 | - <module name="huaheng" /> | |
541 | + <module name="wms2" /> | |
542 | + <extension name="coverage"> | |
543 | + <pattern> | |
544 | + <option name="PATTERN" value="com.huaheng.*" /> | |
545 | + <option name="ENABLED" value="true" /> | |
546 | + </pattern> | |
547 | + </extension> | |
548 | + <option name="SPRING_BOOT_MAIN_CLASS" value="com.huaheng.HuaHengApplication" /> | |
549 | + <option name="ALTERNATIVE_JRE_PATH" /> | |
550 | + <option name="UPDATE_ACTION_UPDATE_POLICY" value="UpdateClassesAndResources" /> | |
551 | + <option name="FRAME_DEACTIVATION_UPDATE_POLICY" value="UpdateClassesAndResources" /> | |
552 | + <method v="2"> | |
553 | + <option name="Make" enabled="true" /> | |
554 | + </method> | |
555 | + </configuration> | |
556 | + <configuration name="HuaHengApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot" temporary="true" nameIsGenerated="true"> | |
557 | + <module name="wms2" /> | |
558 | + <extension name="coverage"> | |
559 | + <pattern> | |
560 | + <option name="PATTERN" value="com.huaheng.*" /> | |
561 | + <option name="ENABLED" value="true" /> | |
562 | + </pattern> | |
563 | + </extension> | |
564 | + <option name="SPRING_BOOT_MAIN_CLASS" value="com.huaheng.HuaHengApplication" /> | |
565 | + <option name="ALTERNATIVE_JRE_PATH" /> | |
566 | + <option name="UPDATE_ACTION_UPDATE_POLICY" value="UpdateClassesAndResources" /> | |
567 | + <option name="FRAME_DEACTIVATION_UPDATE_POLICY" value="UpdateClassesAndResources" /> | |
568 | + <method v="2"> | |
569 | + <option name="Make" enabled="true" /> | |
570 | + </method> | |
571 | + </configuration> | |
572 | + <configuration name="HuaHengApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot" temporary="true" nameIsGenerated="true"> | |
573 | + <module name="wms2" /> | |
574 | + <extension name="coverage"> | |
575 | + <pattern> | |
576 | + <option name="PATTERN" value="com.huaheng.*" /> | |
577 | + <option name="ENABLED" value="true" /> | |
578 | + </pattern> | |
579 | + </extension> | |
580 | + <option name="SPRING_BOOT_MAIN_CLASS" value="com.huaheng.HuaHengApplication" /> | |
581 | + <option name="ALTERNATIVE_JRE_PATH" /> | |
582 | + <option name="UPDATE_ACTION_UPDATE_POLICY" value="UpdateClassesAndResources" /> | |
583 | + <option name="FRAME_DEACTIVATION_UPDATE_POLICY" value="UpdateClassesAndResources" /> | |
584 | + <method v="2"> | |
585 | + <option name="Make" enabled="true" /> | |
586 | + </method> | |
587 | + </configuration> | |
588 | + <configuration name="HuaHengApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot" temporary="true" nameIsGenerated="true"> | |
589 | + <module name="wms2" /> | |
129 | 590 | <extension name="coverage"> |
130 | 591 | <pattern> |
131 | 592 | <option name="PATTERN" value="com.huaheng.*" /> |
... | ... | @@ -143,13 +604,17 @@ |
143 | 604 | <list> |
144 | 605 | <item itemvalue="Application.ReceiptContainerHeaderServiceImpl" /> |
145 | 606 | <item itemvalue="JUnit.ServiceTest.sendSimpleMail" /> |
607 | + <item itemvalue="JUnit.ServiceTest.jasper" /> | |
608 | + <item itemvalue="Spring Boot.HuaHengApplication (1)" /> | |
146 | 609 | <item itemvalue="Spring Boot.HuaHengApplication" /> |
147 | 610 | </list> |
148 | 611 | <recent_temporary> |
149 | 612 | <list> |
150 | 613 | <item itemvalue="Spring Boot.HuaHengApplication" /> |
151 | - <item itemvalue="Application.ReceiptContainerHeaderServiceImpl" /> | |
614 | + <item itemvalue="Spring Boot.HuaHengApplication (1)" /> | |
615 | + <item itemvalue="JUnit.ServiceTest.jasper" /> | |
152 | 616 | <item itemvalue="JUnit.ServiceTest.sendSimpleMail" /> |
617 | + <item itemvalue="Application.ReceiptContainerHeaderServiceImpl" /> | |
153 | 618 | </list> |
154 | 619 | </recent_temporary> |
155 | 620 | </component> |
... | ... | @@ -179,7 +644,7 @@ |
179 | 644 | </component> |
180 | 645 | <component name="TaskManager"> |
181 | 646 | <task active="true" id="Default" summary="Default task"> |
182 | - <changelist id="baeae966-16bb-4f97-a411-22fe5a65cefd" name="Default Changelist" comment="" /> | |
647 | + <changelist id="29079676-ace5-434e-89a2-76a325e744a5" name="Default Changelist" comment="添加根据容器编码查找容器的方法 配置规则添加自动添加模块类型 添加是否自动生成临时容器" /> | |
183 | 648 | <created>1567656449978</created> |
184 | 649 | <option name="number" value="Default" /> |
185 | 650 | <option name="presentableId" value="Default" /> |
... | ... | @@ -272,104 +737,35 @@ |
272 | 737 | <workItem from="1569748443357" duration="438000" /> |
273 | 738 | <workItem from="1569803438585" duration="13789000" /> |
274 | 739 | <workItem from="1570581146682" duration="9295000" /> |
275 | - </task> | |
276 | - <task id="LOCAL-00001" summary="修改添加物料时使用物料类别生成物料编码"> | |
277 | - <created>1567664306836</created> | |
278 | - <option name="number" value="00001" /> | |
279 | - <option name="presentableId" value="LOCAL-00001" /> | |
280 | - <option name="project" value="LOCAL" /> | |
281 | - <updated>1567664306836</updated> | |
282 | - </task> | |
283 | - <task id="LOCAL-00002" summary="修改添加物料时使用物料类别生成物料编码"> | |
284 | - <created>1567936901056</created> | |
285 | - <option name="number" value="00002" /> | |
286 | - <option name="presentableId" value="LOCAL-00002" /> | |
287 | - <option name="project" value="LOCAL" /> | |
288 | - <updated>1567936901056</updated> | |
289 | - </task> | |
290 | - <task id="LOCAL-00003" summary="修改质检页面、添加完成质检"> | |
291 | - <created>1568025230030</created> | |
292 | - <option name="number" value="00003" /> | |
293 | - <option name="presentableId" value="LOCAL-00003" /> | |
294 | - <option name="project" value="LOCAL" /> | |
295 | - <updated>1568025230030</updated> | |
296 | - </task> | |
297 | - <task id="LOCAL-00004" summary="修改质检页面、添加完成质检"> | |
298 | - <created>1568110494128</created> | |
299 | - <option name="number" value="00004" /> | |
300 | - <option name="presentableId" value="LOCAL-00004" /> | |
301 | - <option name="project" value="LOCAL" /> | |
302 | - <updated>1568110494128</updated> | |
303 | - </task> | |
304 | - <task id="LOCAL-00005" summary="修复入库质检请求地址冲突"> | |
305 | - <created>1568162392627</created> | |
306 | - <option name="number" value="00005" /> | |
307 | - <option name="presentableId" value="LOCAL-00005" /> | |
308 | - <option name="project" value="LOCAL" /> | |
309 | - <updated>1568162392627</updated> | |
310 | - </task> | |
311 | - <task id="LOCAL-00006" summary="添加入库单打印"> | |
312 | - <created>1568174134623</created> | |
313 | - <option name="number" value="00006" /> | |
314 | - <option name="presentableId" value="LOCAL-00006" /> | |
315 | - <option name="project" value="LOCAL" /> | |
316 | - <updated>1568174134623</updated> | |
317 | - </task> | |
318 | - <task id="LOCAL-00007" summary="修改入库单审核移动到入库单头表"> | |
319 | - <created>1568186231357</created> | |
320 | - <option name="number" value="00007" /> | |
321 | - <option name="presentableId" value="LOCAL-00007" /> | |
322 | - <option name="project" value="LOCAL" /> | |
323 | - <updated>1568186231357</updated> | |
324 | - </task> | |
325 | - <task id="LOCAL-00008" summary="修改任务完成更新库位的错误"> | |
326 | - <created>1568191139437</created> | |
327 | - <option name="number" value="00008" /> | |
328 | - <option name="presentableId" value="LOCAL-00008" /> | |
329 | - <option name="project" value="LOCAL" /> | |
330 | - <updated>1568191139437</updated> | |
331 | - </task> | |
332 | - <task id="LOCAL-00009" summary="修改入库类型自动判断"> | |
333 | - <created>1568259182874</created> | |
334 | - <option name="number" value="00009" /> | |
335 | - <option name="presentableId" value="LOCAL-00009" /> | |
336 | - <option name="project" value="LOCAL" /> | |
337 | - <updated>1568259182874</updated> | |
338 | - </task> | |
339 | - <task id="LOCAL-00010" summary="修改入库单页面"> | |
340 | - <created>1568281128408</created> | |
341 | - <option name="number" value="00010" /> | |
342 | - <option name="presentableId" value="LOCAL-00010" /> | |
343 | - <option name="project" value="LOCAL" /> | |
344 | - <updated>1568281128408</updated> | |
345 | - </task> | |
346 | - <task id="LOCAL-00011" summary="修改入库单页面,入库单审核,质检页面后台跳转接口"> | |
347 | - <created>1568616697584</created> | |
348 | - <option name="number" value="00011" /> | |
349 | - <option name="presentableId" value="LOCAL-00011" /> | |
350 | - <option name="project" value="LOCAL" /> | |
351 | - <updated>1568616697584</updated> | |
352 | - </task> | |
353 | - <task id="LOCAL-00012" summary="修改 入库收货,生成上架任务自动执行定位"> | |
354 | - <created>1568692224269</created> | |
355 | - <option name="number" value="00012" /> | |
356 | - <option name="presentableId" value="LOCAL-00012" /> | |
357 | - <option name="project" value="LOCAL" /> | |
358 | - <updated>1568692224269</updated> | |
359 | - </task> | |
360 | - <task id="LOCAL-00013" summary="修复商品管理、物料类别种bug"> | |
361 | - <created>1568784920330</created> | |
362 | - <option name="number" value="00013" /> | |
363 | - <option name="presentableId" value="LOCAL-00013" /> | |
364 | - <option name="project" value="LOCAL" /> | |
365 | - <updated>1568784920330</updated> | |
366 | - </task> | |
367 | - <task id="LOCAL-00014" summary="修改入库明细添加加载定位规则的错误"> | |
368 | - <created>1568788287608</created> | |
369 | - <option name="number" value="00014" /> | |
370 | - <option name="presentableId" value="LOCAL-00014" /> | |
371 | - <option name="project" value="LOCAL" /> | |
372 | - <updated>1568788287608</updated> | |
740 | + <workItem from="1571185601359" duration="15893000" /> | |
741 | + <workItem from="1571273749726" duration="10559000" /> | |
742 | + <workItem from="1571358765147" duration="13125000" /> | |
743 | + <workItem from="1571618321321" duration="24837000" /> | |
744 | + <workItem from="1571704409088" duration="5386000" /> | |
745 | + <workItem from="1571791080420" duration="2000" /> | |
746 | + <workItem from="1571791109916" duration="12667000" /> | |
747 | + <workItem from="1571877371520" duration="18025000" /> | |
748 | + <workItem from="1571909533980" duration="1083000" /> | |
749 | + <workItem from="1571963848874" duration="13664000" /> | |
750 | + <workItem from="1572222704814" duration="8052000" /> | |
751 | + <workItem from="1572309302624" duration="19352000" /> | |
752 | + <workItem from="1572396103535" duration="16947000" /> | |
753 | + <workItem from="1572481930051" duration="8552000" /> | |
754 | + <workItem from="1572493319144" duration="8880000" /> | |
755 | + <workItem from="1572568169800" duration="13626000" /> | |
756 | + <workItem from="1572827775923" duration="16176000" /> | |
757 | + <workItem from="1572913575221" duration="1583000" /> | |
758 | + <workItem from="1573605927642" duration="3763000" /> | |
759 | + <workItem from="1573692874284" duration="4508000" /> | |
760 | + <workItem from="1573777839143" duration="4335000" /> | |
761 | + <workItem from="1573796767441" duration="11890000" /> | |
762 | + <workItem from="1574037819650" duration="15257000" /> | |
763 | + <workItem from="1574123142144" duration="23459000" /> | |
764 | + <workItem from="1574209886131" duration="15642000" /> | |
765 | + <workItem from="1574296268709" duration="15155000" /> | |
766 | + <workItem from="1574382813105" duration="7331000" /> | |
767 | + <workItem from="1574416919078" duration="1230000" /> | |
768 | + <workItem from="1574642048568" duration="282000" /> | |
373 | 769 | </task> |
374 | 770 | <task id="LOCAL-00015" summary="添加入库质检行内编辑"> |
375 | 771 | <created>1568857387442</created> |
... | ... | @@ -511,9 +907,296 @@ |
511 | 907 | <option name="project" value="LOCAL" /> |
512 | 908 | <updated>1570582333467</updated> |
513 | 909 | </task> |
514 | - <option name="localTasksCounter" value="35" /> | |
910 | + <task id="LOCAL-00035" summary="wcs接口修改"> | |
911 | + <created>1571122379988</created> | |
912 | + <option name="number" value="00035" /> | |
913 | + <option name="presentableId" value="LOCAL-00035" /> | |
914 | + <option name="project" value="LOCAL" /> | |
915 | + <updated>1571122379988</updated> | |
916 | + </task> | |
917 | + <task id="LOCAL-00036" summary="页面格式和排版更改"> | |
918 | + <created>1571207162953</created> | |
919 | + <option name="number" value="00036" /> | |
920 | + <option name="presentableId" value="LOCAL-00036" /> | |
921 | + <option name="project" value="LOCAL" /> | |
922 | + <updated>1571207162954</updated> | |
923 | + </task> | |
924 | + <task id="LOCAL-00037" summary="接口地址修改,入库生成任务时字段添加"> | |
925 | + <created>1571214245114</created> | |
926 | + <option name="number" value="00037" /> | |
927 | + <option name="presentableId" value="LOCAL-00037" /> | |
928 | + <option name="project" value="LOCAL" /> | |
929 | + <updated>1571214245114</updated> | |
930 | + </task> | |
931 | + <task id="LOCAL-00038" summary="常量代替数字"> | |
932 | + <created>1571648535594</created> | |
933 | + <option name="number" value="00038" /> | |
934 | + <option name="presentableId" value="LOCAL-00038" /> | |
935 | + <option name="project" value="LOCAL" /> | |
936 | + <updated>1571648535594</updated> | |
937 | + </task> | |
938 | + <task id="LOCAL-00039" summary="复制角色,字典数据,菜单"> | |
939 | + <created>1571825499862</created> | |
940 | + <option name="number" value="00039" /> | |
941 | + <option name="presentableId" value="LOCAL-00039" /> | |
942 | + <option name="project" value="LOCAL" /> | |
943 | + <updated>1571825499862</updated> | |
944 | + </task> | |
945 | + <task id="LOCAL-00040" summary="复制流程,规则配置,波次,菜单"> | |
946 | + <created>1571886888136</created> | |
947 | + <option name="number" value="00040" /> | |
948 | + <option name="presentableId" value="LOCAL-00040" /> | |
949 | + <option name="project" value="LOCAL" /> | |
950 | + <updated>1571886888136</updated> | |
951 | + </task> | |
952 | + <task id="LOCAL-00041" summary="修改masada分支"> | |
953 | + <created>1571973935036</created> | |
954 | + <option name="number" value="00041" /> | |
955 | + <option name="presentableId" value="LOCAL-00041" /> | |
956 | + <option name="project" value="LOCAL" /> | |
957 | + <updated>1571973935037</updated> | |
958 | + </task> | |
959 | + <task id="LOCAL-00042" summary="修改权限"> | |
960 | + <created>1571985219873</created> | |
961 | + <option name="number" value="00042" /> | |
962 | + <option name="presentableId" value="LOCAL-00042" /> | |
963 | + <option name="project" value="LOCAL" /> | |
964 | + <updated>1571985219873</updated> | |
965 | + </task> | |
966 | + <task id="LOCAL-00043" summary="界面修改"> | |
967 | + <created>1572259123124</created> | |
968 | + <option name="number" value="00043" /> | |
969 | + <option name="presentableId" value="LOCAL-00043" /> | |
970 | + <option name="project" value="LOCAL" /> | |
971 | + <updated>1572259123124</updated> | |
972 | + </task> | |
973 | + <task id="LOCAL-00044" summary="修改权限"> | |
974 | + <created>1572318327154</created> | |
975 | + <option name="number" value="00044" /> | |
976 | + <option name="presentableId" value="LOCAL-00044" /> | |
977 | + <option name="project" value="LOCAL" /> | |
978 | + <updated>1572318327154</updated> | |
979 | + </task> | |
980 | + <task id="LOCAL-00045" summary="添加复制仓库时,复制用户仓库关系表"> | |
981 | + <created>1572319632042</created> | |
982 | + <option name="number" value="00045" /> | |
983 | + <option name="presentableId" value="LOCAL-00045" /> | |
984 | + <option name="project" value="LOCAL" /> | |
985 | + <updated>1572319632042</updated> | |
986 | + </task> | |
987 | + <task id="LOCAL-00046" summary="优化库位和容器的插入功能"> | |
988 | + <created>1572339639431</created> | |
989 | + <option name="number" value="00046" /> | |
990 | + <option name="presentableId" value="LOCAL-00046" /> | |
991 | + <option name="project" value="LOCAL" /> | |
992 | + <updated>1572339639431</updated> | |
993 | + </task> | |
994 | + <task id="LOCAL-00047" summary="界面修改"> | |
995 | + <created>1572404247104</created> | |
996 | + <option name="number" value="00047" /> | |
997 | + <option name="presentableId" value="LOCAL-00047" /> | |
998 | + <option name="project" value="LOCAL" /> | |
999 | + <updated>1572404247104</updated> | |
1000 | + </task> | |
1001 | + <task id="LOCAL-00048" summary="界面修改"> | |
1002 | + <created>1572430513551</created> | |
1003 | + <option name="number" value="00048" /> | |
1004 | + <option name="presentableId" value="LOCAL-00048" /> | |
1005 | + <option name="project" value="LOCAL" /> | |
1006 | + <updated>1572430513551</updated> | |
1007 | + </task> | |
1008 | + <task id="LOCAL-00049" summary="界面修改"> | |
1009 | + <created>1572485193959</created> | |
1010 | + <option name="number" value="00049" /> | |
1011 | + <option name="presentableId" value="LOCAL-00049" /> | |
1012 | + <option name="project" value="LOCAL" /> | |
1013 | + <updated>1572485193959</updated> | |
1014 | + </task> | |
1015 | + <task id="LOCAL-00050" summary="修改界面以及删除物料如果有库存无法删除的修改"> | |
1016 | + <created>1572514806738</created> | |
1017 | + <option name="number" value="00050" /> | |
1018 | + <option name="presentableId" value="LOCAL-00050" /> | |
1019 | + <option name="project" value="LOCAL" /> | |
1020 | + <updated>1572514806739</updated> | |
1021 | + </task> | |
1022 | + <task id="LOCAL-00051" summary="物料单位转换"> | |
1023 | + <created>1572521475402</created> | |
1024 | + <option name="number" value="00051" /> | |
1025 | + <option name="presentableId" value="LOCAL-00051" /> | |
1026 | + <option name="project" value="LOCAL" /> | |
1027 | + <updated>1572521475402</updated> | |
1028 | + </task> | |
1029 | + <task id="LOCAL-00052" summary="模糊查询"> | |
1030 | + <created>1572592205859</created> | |
1031 | + <option name="number" value="00052" /> | |
1032 | + <option name="presentableId" value="LOCAL-00052" /> | |
1033 | + <option name="project" value="LOCAL" /> | |
1034 | + <updated>1572592205859</updated> | |
1035 | + </task> | |
1036 | + <task id="LOCAL-00053" summary="商品界面和货主界面修改"> | |
1037 | + <created>1572599577946</created> | |
1038 | + <option name="number" value="00053" /> | |
1039 | + <option name="presentableId" value="LOCAL-00053" /> | |
1040 | + <option name="project" value="LOCAL" /> | |
1041 | + <updated>1572599577946</updated> | |
1042 | + </task> | |
1043 | + <task id="LOCAL-00054" summary="任务抛异常"> | |
1044 | + <created>1572601218998</created> | |
1045 | + <option name="number" value="00054" /> | |
1046 | + <option name="presentableId" value="LOCAL-00054" /> | |
1047 | + <option name="project" value="LOCAL" /> | |
1048 | + <updated>1572601218998</updated> | |
1049 | + </task> | |
1050 | + <task id="LOCAL-00055" summary="wcs2接口修改"> | |
1051 | + <created>1572866228413</created> | |
1052 | + <option name="number" value="00055" /> | |
1053 | + <option name="presentableId" value="LOCAL-00055" /> | |
1054 | + <option name="project" value="LOCAL" /> | |
1055 | + <updated>1572866228414</updated> | |
1056 | + </task> | |
1057 | + <task id="LOCAL-00056" summary="合并分支"> | |
1058 | + <created>1573539697837</created> | |
1059 | + <option name="number" value="00056" /> | |
1060 | + <option name="presentableId" value="LOCAL-00056" /> | |
1061 | + <option name="project" value="LOCAL" /> | |
1062 | + <updated>1573539697837</updated> | |
1063 | + </task> | |
1064 | + <task id="LOCAL-00057" summary="合并分支"> | |
1065 | + <created>1573540779552</created> | |
1066 | + <option name="number" value="00057" /> | |
1067 | + <option name="presentableId" value="LOCAL-00057" /> | |
1068 | + <option name="project" value="LOCAL" /> | |
1069 | + <updated>1573540779553</updated> | |
1070 | + </task> | |
1071 | + <task id="LOCAL-00058" summary="修改货主显示"> | |
1072 | + <created>1573796464922</created> | |
1073 | + <option name="number" value="00058" /> | |
1074 | + <option name="presentableId" value="LOCAL-00058" /> | |
1075 | + <option name="project" value="LOCAL" /> | |
1076 | + <updated>1573796464922</updated> | |
1077 | + </task> | |
1078 | + <task id="LOCAL-00059" summary="jasperreport集成spring boot"> | |
1079 | + <created>1573809300737</created> | |
1080 | + <option name="number" value="00059" /> | |
1081 | + <option name="presentableId" value="LOCAL-00059" /> | |
1082 | + <option name="project" value="LOCAL" /> | |
1083 | + <updated>1573809300737</updated> | |
1084 | + </task> | |
1085 | + <task id="LOCAL-00060" summary="jasperreport集成spring boot,jasper文件,中文不显示"> | |
1086 | + <created>1574160540167</created> | |
1087 | + <option name="number" value="00060" /> | |
1088 | + <option name="presentableId" value="LOCAL-00060" /> | |
1089 | + <option name="project" value="LOCAL" /> | |
1090 | + <updated>1574160540169</updated> | |
1091 | + </task> | |
1092 | + <task id="LOCAL-00061" summary="方法移除"> | |
1093 | + <created>1574160598655</created> | |
1094 | + <option name="number" value="00061" /> | |
1095 | + <option name="presentableId" value="LOCAL-00061" /> | |
1096 | + <option name="project" value="LOCAL" /> | |
1097 | + <updated>1574160598656</updated> | |
1098 | + </task> | |
1099 | + <task id="LOCAL-00062" summary="pdf预览完成"> | |
1100 | + <created>1574210318480</created> | |
1101 | + <option name="number" value="00062" /> | |
1102 | + <option name="presentableId" value="LOCAL-00062" /> | |
1103 | + <option name="project" value="LOCAL" /> | |
1104 | + <updated>1574210318481</updated> | |
1105 | + </task> | |
1106 | + <task id="LOCAL-00063" summary="d多种格式导出"> | |
1107 | + <created>1574307636322</created> | |
1108 | + <option name="number" value="00063" /> | |
1109 | + <option name="presentableId" value="LOCAL-00063" /> | |
1110 | + <option name="project" value="LOCAL" /> | |
1111 | + <updated>1574307636322</updated> | |
1112 | + </task> | |
1113 | + <option name="localTasksCounter" value="64" /> | |
515 | 1114 | <servers /> |
516 | 1115 | </component> |
1116 | + <component name="TestHistory"> | |
1117 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 08h 58m 30s.xml"> | |
1118 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1119 | + </history-entry> | |
1120 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 08h 59m 24s.xml"> | |
1121 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1122 | + </history-entry> | |
1123 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 08h 59m 36s.xml"> | |
1124 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1125 | + </history-entry> | |
1126 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 09h 00m 55s.xml"> | |
1127 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1128 | + </history-entry> | |
1129 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 09h 01m 34s.xml"> | |
1130 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1131 | + </history-entry> | |
1132 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 09h 20m 43s.xml"> | |
1133 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1134 | + </history-entry> | |
1135 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 09h 21m 50s.xml"> | |
1136 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1137 | + </history-entry> | |
1138 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 11h 10m 05s.xml"> | |
1139 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1140 | + </history-entry> | |
1141 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 11h 11m 13s.xml"> | |
1142 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1143 | + </history-entry> | |
1144 | + <history-entry file="ServiceTest_jasper - 2019.11.19 at 11h 13m 12s.xml"> | |
1145 | + <configuration name="ServiceTest.jasper" configurationId="JUnit" /> | |
1146 | + </history-entry> | |
1147 | + </component> | |
1148 | + <component name="TimeTrackingManager"> | |
1149 | + <option name="totallyTimeSpent" value="324983000" /> | |
1150 | + </component> | |
1151 | + <component name="TodoView"> | |
1152 | + <todo-panel id="selected-file"> | |
1153 | + <is-autoscroll-to-source value="true" /> | |
1154 | + </todo-panel> | |
1155 | + <todo-panel id="all"> | |
1156 | + <are-packages-shown value="true" /> | |
1157 | + <is-autoscroll-to-source value="true" /> | |
1158 | + </todo-panel> | |
1159 | + </component> | |
1160 | + <component name="ToolWindowManager"> | |
1161 | + <frame x="-7" y="-7" width="1550" height="838" extended-state="6" /> | |
1162 | + <editor active="true" /> | |
1163 | + <layout> | |
1164 | + <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.22117962" /> | |
1165 | + <window_info id="Structure" order="1" side_tool="true" weight="0.25" /> | |
1166 | + <window_info id="Designer" order="2" /> | |
1167 | + <window_info id="Image Layers" order="3" /> | |
1168 | + <window_info id="Capture Tool" order="4" /> | |
1169 | + <window_info id="UI Designer" order="5" /> | |
1170 | + <window_info id="Favorites" order="6" side_tool="true" /> | |
1171 | + <window_info id="Web" order="7" side_tool="true" /> | |
1172 | + <window_info anchor="bottom" id="Message" order="0" /> | |
1173 | + <window_info anchor="bottom" id="Find" order="1" weight="0.3286119" /> | |
1174 | + <window_info anchor="bottom" id="Run" order="2" /> | |
1175 | + <window_info anchor="bottom" id="Debug" order="3" weight="0.47450426" /> | |
1176 | + <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" /> | |
1177 | + <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" /> | |
1178 | + <window_info anchor="bottom" id="TODO" order="6" weight="0.32904148" /> | |
1179 | + <window_info anchor="bottom" id="Spring" order="7" sideWeight="0.49865952" weight="0.3286119" /> | |
1180 | + <window_info anchor="bottom" id="Terminal" order="8" weight="0.3286119" /> | |
1181 | + <window_info anchor="bottom" id="Docker" order="9" show_stripe_button="false" /> | |
1182 | + <window_info anchor="bottom" id="Event Log" order="10" sideWeight="0.09115282" side_tool="true" weight="0.6489971" /> | |
1183 | + <window_info anchor="bottom" id="Messages" order="11" sideWeight="0.4978678" weight="0.3275488" /> | |
1184 | + <window_info anchor="bottom" id="Java Enterprise" order="12" sideWeight="0.49932975" weight="0.3286119" /> | |
1185 | + <window_info anchor="bottom" id="Database Changes" order="13" weight="0.32719547" /> | |
1186 | + <window_info anchor="bottom" id="Version Control" order="14" sideWeight="0.4978678" weight="0.04229935" /> | |
1187 | + <window_info active="true" anchor="bottom" id="Run Dashboard" order="15" sideWeight="0.9088472" visible="true" weight="0.4631728" /> | |
1188 | + <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" /> | |
1189 | + <window_info anchor="right" id="Ant Build" order="1" weight="0.25" /> | |
1190 | + <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" /> | |
1191 | + <window_info anchor="right" id="Maven" order="3" weight="0.32908848" /> | |
1192 | + <window_info anchor="right" id="Palette" order="4" /> | |
1193 | + <window_info anchor="right" id="Capture Analysis" order="5" /> | |
1194 | + <window_info anchor="right" id="Database" order="6" /> | |
1195 | + <window_info anchor="right" id="Palette	" order="7" /> | |
1196 | + <window_info anchor="right" id="Theme Preview" order="8" /> | |
1197 | + <window_info anchor="right" id="Bean Validation" order="9" /> | |
1198 | + </layout> | |
1199 | + </component> | |
517 | 1200 | <component name="TypeScriptGeneratedFilesManager"> |
518 | 1201 | <option name="version" value="1" /> |
519 | 1202 | </component> |
... | ... | @@ -523,41 +1206,90 @@ |
523 | 1206 | <entry key="MAIN"> |
524 | 1207 | <value> |
525 | 1208 | <State> |
526 | - <option name="COLUMN_ORDER" /> | |
1209 | + <option name="RECENTLY_FILTERED_USER_GROUPS"> | |
1210 | + <collection /> | |
1211 | + </option> | |
1212 | + <option name="RECENTLY_FILTERED_BRANCH_GROUPS"> | |
1213 | + <collection /> | |
1214 | + </option> | |
1215 | + <option name="FILTERS"> | |
1216 | + <map> | |
1217 | + <entry key="user"> | |
1218 | + <value> | |
1219 | + <list> | |
1220 | + <option value="mahuandong" /> | |
1221 | + </list> | |
1222 | + </value> | |
1223 | + </entry> | |
1224 | + </map> | |
1225 | + </option> | |
1226 | + <option name="COLUMN_ORDER"> | |
1227 | + <list> | |
1228 | + <option value="0" /> | |
1229 | + <option value="1" /> | |
1230 | + <option value="2" /> | |
1231 | + <option value="3" /> | |
1232 | + </list> | |
1233 | + </option> | |
527 | 1234 | </State> |
528 | 1235 | </value> |
529 | 1236 | </entry> |
530 | 1237 | </map> |
531 | 1238 | </option> |
1239 | + <option name="RECENT_FILTERS"> | |
1240 | + <map> | |
1241 | + <entry key="Branch"> | |
1242 | + <value> | |
1243 | + <list> | |
1244 | + <RecentGroup> | |
1245 | + <option name="FILTER_VALUES"> | |
1246 | + <option value="origin/develop" /> | |
1247 | + </option> | |
1248 | + </RecentGroup> | |
1249 | + </list> | |
1250 | + </value> | |
1251 | + </entry> | |
1252 | + <entry key="User"> | |
1253 | + <value> | |
1254 | + <list> | |
1255 | + <RecentGroup> | |
1256 | + <option name="FILTER_VALUES"> | |
1257 | + <option value="mahuandong" /> | |
1258 | + </option> | |
1259 | + </RecentGroup> | |
1260 | + </list> | |
1261 | + </value> | |
1262 | + </entry> | |
1263 | + </map> | |
1264 | + </option> | |
532 | 1265 | </component> |
533 | 1266 | <component name="VcsManagerConfiguration"> |
534 | - <option name="ADD_EXTERNAL_FILES_SILENTLY" value="true" /> | |
535 | - <MESSAGE value="修改入库单页面" /> | |
536 | - <MESSAGE value="修改入库单页面,入库单审核,质检页面后台跳转接口" /> | |
537 | - <MESSAGE value="修改 入库收货,生成上架任务自动执行定位" /> | |
538 | - <MESSAGE value="修复商品管理、物料类别种bug" /> | |
539 | - <MESSAGE value="修改入库明细添加加载定位规则的错误" /> | |
540 | - <MESSAGE value="添加入库质检行内编辑" /> | |
541 | - <MESSAGE value="行内编辑完成后更新数据库" /> | |
542 | - <MESSAGE value="修改质检登记使用bootstarp boot原生方法初始化" /> | |
543 | - <MESSAGE value="表单头创建时间添加默认创建时间 开始时间默认提前一周,结束时间默认当天" /> | |
544 | - <MESSAGE value="配置中所有页面添加重置按钮" /> | |
545 | - <MESSAGE value="收货添加定位、取消定位、取消组盘按钮" /> | |
546 | - <MESSAGE value="修改入库单数量使用BigDecimal类型,修改入库单添加、修改、物理类型添加和修改页面" /> | |
547 | - <MESSAGE value="修改物料管理中物料类型使用物料类别表,不在使用数据字典" /> | |
548 | - <MESSAGE value="修改波次主表、波次流程头表、波次流程明细页面" /> | |
549 | - <MESSAGE value="修改入库首选项修改添加模块为select" /> | |
550 | - <MESSAGE value="修改任务取消入库组盘状态不回滚,修改任务完成入库单状态不完成" /> | |
551 | - <MESSAGE value="添加自动生成容器编码" /> | |
552 | - <MESSAGE value="修改入库首选项页面,规则查询使用数据字典值,表格值显示修改" /> | |
553 | - <MESSAGE value="入库单添加重置按钮,入库单历史添加上游单号搜索" /> | |
554 | - <MESSAGE value="添加取消入库组盘时容器为临时容器,删除容器" /> | |
555 | - <MESSAGE value="出库完成时删除临时容器" /> | |
556 | - <MESSAGE value="修改容器新增时容器enable状态" /> | |
557 | - <MESSAGE value="修改入库组盘页面中任务类型的显示问题 修改任务完成不修改入库组盘状态的问题" /> | |
558 | - <MESSAGE value="添加根据code查询物料" /> | |
559 | 1267 | <MESSAGE value="添加根据容器编码查找容器的方法 配置规则添加自动添加模块类型 添加是否自动生成临时容器" /> |
560 | - <option name="LAST_COMMIT_MESSAGE" value="添加根据容器编码查找容器的方法 配置规则添加自动添加模块类型 添加是否自动生成临时容器" /> | |
1268 | + <MESSAGE value="wcs接口修改" /> | |
1269 | + <MESSAGE value="页面格式和排版更改" /> | |
1270 | + <MESSAGE value="接口地址修改,入库生成任务时字段添加" /> | |
1271 | + <MESSAGE value="常量代替数字" /> | |
1272 | + <MESSAGE value="复制角色,字典数据,菜单" /> | |
1273 | + <MESSAGE value="复制流程,规则配置,波次,菜单" /> | |
1274 | + <MESSAGE value="修改masada分支" /> | |
1275 | + <MESSAGE value="修改权限" /> | |
1276 | + <MESSAGE value="添加复制仓库时,复制用户仓库关系表" /> | |
1277 | + <MESSAGE value="优化库位和容器的插入功能" /> | |
1278 | + <MESSAGE value="界面修改" /> | |
1279 | + <MESSAGE value="修改界面以及删除物料如果有库存无法删除的修改" /> | |
1280 | + <MESSAGE value="物料单位转换" /> | |
1281 | + <MESSAGE value="模糊查询" /> | |
1282 | + <MESSAGE value="商品界面和货主界面修改" /> | |
1283 | + <MESSAGE value="任务抛异常" /> | |
1284 | + <MESSAGE value="wcs2接口修改" /> | |
1285 | + <MESSAGE value="合并分支" /> | |
1286 | + <MESSAGE value="修改货主显示" /> | |
1287 | + <MESSAGE value="jasperreport集成spring boot" /> | |
1288 | + <MESSAGE value="jasperreport集成spring boot,jasper文件,中文不显示" /> | |
1289 | + <MESSAGE value="方法移除" /> | |
1290 | + <MESSAGE value="pdf预览完成" /> | |
1291 | + <MESSAGE value="d多种格式导出" /> | |
1292 | + <option name="LAST_COMMIT_MESSAGE" value="d多种格式导出" /> | |
561 | 1293 | </component> |
562 | 1294 | <component name="XDebuggerManager"> |
563 | 1295 | <breakpoint-manager> |
... | ... | @@ -565,42 +1297,49 @@ |
565 | 1297 | <line-breakpoint enabled="true" type="java-line"> |
566 | 1298 | <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/bom/controller/BomHeaderController.java</url> |
567 | 1299 | <line>164</line> |
1300 | + <properties /> | |
568 | 1301 | <option name="timeStamp" value="24" /> |
569 | 1302 | </line-breakpoint> |
570 | 1303 | <line-breakpoint enabled="true" type="java-line"> |
571 | - <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/material/controller/MaterialController.java</url> | |
572 | - <line>150</line> | |
573 | - <option name="timeStamp" value="26" /> | |
574 | - </line-breakpoint> | |
575 | - <line-breakpoint enabled="true" type="java-line"> | |
576 | 1304 | <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/check/checkingRegister/controller/CheckingRegisterController.java</url> |
577 | - <line>174</line> | |
1305 | + <line>175</line> | |
1306 | + <properties /> | |
578 | 1307 | <option name="timeStamp" value="28" /> |
579 | 1308 | </line-breakpoint> |
580 | 1309 | <line-breakpoint enabled="true" type="java-line"> |
581 | - <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java</url> | |
582 | - <line>631</line> | |
583 | - <option name="timeStamp" value="48" /> | |
584 | - </line-breakpoint> | |
585 | - <line-breakpoint enabled="true" type="java-line"> | |
586 | 1310 | <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptContainerDetail/service/ReceiptContainerDetailServiceImpl.java</url> |
587 | - <line>56</line> | |
1311 | + <line>57</line> | |
1312 | + <properties /> | |
588 | 1313 | <option name="timeStamp" value="49" /> |
589 | 1314 | </line-breakpoint> |
590 | 1315 | <line-breakpoint enabled="true" type="java-line"> |
591 | 1316 | <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptContainerDetail/service/ReceiptContainerDetailServiceImpl.java</url> |
592 | - <line>84</line> | |
1317 | + <line>85</line> | |
1318 | + <properties /> | |
593 | 1319 | <option name="timeStamp" value="51" /> |
594 | 1320 | </line-breakpoint> |
595 | 1321 | <line-breakpoint enabled="true" type="java-line"> |
596 | - <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/statusFlow/controller/StatusFlowHeaderController.java</url> | |
597 | - <line>86</line> | |
598 | - <option name="timeStamp" value="57" /> | |
1322 | + <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/api/wcs/service/emptyOutHandle/EmptyOutHandleServiceImpl.java</url> | |
1323 | + <line>31</line> | |
1324 | + <properties /> | |
1325 | + <option name="timeStamp" value="63" /> | |
599 | 1326 | </line-breakpoint> |
600 | 1327 | <line-breakpoint enabled="true" type="java-line"> |
601 | - <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/check/checkingRegister/controller/CheckingRegisterController.java</url> | |
602 | - <line>145</line> | |
603 | - <option name="timeStamp" value="62" /> | |
1328 | + <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/api/wcs/service/overrideHandle/OverrideHandleServiceImpl.java</url> | |
1329 | + <line>108</line> | |
1330 | + <properties /> | |
1331 | + <option name="timeStamp" value="70" /> | |
1332 | + </line-breakpoint> | |
1333 | + <line-breakpoint enabled="true" type="java-line"> | |
1334 | + <url>jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.2.59/fastjson-1.2.59.jar!/com/alibaba/fastjson/JSONException.class</url> | |
1335 | + <properties /> | |
1336 | + <option name="timeStamp" value="71" /> | |
1337 | + </line-breakpoint> | |
1338 | + <line-breakpoint enabled="true" type="java-line"> | |
1339 | + <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/materialMultiple/controller/MaterialMultipleController.java</url> | |
1340 | + <line>105</line> | |
1341 | + <properties /> | |
1342 | + <option name="timeStamp" value="90" /> | |
604 | 1343 | </line-breakpoint> |
605 | 1344 | <line-breakpoint enabled="true" type="javascript"> |
606 | 1345 | <url>file://$PROJECT_DIR$/src/main/resources/templates/check/checkingRegister/checkingRegister.html</url> |
... | ... | @@ -617,6 +1356,7 @@ |
617 | 1356 | <watches-manager> |
618 | 1357 | <configuration name="SpringBootApplicationConfigurationType"> |
619 | 1358 | <watch expression="receiptDetailService.getById(receiptContainerDetail.getReceiptDetailId()).getLocatingRule()" language="JAVA" /> |
1359 | + <watch expression="dictDataList" /> | |
620 | 1360 | </configuration> |
621 | 1361 | </watches-manager> |
622 | 1362 | </component> |
... | ... | @@ -625,4 +1365,436 @@ |
625 | 1365 | <FILTER>com.huaheng.*</FILTER> |
626 | 1366 | </SUITE> |
627 | 1367 | </component> |
1368 | + <component name="editorHistoryManager"> | |
1369 | + <entry file="file://$PROJECT_DIR$/src/main/resources/application.yml"> | |
1370 | + <provider selected="true" editor-type-id="text-editor"> | |
1371 | + <state relative-caret-position="1023"> | |
1372 | + <caret line="72" column="10" lean-forward="true" selection-start-line="72" selection-start-column="10" selection-end-line="72" selection-end-column="10" /> | |
1373 | + </state> | |
1374 | + </provider> | |
1375 | + </entry> | |
1376 | + <entry file="jar://C:/Program Files (x86)/jdk1.9/src.zip!/java/lang/String.java"> | |
1377 | + <provider selected="true" editor-type-id="text-editor"> | |
1378 | + <state relative-caret-position="145"> | |
1379 | + <caret line="110" column="19" selection-start-line="110" selection-start-column="19" selection-end-line="110" selection-end-column="19" /> | |
1380 | + </state> | |
1381 | + </provider> | |
1382 | + </entry> | |
1383 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/sendMail/service/MailService.java"> | |
1384 | + <provider selected="true" editor-type-id="text-editor"> | |
1385 | + <state relative-caret-position="-460"> | |
1386 | + <caret line="6" column="17" selection-start-line="6" selection-start-column="17" selection-end-line="6" selection-end-column="17" /> | |
1387 | + </state> | |
1388 | + </provider> | |
1389 | + </entry> | |
1390 | + <entry file="file://$PROJECT_DIR$/src/main/resources/fonts/fonts.xml"> | |
1391 | + <provider selected="true" editor-type-id="text-editor"> | |
1392 | + <state> | |
1393 | + <caret selection-end-line="14" selection-end-column="15" /> | |
1394 | + </state> | |
1395 | + </provider> | |
1396 | + </entry> | |
1397 | + <entry file="file://$PROJECT_DIR$/pom.xml"> | |
1398 | + <provider editor-type-id="MavenHelperPluginDependencyAnalyzer" /> | |
1399 | + <provider selected="true" editor-type-id="text-editor"> | |
1400 | + <state relative-caret-position="800"> | |
1401 | + <caret line="281" column="21" lean-forward="true" selection-start-line="281" selection-start-column="21" selection-end-line="281" selection-end-column="21" /> | |
1402 | + </state> | |
1403 | + </provider> | |
1404 | + </entry> | |
1405 | + <entry file="file://$PROJECT_DIR$/src/main/resources/jasperreports_extension.properties"> | |
1406 | + <provider selected="true" editor-type-id="text-editor"> | |
1407 | + <state> | |
1408 | + <caret selection-end-line="1" selection-end-column="78" /> | |
1409 | + </state> | |
1410 | + </provider> | |
1411 | + </entry> | |
1412 | + <entry file="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context-support/5.1.5.RELEASE/spring-context-support-5.1.5.RELEASE.jar!/org/springframework/mail/SimpleMailMessage.class"> | |
1413 | + <provider selected="true" editor-type-id="text-editor"> | |
1414 | + <state relative-caret-position="145"> | |
1415 | + <caret line="14" column="13" selection-start-line="14" selection-start-column="13" selection-end-line="14" selection-end-column="13" /> | |
1416 | + </state> | |
1417 | + </provider> | |
1418 | + </entry> | |
1419 | + <entry file="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context-support/5.1.5.RELEASE/spring-context-support-5.1.5.RELEASE.jar!/org/springframework/mail/javamail/JavaMailSender.class"> | |
1420 | + <provider selected="true" editor-type-id="text-editor"> | |
1421 | + <state relative-caret-position="145"> | |
1422 | + <caret line="12" column="17" selection-start-line="12" selection-start-column="17" selection-end-line="12" selection-end-column="17" /> | |
1423 | + </state> | |
1424 | + </provider> | |
1425 | + </entry> | |
1426 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/sendMail/service/MailServiceImpl.java"> | |
1427 | + <provider selected="true" editor-type-id="text-editor"> | |
1428 | + <state relative-caret-position="750"> | |
1429 | + <caret line="91" column="40" selection-start-line="91" selection-start-column="40" selection-end-line="91" selection-end-column="40" /> | |
1430 | + </state> | |
1431 | + </provider> | |
1432 | + </entry> | |
1433 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/alarmLevel/controller/AlarmLevelController.java"> | |
1434 | + <provider selected="true" editor-type-id="text-editor"> | |
1435 | + <state relative-caret-position="286"> | |
1436 | + <caret line="147" column="73" selection-start-line="147" selection-start-column="73" selection-end-line="147" selection-end-column="73" /> | |
1437 | + </state> | |
1438 | + </provider> | |
1439 | + </entry> | |
1440 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/framework/jasper/JasperConfig.java" /> | |
1441 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/JasperExportManager.class"> | |
1442 | + <provider selected="true" editor-type-id="text-editor"> | |
1443 | + <state relative-caret-position="94"> | |
1444 | + <caret line="86" column="74" selection-start-line="86" selection-start-column="62" selection-end-line="86" selection-end-column="74" /> | |
1445 | + </state> | |
1446 | + </provider> | |
1447 | + </entry> | |
1448 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/report/jasper/controller/JasperController.java" /> | |
1449 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/export/ExporterInput.class"> | |
1450 | + <provider selected="true" editor-type-id="text-editor"> | |
1451 | + <state relative-caret-position="175"> | |
1452 | + <caret line="10" column="28" selection-start-line="10" selection-start-column="28" selection-end-line="10" selection-end-column="28" /> | |
1453 | + </state> | |
1454 | + </provider> | |
1455 | + </entry> | |
1456 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/export/PrintPartUnrollExporterInput.class"> | |
1457 | + <provider selected="true" editor-type-id="text-editor"> | |
1458 | + <state relative-caret-position="231"> | |
1459 | + <caret line="50" column="35" selection-start-line="50" selection-start-column="35" selection-end-line="50" selection-end-column="35" /> | |
1460 | + <folding> | |
1461 | + <element signature="e#2105#2106#0" expanded="true" /> | |
1462 | + <element signature="e#2142#2143#0" expanded="true" /> | |
1463 | + </folding> | |
1464 | + </state> | |
1465 | + </provider> | |
1466 | + </entry> | |
1467 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/export/JRXlsExporter.class"> | |
1468 | + <provider selected="true" editor-type-id="text-editor"> | |
1469 | + <state relative-caret-position="150"> | |
1470 | + <caret line="109" column="26" selection-start-line="109" selection-start-column="13" selection-end-line="109" selection-end-column="26" /> | |
1471 | + </state> | |
1472 | + </provider> | |
1473 | + </entry> | |
1474 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/ReportContext.class"> | |
1475 | + <provider selected="true" editor-type-id="text-editor"> | |
1476 | + <state relative-caret-position="131"> | |
1477 | + <caret line="9" column="17" selection-start-line="9" selection-start-column="17" selection-end-line="9" selection-end-column="17" /> | |
1478 | + </state> | |
1479 | + </provider> | |
1480 | + </entry> | |
1481 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/SimpleReportContext.class"> | |
1482 | + <provider selected="true" editor-type-id="text-editor"> | |
1483 | + <state relative-caret-position="-2"> | |
1484 | + <caret line="12" column="13" selection-start-line="12" selection-start-column="13" selection-end-line="12" selection-end-column="13" /> | |
1485 | + </state> | |
1486 | + </provider> | |
1487 | + </entry> | |
1488 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/report/excelReport/service/ExcelReportService.java"> | |
1489 | + <provider selected="true" editor-type-id="text-editor"> | |
1490 | + <state relative-caret-position="600"> | |
1491 | + <caret line="38" column="40" selection-start-line="38" selection-start-column="29" selection-end-line="38" selection-end-column="40" /> | |
1492 | + </state> | |
1493 | + </provider> | |
1494 | + </entry> | |
1495 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/JRVirtualizer.class"> | |
1496 | + <provider selected="true" editor-type-id="text-editor"> | |
1497 | + <state relative-caret-position="100"> | |
1498 | + <caret line="7" column="17" selection-start-line="7" selection-start-column="17" selection-end-line="7" selection-end-column="17" /> | |
1499 | + </state> | |
1500 | + </provider> | |
1501 | + </entry> | |
1502 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/fill/JRAbstractLRUVirtualizer.class"> | |
1503 | + <provider selected="true" editor-type-id="text-editor"> | |
1504 | + <state relative-caret-position="150"> | |
1505 | + <caret line="28" column="64" lean-forward="true" selection-start-line="28" selection-start-column="64" selection-end-line="28" selection-end-column="64" /> | |
1506 | + </state> | |
1507 | + </provider> | |
1508 | + </entry> | |
1509 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/fill/JRFileVirtualizer.class"> | |
1510 | + <provider selected="true" editor-type-id="text-editor"> | |
1511 | + <state relative-caret-position="150"> | |
1512 | + <caret line="22" column="52" lean-forward="true" selection-start-line="22" selection-start-column="39" selection-end-line="22" selection-end-column="63" /> | |
1513 | + </state> | |
1514 | + </provider> | |
1515 | + </entry> | |
1516 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/report/excelReport/controller/ExcelReportController.java"> | |
1517 | + <provider selected="true" editor-type-id="text-editor"> | |
1518 | + <state relative-caret-position="25"> | |
1519 | + <caret line="26" column="13" selection-start-line="26" selection-start-column="13" selection-end-line="26" selection-end-column="13" /> | |
1520 | + </state> | |
1521 | + </provider> | |
1522 | + </entry> | |
1523 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/common/utils/security/ShiroUtils.java"> | |
1524 | + <provider selected="true" editor-type-id="text-editor"> | |
1525 | + <state relative-caret-position="225"> | |
1526 | + <caret line="20" column="13" selection-start-line="20" selection-start-column="13" selection-end-line="20" selection-end-column="13" /> | |
1527 | + </state> | |
1528 | + </provider> | |
1529 | + </entry> | |
1530 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptHeader/controller/ReceiptHeaderController.java"> | |
1531 | + <provider selected="true" editor-type-id="text-editor"> | |
1532 | + <state relative-caret-position="225"> | |
1533 | + <caret line="76" column="56" lean-forward="true" selection-start-line="76" selection-start-column="56" selection-end-line="76" selection-end-column="56" /> | |
1534 | + </state> | |
1535 | + </provider> | |
1536 | + </entry> | |
1537 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/common/jasper/DocType.java"> | |
1538 | + <provider selected="true" editor-type-id="text-editor"> | |
1539 | + <state relative-caret-position="225"> | |
1540 | + <caret line="9" column="12" selection-start-line="9" selection-start-column="12" selection-end-line="9" selection-end-column="12" /> | |
1541 | + </state> | |
1542 | + </provider> | |
1543 | + </entry> | |
1544 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/common/jasper/DocTypeUtil.java"> | |
1545 | + <provider selected="true" editor-type-id="text-editor"> | |
1546 | + <state relative-caret-position="225"> | |
1547 | + <caret line="17" column="41" selection-start-line="17" selection-start-column="27" selection-end-line="17" selection-end-column="41" /> | |
1548 | + </state> | |
1549 | + </provider> | |
1550 | + </entry> | |
1551 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/JasperFillManager.class"> | |
1552 | + <provider selected="true" editor-type-id="text-editor"> | |
1553 | + <state relative-caret-position="146"> | |
1554 | + <caret line="249" column="30" selection-start-line="249" selection-start-column="30" selection-end-line="249" selection-end-column="30" /> | |
1555 | + </state> | |
1556 | + </provider> | |
1557 | + </entry> | |
1558 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/JRAbstractExporter.class"> | |
1559 | + <provider selected="true" editor-type-id="text-editor"> | |
1560 | + <state relative-caret-position="146"> | |
1561 | + <caret line="153" column="16" selection-start-line="153" selection-start-column="16" selection-end-line="153" selection-end-column="16" /> | |
1562 | + </state> | |
1563 | + </provider> | |
1564 | + </entry> | |
1565 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/export/SimpleExporterInput.class"> | |
1566 | + <provider selected="true" editor-type-id="text-editor"> | |
1567 | + <state relative-caret-position="146"> | |
1568 | + <caret line="25" column="11" selection-start-line="25" selection-start-column="11" selection-end-line="25" selection-end-column="11" /> | |
1569 | + </state> | |
1570 | + </provider> | |
1571 | + </entry> | |
1572 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/JREmptyDataSource.class"> | |
1573 | + <provider selected="true" editor-type-id="text-editor"> | |
1574 | + <state relative-caret-position="50"> | |
1575 | + <caret line="11" column="11" selection-start-line="11" selection-start-column="11" selection-end-line="11" selection-end-column="11" /> | |
1576 | + </state> | |
1577 | + </provider> | |
1578 | + </entry> | |
1579 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/data/JRBeanCollectionDataSource.class"> | |
1580 | + <provider selected="true" editor-type-id="text-editor"> | |
1581 | + <state relative-caret-position="-154"> | |
1582 | + <caret line="17" column="11" selection-start-line="17" selection-start-column="11" selection-end-line="17" selection-end-column="11" /> | |
1583 | + <folding> | |
1584 | + <element signature="e#540#541#0" expanded="true" /> | |
1585 | + <element signature="e#582#583#0" expanded="true" /> | |
1586 | + </folding> | |
1587 | + </state> | |
1588 | + </provider> | |
1589 | + </entry> | |
1590 | + <entry file="jar://$MAVEN_REPOSITORY$/net/sf/jasperreports/jasperreports/6.10.0/jasperreports-6.10.0.jar!/net/sf/jasperreports/engine/JRDataSource.class"> | |
1591 | + <provider selected="true" editor-type-id="text-editor"> | |
1592 | + <state relative-caret-position="100"> | |
1593 | + <caret line="7" column="17" selection-start-line="7" selection-start-column="17" selection-end-line="7" selection-end-column="17" /> | |
1594 | + </state> | |
1595 | + </provider> | |
1596 | + </entry> | |
1597 | + <entry file="jar://$MAVEN_REPOSITORY$/org/springframework/spring-web/5.1.5.RELEASE/spring-web-5.1.5.RELEASE.jar!/org/springframework/web/method/support/InvocableHandlerMethod.class"> | |
1598 | + <provider selected="true" editor-type-id="text-editor"> | |
1599 | + <state relative-caret-position="146"> | |
1600 | + <caret line="106" selection-start-line="106" selection-end-line="106" /> | |
1601 | + </state> | |
1602 | + </provider> | |
1603 | + </entry> | |
1604 | + <entry file="jar://C:/Program Files (x86)/jdk1.9/src.zip!/javax/sql/DataSource.java"> | |
1605 | + <provider selected="true" editor-type-id="text-editor"> | |
1606 | + <state relative-caret-position="146"> | |
1607 | + <caret line="76" column="17" selection-start-line="76" selection-start-column="17" selection-end-line="76" selection-end-column="17" /> | |
1608 | + </state> | |
1609 | + </provider> | |
1610 | + </entry> | |
1611 | + <entry file="file://$PROJECT_DIR$/mypage" /> | |
1612 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/jasper/JasperController.java"> | |
1613 | + <provider selected="true" editor-type-id="text-editor"> | |
1614 | + <state relative-caret-position="75"> | |
1615 | + <caret line="71" column="24" lean-forward="true" selection-start-line="71" selection-start-column="24" selection-end-line="71" selection-end-column="24" /> | |
1616 | + <folding> | |
1617 | + <element signature="imports" expanded="true" /> | |
1618 | + </folding> | |
1619 | + </state> | |
1620 | + </provider> | |
1621 | + </entry> | |
1622 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/common/jasper/JasperreportUtils.java"> | |
1623 | + <provider selected="true" editor-type-id="text-editor"> | |
1624 | + <state relative-caret-position="7000"> | |
1625 | + <caret line="303" column="30" selection-start-line="303" selection-start-column="27" selection-end-line="303" selection-end-column="30" /> | |
1626 | + <folding> | |
1627 | + <element signature="imports" expanded="true" /> | |
1628 | + </folding> | |
1629 | + </state> | |
1630 | + </provider> | |
1631 | + </entry> | |
1632 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentHeader/controller/ShipmentHeaderController.java"> | |
1633 | + <provider selected="true" editor-type-id="text-editor"> | |
1634 | + <state relative-caret-position="-4818"> | |
1635 | + <caret line="42" column="13" selection-start-line="42" selection-start-column="13" selection-end-line="42" selection-end-column="13" /> | |
1636 | + </state> | |
1637 | + </provider> | |
1638 | + </entry> | |
1639 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shippingCombination/controller/ShippingCombinationController.java"> | |
1640 | + <provider selected="true" editor-type-id="text-editor"> | |
1641 | + <state relative-caret-position="182"> | |
1642 | + <caret line="153" column="93" selection-start-line="153" selection-start-column="93" selection-end-line="153" selection-end-column="93" /> | |
1643 | + </state> | |
1644 | + </provider> | |
1645 | + </entry> | |
1646 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderService.java"> | |
1647 | + <provider selected="true" editor-type-id="text-editor"> | |
1648 | + <state relative-caret-position="132"> | |
1649 | + <caret line="19" column="28" selection-start-line="19" selection-start-column="28" selection-end-line="19" selection-end-column="28" /> | |
1650 | + </state> | |
1651 | + </provider> | |
1652 | + </entry> | |
1653 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceService.java"> | |
1654 | + <provider selected="true" editor-type-id="text-editor"> | |
1655 | + <state relative-caret-position="159"> | |
1656 | + <caret line="12" column="26" selection-start-line="12" selection-start-column="26" selection-end-line="12" selection-end-column="26" /> | |
1657 | + </state> | |
1658 | + </provider> | |
1659 | + </entry> | |
1660 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentDetail/controller/ShipmentDetailController.java"> | |
1661 | + <provider selected="true" editor-type-id="text-editor"> | |
1662 | + <state relative-caret-position="168"> | |
1663 | + <caret line="191" selection-start-line="191" selection-end-line="191" /> | |
1664 | + </state> | |
1665 | + </provider> | |
1666 | + </entry> | |
1667 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java"> | |
1668 | + <provider selected="true" editor-type-id="text-editor"> | |
1669 | + <state relative-caret-position="192"> | |
1670 | + <caret line="54" selection-start-line="54" selection-end-line="54" /> | |
1671 | + </state> | |
1672 | + </provider> | |
1673 | + </entry> | |
1674 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java"> | |
1675 | + <provider selected="true" editor-type-id="text-editor"> | |
1676 | + <state relative-caret-position="232"> | |
1677 | + <caret line="104" selection-start-line="104" selection-end-line="104" /> | |
1678 | + </state> | |
1679 | + </provider> | |
1680 | + </entry> | |
1681 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/controller/ShipmentContainerHeaderController.java"> | |
1682 | + <provider selected="true" editor-type-id="text-editor"> | |
1683 | + <state relative-caret-position="300"> | |
1684 | + <caret line="36" column="13" selection-start-line="36" selection-start-column="13" selection-end-line="36" selection-end-column="13" /> | |
1685 | + </state> | |
1686 | + </provider> | |
1687 | + </entry> | |
1688 | + <entry file="file://$PROJECT_DIR$/src/main/resources/templates/config/shipmentType/add.html"> | |
1689 | + <provider selected="true" editor-type-id="text-editor"> | |
1690 | + <state relative-caret-position="1200"> | |
1691 | + <caret line="48" column="144" selection-start-line="48" selection-start-column="130" selection-end-line="48" selection-end-column="144" /> | |
1692 | + </state> | |
1693 | + </provider> | |
1694 | + </entry> | |
1695 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/statusFlow/service/StatusFlowHeaderService.java"> | |
1696 | + <provider selected="true" editor-type-id="text-editor"> | |
1697 | + <state relative-caret-position="325"> | |
1698 | + <caret line="25" column="63" selection-start-line="25" selection-start-column="53" selection-end-line="25" selection-end-column="63" /> | |
1699 | + </state> | |
1700 | + </provider> | |
1701 | + </entry> | |
1702 | + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/shipmentType/controller/shipmentTypeController.java"> | |
1703 | + <provider selected="true" editor-type-id="text-editor"> | |
1704 | + <state relative-caret-position="2175"> | |
1705 | + <caret line="118" column="19" selection-start-line="118" selection-start-column="19" selection-end-line="118" selection-end-column="19" /> | |
1706 | + </state> | |
1707 | + </provider> | |
1708 | + </entry> | |
1709 | + <entry file="file://$PROJECT_DIR$/src/main/resources/templates/shipment/shipmentContainerHeader/shipmentContainerHeader.html"> | |
1710 | + <provider selected="true" editor-type-id="text-editor"> | |
1711 | + <state relative-caret-position="100"> | |
1712 | + <caret line="16" column="72" selection-start-line="16" selection-start-column="72" selection-end-line="16" selection-end-column="72" /> | |
1713 | + </state> | |
1714 | + </provider> | |
1715 | + </entry> | |
1716 | + <entry file="file://$PROJECT_DIR$/src/main/resources/templates/config/shipmentType/edit.html"> | |
1717 | + <provider selected="true" editor-type-id="text-editor"> | |
1718 | + <state relative-caret-position="118"> | |
1719 | + <caret line="63" column="37" lean-forward="true" selection-start-line="63" selection-start-column="37" selection-end-line="63" selection-end-column="37" /> | |
1720 | + </state> | |
1721 | + </provider> | |
1722 | + </entry> | |
1723 | + </component> | |
1724 | + <component name="masterDetails"> | |
1725 | + <states> | |
1726 | + <state key="ArtifactsStructureConfigurable.UI"> | |
1727 | + <settings> | |
1728 | + <artifact-editor /> | |
1729 | + <splitter-proportions> | |
1730 | + <option name="proportions"> | |
1731 | + <list> | |
1732 | + <option value="0.2" /> | |
1733 | + </list> | |
1734 | + </option> | |
1735 | + </splitter-proportions> | |
1736 | + </settings> | |
1737 | + </state> | |
1738 | + <state key="FacetStructureConfigurable.UI"> | |
1739 | + <settings> | |
1740 | + <last-edited>Spring</last-edited> | |
1741 | + <splitter-proportions> | |
1742 | + <option name="proportions"> | |
1743 | + <list> | |
1744 | + <option value="0.2" /> | |
1745 | + </list> | |
1746 | + </option> | |
1747 | + </splitter-proportions> | |
1748 | + </settings> | |
1749 | + </state> | |
1750 | + <state key="GlobalLibrariesConfigurable.UI"> | |
1751 | + <settings> | |
1752 | + <splitter-proportions> | |
1753 | + <option name="proportions"> | |
1754 | + <list> | |
1755 | + <option value="0.2" /> | |
1756 | + </list> | |
1757 | + </option> | |
1758 | + </splitter-proportions> | |
1759 | + </settings> | |
1760 | + </state> | |
1761 | + <state key="JdkListConfigurable.UI"> | |
1762 | + <settings> | |
1763 | + <last-edited>1.8</last-edited> | |
1764 | + <splitter-proportions> | |
1765 | + <option name="proportions"> | |
1766 | + <list> | |
1767 | + <option value="0.2" /> | |
1768 | + </list> | |
1769 | + </option> | |
1770 | + </splitter-proportions> | |
1771 | + </settings> | |
1772 | + </state> | |
1773 | + <state key="ModuleStructureConfigurable.UI"> | |
1774 | + <settings> | |
1775 | + <last-edited>wms2</last-edited> | |
1776 | + <splitter-proportions> | |
1777 | + <option name="proportions"> | |
1778 | + <list> | |
1779 | + <option value="0.2" /> | |
1780 | + <option value="0.6" /> | |
1781 | + </list> | |
1782 | + </option> | |
1783 | + </splitter-proportions> | |
1784 | + </settings> | |
1785 | + </state> | |
1786 | + <state key="ProjectLibrariesConfigurable.UI"> | |
1787 | + <settings> | |
1788 | + <last-edited>fonts-1.0.0</last-edited> | |
1789 | + <splitter-proportions> | |
1790 | + <option name="proportions"> | |
1791 | + <list> | |
1792 | + <option value="0.2" /> | |
1793 | + </list> | |
1794 | + </option> | |
1795 | + </splitter-proportions> | |
1796 | + </settings> | |
1797 | + </state> | |
1798 | + </states> | |
1799 | + </component> | |
628 | 1800 | </project> |
629 | 1801 | \ No newline at end of file |
... | ... |
pom.xml
... | ... | @@ -249,6 +249,43 @@ |
249 | 249 | <version>3.17</version> |
250 | 250 | </dependency> |
251 | 251 | |
252 | + <!--jasperreports--> | |
253 | + <dependency> | |
254 | + <groupId>net.sf.jasperreports</groupId> | |
255 | + <artifactId>jasperreports</artifactId> | |
256 | + <version>6.10.0</version> | |
257 | + </dependency> | |
258 | + <dependency> | |
259 | + <groupId>net.sf.jasperreports</groupId> | |
260 | + <artifactId>jasperreports-fonts</artifactId> | |
261 | + <version>6.10.0</version> | |
262 | + </dependency> | |
263 | + <dependency> | |
264 | + <groupId>com.itextpdf</groupId> | |
265 | + <artifactId>itextpdf</artifactId> | |
266 | + <version>5.5.7</version> | |
267 | + </dependency> | |
268 | + <dependency> | |
269 | + <groupId>com.itextpdf</groupId> | |
270 | + <artifactId>itext-pdfa</artifactId> | |
271 | + <version>5.5.7</version> | |
272 | + </dependency> | |
273 | + <dependency> | |
274 | + <groupId>com.itextpdf</groupId> | |
275 | + <artifactId>itext-asian</artifactId> | |
276 | + <version>5.2.0</version> | |
277 | + </dependency> | |
278 | + <dependency> | |
279 | + <groupId>cn.lesper</groupId> | |
280 | + <artifactId>iTextAsian</artifactId> | |
281 | + <version>3.0</version> | |
282 | + </dependency> | |
283 | + <dependency> | |
284 | + <groupId>org.codehaus.groovy</groupId> | |
285 | + <artifactId>groovy-all</artifactId> | |
286 | + <version>2.4.11</version> | |
287 | + </dependency> | |
288 | + | |
252 | 289 | <!--activiti工作流--> |
253 | 290 | <!--<dependency>--> |
254 | 291 | <!--<groupId>org.activiti</groupId>--> |
... | ... |
src/main/java/com/huaheng/api/general/controller/BasicDataApi.java
... | ... | @@ -5,6 +5,7 @@ import com.huaheng.framework.aspectj.lang.annotation.Log; |
5 | 5 | import com.huaheng.framework.aspectj.lang.constant.BusinessType; |
6 | 6 | import com.huaheng.framework.web.controller.BaseController; |
7 | 7 | import com.huaheng.framework.web.domain.AjaxResult; |
8 | +import com.huaheng.pc.config.containerCapacity.domain.ContainerCapacity; | |
8 | 9 | import com.huaheng.pc.config.customer.domain.Customer; |
9 | 10 | import com.huaheng.pc.config.material.domain.Material; |
10 | 11 | import com.huaheng.pc.config.supplier.domain.Supplier; |
... | ... | @@ -106,6 +107,18 @@ public class BasicDataApi extends BaseController { |
106 | 107 | } |
107 | 108 | |
108 | 109 | /** |
110 | + * 同步容器容量 | |
111 | + */ | |
112 | + @Log(title = "容器容量添加", action = BusinessType.INSERT) | |
113 | + @PostMapping("/containerCapacity") | |
114 | + @ApiOperation("容器容量添加公共接口") | |
115 | + @ResponseBody | |
116 | + public AjaxResult containerCapacityApi(@RequestBody ContainerCapacity containerCapacity){ | |
117 | + AjaxResult ajaxResult = basicDataApiService.containerCapacity(containerCapacity); | |
118 | + return ajaxResult; | |
119 | + } | |
120 | + | |
121 | + /** | |
109 | 122 | * 同步供应商档案 |
110 | 123 | */ |
111 | 124 | @Log(title = "供应商档案添加", action = BusinessType.INSERT) |
... | ... |
src/main/java/com/huaheng/api/general/controller/ReceiptApi.java
0 → 100644
1 | +package com.huaheng.api.general.controller; | |
2 | + | |
3 | + | |
4 | +import com.huaheng.api.general.domain.ReceiptDomain; | |
5 | +import com.huaheng.api.general.service.ReceiptApiService; | |
6 | +import com.huaheng.framework.aspectj.lang.annotation.Log; | |
7 | +import com.huaheng.framework.aspectj.lang.constant.BusinessType; | |
8 | +import com.huaheng.framework.web.domain.AjaxResult; | |
9 | +import io.swagger.annotations.Api; | |
10 | +import io.swagger.annotations.ApiOperation; | |
11 | +import org.springframework.web.bind.annotation.*; | |
12 | + | |
13 | +import javax.annotation.Resource; | |
14 | + | |
15 | +@RestController | |
16 | +@RequestMapping("/api/receiptApi") | |
17 | +@Api(tags = {"receipt"}, description = "入库单接口") | |
18 | +public class ReceiptApi { | |
19 | + | |
20 | + @Resource | |
21 | + private ReceiptApiService receiptApiService; | |
22 | + | |
23 | + | |
24 | + /** | |
25 | + * 同步入库单 | |
26 | + */ | |
27 | + @Log(title = "入库单添加", action = BusinessType.INSERT) | |
28 | + @PostMapping("/receipt") | |
29 | + @ApiOperation("入库单添加公共接口") | |
30 | + @ResponseBody | |
31 | + public AjaxResult Receipt(@RequestBody ReceiptDomain receiptDomain) | |
32 | + { | |
33 | + AjaxResult ajaxResult = receiptApiService.receipt(receiptDomain); | |
34 | + return ajaxResult; | |
35 | + } | |
36 | + | |
37 | +} | |
... | ... |
src/main/java/com/huaheng/api/general/controller/ShipmentApi.java
0 → 100644
1 | +package com.huaheng.api.general.controller; | |
2 | + | |
3 | + | |
4 | +import com.huaheng.api.general.domain.ShipmentDomain; | |
5 | +import com.huaheng.api.general.service.ShipmentApiService; | |
6 | +import com.huaheng.framework.aspectj.lang.annotation.Log; | |
7 | +import com.huaheng.framework.aspectj.lang.constant.BusinessType; | |
8 | +import com.huaheng.framework.web.domain.AjaxResult; | |
9 | +import io.swagger.annotations.Api; | |
10 | +import io.swagger.annotations.ApiOperation; | |
11 | +import org.springframework.web.bind.annotation.*; | |
12 | + | |
13 | +import javax.annotation.Resource; | |
14 | + | |
15 | +@RestController | |
16 | +@RequestMapping("/api/shipmentApi") | |
17 | +@Api(tags = {"shipment"}, description = "出库单接口") | |
18 | +public class ShipmentApi { | |
19 | + | |
20 | + @Resource | |
21 | + private ShipmentApiService shipmentApiService; | |
22 | + | |
23 | + /** | |
24 | + * 同步出库单 | |
25 | + */ | |
26 | + @Log(title = "出库单添加", action = BusinessType.INSERT) | |
27 | + @PostMapping("/shipment") | |
28 | + @ApiOperation("出库单添加公共接口") | |
29 | + @ResponseBody | |
30 | + public AjaxResult Shipment(@RequestBody ShipmentDomain shipmentDomain) | |
31 | + { | |
32 | + AjaxResult ajaxResult = shipmentApiService.shipment(shipmentDomain); | |
33 | + return ajaxResult; | |
34 | + } | |
35 | +} | |
... | ... |
src/main/java/com/huaheng/api/general/domain/ReceiptDomain.java
0 → 100644
1 | +package com.huaheng.api.general.domain; | |
2 | + | |
3 | +import com.huaheng.pc.receipt.receiptDetail.domain.ReceiptDetail; | |
4 | +import com.huaheng.pc.receipt.receiptDetail.service.ReceiptDetailService; | |
5 | +import com.huaheng.pc.receipt.receiptHeader.domain.ReceiptHeader; | |
6 | +import lombok.Data; | |
7 | + | |
8 | +import java.util.List; | |
9 | + | |
10 | +@Data | |
11 | +public class ReceiptDomain { | |
12 | + | |
13 | + //入库主单 | |
14 | + private ReceiptHeader receiptHeader; | |
15 | + | |
16 | + //入库子单列 | |
17 | + private List<ReceiptDetail> receiptDetails; | |
18 | +} | |
... | ... |
src/main/java/com/huaheng/api/general/domain/ShipmentDomain.java
0 → 100644
1 | +package com.huaheng.api.general.domain; | |
2 | + | |
3 | +import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail; | |
4 | +import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader; | |
5 | +import lombok.Data; | |
6 | + | |
7 | +import java.util.List; | |
8 | + | |
9 | +@Data | |
10 | +public class ShipmentDomain { | |
11 | + private ShipmentHeader shipmentHeader; | |
12 | + | |
13 | + private List<ShipmentDetail> shipmentDetails; | |
14 | +} | |
... | ... |
src/main/java/com/huaheng/api/general/service/BasicDataApiService.java
... | ... | @@ -7,6 +7,10 @@ import com.huaheng.common.utils.StringUtils; |
7 | 7 | import com.huaheng.framework.web.domain.AjaxResult; |
8 | 8 | import com.huaheng.pc.config.company.domain.Company; |
9 | 9 | import com.huaheng.pc.config.company.service.CompanyService; |
10 | +import com.huaheng.pc.config.containerCapacity.domain.ContainerCapacity; | |
11 | +import com.huaheng.pc.config.containerCapacity.service.ContainerCapacityService; | |
12 | +import com.huaheng.pc.config.containerType.domain.ContainerType; | |
13 | +import com.huaheng.pc.config.containerType.service.ContainerTypeService; | |
10 | 14 | import com.huaheng.pc.config.customer.domain.Customer; |
11 | 15 | import com.huaheng.pc.config.customer.service.CustomerServiceImpl; |
12 | 16 | import com.huaheng.pc.config.material.domain.Material; |
... | ... | @@ -30,6 +34,7 @@ import org.springframework.stereotype.Component; |
30 | 34 | import org.springframework.transaction.annotation.Transactional; |
31 | 35 | |
32 | 36 | import javax.annotation.Resource; |
37 | +import java.math.BigDecimal; | |
33 | 38 | import java.util.ArrayList; |
34 | 39 | import java.util.List; |
35 | 40 | |
... | ... | @@ -42,7 +47,8 @@ public class BasicDataApiService { |
42 | 47 | IDictDataService dictDataService; |
43 | 48 | @Autowired |
44 | 49 | MaterialService materialService; |
45 | - | |
50 | + @Autowired | |
51 | + ContainerTypeService containerTypeService; | |
46 | 52 | @Resource |
47 | 53 | private DictTypeMapper dictTypeMapper; |
48 | 54 | @Resource |
... | ... | @@ -66,6 +72,9 @@ public class BasicDataApiService { |
66 | 72 | @Autowired |
67 | 73 | CompanyService companyService; |
68 | 74 | |
75 | + @Autowired | |
76 | + private ContainerCapacityService containerCapacityService; | |
77 | + | |
69 | 78 | //检查仓库 |
70 | 79 | public Warehouse checkWarehouse(String code) { |
71 | 80 | LambdaQueryWrapper<Warehouse> warehouseLam = Wrappers.lambdaQuery(); |
... | ... | @@ -507,4 +516,73 @@ public class BasicDataApiService { |
507 | 516 | throw new ServiceException("供应商数据问题。。。"); |
508 | 517 | } |
509 | 518 | } |
519 | + | |
520 | + | |
521 | + /** | |
522 | + * 容器容量通用接口 | |
523 | + * 1、判断必填字段是否为空 | |
524 | + * 2、检查仓库、物料和容器类型 | |
525 | + * 3、检查此容器容量是否存在,不存在则添加 | |
526 | + * @param containerCapacity | |
527 | + * @return | |
528 | + */ | |
529 | + public AjaxResult containerCapacity(ContainerCapacity containerCapacity){ | |
530 | + Boolean flag = false; | |
531 | + //1、判断必填字段是否为空 | |
532 | + if(StringUtils.isEmpty(containerCapacity.getContainerType())){ | |
533 | + return AjaxResult.error("没有容器类型"); | |
534 | + } | |
535 | + if(StringUtils.isEmpty(containerCapacity.getWarehouseCode())){ | |
536 | + return AjaxResult.error("没有仓库编号"); | |
537 | + } | |
538 | + if(StringUtils.isEmpty(containerCapacity.getMaterialCode())){ | |
539 | + return AjaxResult.error("没有物料编号"); | |
540 | + } | |
541 | + if(StringUtils.isNull(containerCapacity.getQty())){ | |
542 | + return AjaxResult.error("没有容量上限"); | |
543 | + } | |
544 | + | |
545 | + // 2、检查仓库、物料和容器类型 | |
546 | + this.checkWarehouse(containerCapacity.getWarehouseCode()); | |
547 | + | |
548 | + //物料检查 | |
549 | + LambdaQueryWrapper<Material> materialLam = Wrappers.lambdaQuery(); | |
550 | + materialLam.eq(Material::getCode,containerCapacity.getMaterialCode()) | |
551 | + .eq(Material::getWarehouseCode,containerCapacity.getWarehouseCode()); | |
552 | + Material material = materialService.getOne(materialLam); | |
553 | + if(material == null){ | |
554 | + return AjaxResult.error("系统没有此物料编号"); | |
555 | + } | |
556 | + | |
557 | + //容器类型检查 | |
558 | + LambdaQueryWrapper<ContainerType> containerTypeLamb = Wrappers.lambdaQuery(); | |
559 | + containerTypeLamb.eq(ContainerType::getCode,containerCapacity.getContainerType()) | |
560 | + .eq(ContainerType::getWarehouseCode,containerCapacity.getWarehouseCode()); | |
561 | + ContainerType containerType = containerTypeService.getOne(containerTypeLamb); | |
562 | + if(containerType == null){ | |
563 | + return AjaxResult.error("系统没有此容器类型"); | |
564 | + } | |
565 | + | |
566 | + //3、检查此容器容量是否存在,不存在则添加 | |
567 | + LambdaQueryWrapper<ContainerCapacity> containerCapacityLambd = Wrappers.lambdaQuery(); | |
568 | + containerCapacityLambd.eq(ContainerCapacity::getContainerType,containerCapacity.getContainerType()) | |
569 | + .eq(ContainerCapacity::getWarehouseCode,containerCapacity.getWarehouseCode()) | |
570 | + .eq(ContainerCapacity::getMaterialCode,containerCapacity.getMaterialCode()); | |
571 | + ContainerCapacity capacity = containerCapacityService.getOne(containerCapacityLambd); | |
572 | + if(capacity == null){ | |
573 | + flag = containerCapacityService.save(containerCapacity); | |
574 | + if(flag == false){ | |
575 | + return AjaxResult.error("新增容器容量失败"); | |
576 | + } | |
577 | + }else { | |
578 | + if(capacity.getQty().compareTo(containerCapacity.getQty()) != 0){ | |
579 | + capacity.setQty(containerCapacity.getQty()); | |
580 | + flag = containerCapacityService.updateById(capacity); | |
581 | + if(flag == false){ | |
582 | + return AjaxResult.error("修改容器容量失败"); | |
583 | + } | |
584 | + } | |
585 | + } | |
586 | + return AjaxResult.success("新增容器容量成功"); | |
587 | + } | |
510 | 588 | } |
... | ... |
src/main/java/com/huaheng/api/general/service/ReceiptApiService.java
0 → 100644
1 | +package com.huaheng.api.general.service; | |
2 | + | |
3 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | |
4 | +import com.baomidou.mybatisplus.core.toolkit.Wrappers; | |
5 | +import com.huaheng.api.general.controller.ReceiptApi; | |
6 | +import com.huaheng.api.general.domain.ReceiptDomain; | |
7 | +import com.huaheng.common.exception.service.ServiceException; | |
8 | +import com.huaheng.common.utils.StringUtils; | |
9 | +import com.huaheng.framework.web.domain.AjaxResult; | |
10 | +import com.huaheng.pc.config.FilterConfigDetail.domain.FilterConfigDetail; | |
11 | +import com.huaheng.pc.config.FilterConfigDetail.service.FilterConfigDetailService; | |
12 | +import com.huaheng.pc.config.company.domain.Company; | |
13 | +import com.huaheng.pc.config.company.service.CompanyService; | |
14 | +import com.huaheng.pc.config.material.domain.Material; | |
15 | +import com.huaheng.pc.config.material.service.MaterialService; | |
16 | +import com.huaheng.pc.config.receiptType.domain.ReceiptType; | |
17 | +import com.huaheng.pc.config.receiptType.service.ReceiptTypeService; | |
18 | +import com.huaheng.pc.config.statusFlow.domain.StatusFlowHeader; | |
19 | +import com.huaheng.pc.config.statusFlow.service.StatusFlowHeaderService; | |
20 | +import com.huaheng.pc.config.supplier.domain.Supplier; | |
21 | +import com.huaheng.pc.config.supplier.service.SupplierService; | |
22 | +import com.huaheng.pc.config.warehouse.domain.Warehouse; | |
23 | +import com.huaheng.pc.config.warehouse.service.WarehouseService; | |
24 | +import com.huaheng.pc.receipt.receiptDetail.domain.ReceiptDetail; | |
25 | +import com.huaheng.pc.receipt.receiptDetail.service.ReceiptDetailService; | |
26 | +import com.huaheng.pc.receipt.receiptHeader.domain.ReceiptHeader; | |
27 | +import com.huaheng.pc.receipt.receiptHeader.service.ReceiptHeaderService; | |
28 | +import org.springframework.stereotype.Component; | |
29 | +import org.springframework.transaction.annotation.Transactional; | |
30 | + | |
31 | +import javax.annotation.Resource; | |
32 | +import java.math.BigDecimal; | |
33 | +import java.util.List; | |
34 | + | |
35 | +@Component | |
36 | +@Transactional | |
37 | +public class ReceiptApiService { | |
38 | + @Resource | |
39 | + private ReceiptHeaderService receiptHeaderService; | |
40 | + @Resource | |
41 | + private ReceiptDetailService receiptDetailService; | |
42 | + @Resource | |
43 | + private ReceiptTypeService receiptTypeService; | |
44 | + @Resource | |
45 | + private WarehouseService warehouseService; | |
46 | + @Resource | |
47 | + private CompanyService companyService; | |
48 | + @Resource | |
49 | + private MaterialService materialService; | |
50 | + @Resource | |
51 | + private SupplierService supplierService; | |
52 | + @Resource | |
53 | + private FilterConfigDetailService filterConfigDetailService; | |
54 | + @Resource | |
55 | + private StatusFlowHeaderService statusFlowHeaderService; | |
56 | + /** | |
57 | + * 入库单下发 | |
58 | + * @param receipt 入库单 | |
59 | + * @return 是否下发成功 | |
60 | + */ | |
61 | + @Transactional(rollbackFor = Exception.class) | |
62 | + public AjaxResult receipt(ReceiptDomain receipt){ | |
63 | + | |
64 | + /* 0.step 获取入库头表,获取入库明细*/ | |
65 | + ReceiptHeader receiptHeader = receipt.getReceiptHeader(); | |
66 | + List<ReceiptDetail> receiptDetails = receipt.getReceiptDetails(); | |
67 | + /* 1.step 校验入库单是否为空*/ | |
68 | + if (receiptHeader == null || receiptDetails.isEmpty()){ | |
69 | + throw new ServiceException("入库主单或入库子单为空"); | |
70 | + } | |
71 | + /* 2.step 检查入库头表合法性*/ | |
72 | + AjaxResult checkReceiptHeaderResult = checkReceiptHeader(receiptHeader); | |
73 | + if (checkReceiptHeaderResult.hasErr() ){ | |
74 | + return AjaxResult.error(checkReceiptHeaderResult.getMsg()); | |
75 | + } | |
76 | + | |
77 | + /* 3.step 检查入库明细合法性*/ | |
78 | + AjaxResult checkReceiptDetailResult = checkReceiptDetail(receiptDetails); | |
79 | + if (checkReceiptDetailResult.hasErr() ){ | |
80 | + return AjaxResult.error(checkReceiptDetailResult.getMsg()); | |
81 | + } | |
82 | + | |
83 | + /* 4.step 计算入库明细总行数、总数量*/ | |
84 | + BigDecimal totalQty = new BigDecimal(0); | |
85 | + for (ReceiptDetail receiptDetail: receiptDetails) { | |
86 | + totalQty.add(receiptDetail.getTotalQty()); | |
87 | + } | |
88 | + receiptHeader.setTotalLines(receiptDetails.size()); | |
89 | + receiptHeader.setTotalQty(totalQty); | |
90 | + | |
91 | + /* 5.step 保存的入库头表*/ | |
92 | + if (!receiptHeaderService.save(receiptHeader)){ | |
93 | + throw new ServiceException("保存入库头表失败"); | |
94 | + } | |
95 | + | |
96 | + /* 6.step 保存入库明细*/ | |
97 | + LambdaQueryWrapper<ReceiptHeader> lambda = Wrappers.lambdaQuery(); | |
98 | + lambda.eq(ReceiptHeader::getWarehouseCode, receiptHeader.getWarehouseCode()) | |
99 | + .eq(ReceiptHeader::getCode, receiptHeader.getCode()); | |
100 | + receiptHeader = receiptHeaderService.getOne(lambda); | |
101 | + for (ReceiptDetail receiptDetail : receiptDetails) { | |
102 | + receiptDetail.setReceiptId(receiptHeader.getId()); | |
103 | + receiptDetail.setReceiptCode(receiptHeader.getCode()); | |
104 | + receiptDetail.setWarehouseCode(receiptHeader.getWarehouseCode()); | |
105 | + receiptDetail.setCompanyCode(receiptHeader.getWarehouseCode()); | |
106 | + Material material = materialService.findAllByCode(receiptDetail.getMaterialCode()); | |
107 | + receiptDetail.setMaterialName(material.getName()); | |
108 | + receiptDetail.setMaterialSpec(material.getSpec()); | |
109 | + receiptDetail.setMaterialUnit(material.getUnit()); | |
110 | + if (!receiptDetailService.save(receiptDetail)){ | |
111 | + throw new ServiceException("保存入库明细失败"); | |
112 | + } | |
113 | + } | |
114 | + | |
115 | + return AjaxResult.success("成功"); | |
116 | + } | |
117 | + | |
118 | + /** | |
119 | + * 检查入库头表合法性 | |
120 | + * @param receiptHeader 入库头表 | |
121 | + * @return 检查结果 | |
122 | + */ | |
123 | + private AjaxResult checkReceiptHeader(ReceiptHeader receiptHeader){ | |
124 | + /* 0.step 必填项是否为空*/ | |
125 | + if (StringUtils.isEmpty(receiptHeader.getCode()) || StringUtils.isEmpty(receiptHeader.getCompanyCode()) || | |
126 | + StringUtils.isEmpty(receiptHeader.getWarehouseCode()) || StringUtils.isEmpty(receiptHeader.getReceiptType())){ | |
127 | + return AjaxResult.error("入库主单字段有误"); | |
128 | + } | |
129 | + | |
130 | + /* 1.step 查询该单据编码是否已存在*/ | |
131 | + LambdaQueryWrapper<ReceiptHeader> receiptHeaderLambda = Wrappers.lambdaQuery(receiptHeader); | |
132 | + if (receiptHeaderService.getOne(receiptHeaderLambda) != null){ | |
133 | + return AjaxResult.error("该单据已存在:"+receiptHeader.getCode()); | |
134 | + } | |
135 | + | |
136 | + /* 2.step 判断入库类型是否匹配*/ | |
137 | + LambdaQueryWrapper<ReceiptType> receiptTypeLambda = Wrappers.lambdaQuery(); | |
138 | + receiptTypeLambda.eq(ReceiptType::getCode, receiptHeader.getReceiptType()); | |
139 | + if (receiptTypeService.getOne(receiptTypeLambda) == null){ | |
140 | + return AjaxResult.error("没有对应的入库单类型"); | |
141 | + } | |
142 | + | |
143 | + /* 3.step 判断仓库是否存在*/ | |
144 | + LambdaQueryWrapper<Warehouse> warehouseLambda = Wrappers.lambdaQuery(); | |
145 | + warehouseLambda.eq(Warehouse::getCode, receiptHeader.getWarehouseCode()); | |
146 | + if (warehouseService.getOne(warehouseLambda) == null){ | |
147 | + return AjaxResult.error("该仓库不存在"); | |
148 | + } | |
149 | + | |
150 | + /* 4.step 判断货主是否存在*/ | |
151 | + LambdaQueryWrapper<Company> companyLambda = Wrappers.lambdaQuery(); | |
152 | + companyLambda.eq(Company::getCode, receiptHeader.getCompanyCode()); | |
153 | + if (companyService.getOne(companyLambda) == null){ | |
154 | + return AjaxResult.error("该货主不存在"); | |
155 | + } | |
156 | + | |
157 | + return AjaxResult.success(""); | |
158 | + } | |
159 | + | |
160 | + /** | |
161 | + * 检查入库明细合法性 | |
162 | + * @param receiptDetails 入库明细 | |
163 | + * @return 检查结果 | |
164 | + */ | |
165 | + private AjaxResult checkReceiptDetail(List<ReceiptDetail> receiptDetails){ | |
166 | + | |
167 | + for (ReceiptDetail receiptDetail: receiptDetails) { | |
168 | + /* 0.step 判断必填字段是否为空且总数量不能为0*/ | |
169 | + if (receiptDetail.getMaterialCode() == null || | |
170 | + new BigDecimal(0).compareTo(receiptDetail.getTotalQty() != null ? | |
171 | + receiptDetail.getTotalQty() : new BigDecimal(0)) == 0 ){ | |
172 | + return AjaxResult.error("入库明细字段有误"); | |
173 | + } | |
174 | + | |
175 | + /* 1.step 判断供应商是否存在*/ | |
176 | + if (receiptDetail.getSupplierCode() != null){ | |
177 | + LambdaQueryWrapper<Supplier> supplierLambda = Wrappers.lambdaQuery(); | |
178 | + supplierLambda.eq(Supplier::getCode, receiptDetail.getSupplierCode()); | |
179 | + if (supplierService.getOne(supplierLambda) == null) { | |
180 | + return AjaxResult.error("供应商不存在"); | |
181 | + } | |
182 | + } | |
183 | + | |
184 | + /* 2.step 判断定位规则是否存在*/ | |
185 | + if (receiptDetail.getLocatingRule() != null){ | |
186 | + LambdaQueryWrapper<FilterConfigDetail> filterConfigDetailLambda = Wrappers.lambdaQuery(); | |
187 | + filterConfigDetailLambda.eq(FilterConfigDetail::getCode, receiptDetail.getLocatingRule()) | |
188 | + .eq(FilterConfigDetail::getModuleType, "receipt") | |
189 | + .eq(FilterConfigDetail::getRecordType, "locationRule"); | |
190 | + FilterConfigDetail filterConfigDetail = filterConfigDetailService.getOne(filterConfigDetailLambda); | |
191 | + if (filterConfigDetail == null){ | |
192 | + return AjaxResult.error(receiptDetail.getLocatingRule()+"定位规则不存在"); | |
193 | + } | |
194 | + } | |
195 | + | |
196 | + /* 3.step 判断流程编码是否存在*/ | |
197 | + if (receiptDetail.getStatusFlowCode() != null){ | |
198 | + LambdaQueryWrapper<StatusFlowHeader> statusFlowHeaderLambda = Wrappers.lambdaQuery(); | |
199 | + statusFlowHeaderLambda.eq(StatusFlowHeader::getCode, receiptDetail.getStatusFlowCode()) | |
200 | + .eq(StatusFlowHeader::getModuleType, "receipt") | |
201 | + .eq(StatusFlowHeader::getRecordType, "receivingFlow"); | |
202 | + StatusFlowHeader statusFlowHeader = statusFlowHeaderService.getOne(statusFlowHeaderLambda); | |
203 | + if (statusFlowHeader == null){ | |
204 | + return AjaxResult.error(receiptDetail.getLocatingRule()+"该流程不存在"); | |
205 | + } | |
206 | + } | |
207 | + } | |
208 | + | |
209 | + return AjaxResult.success(""); | |
210 | + } | |
211 | +} | |
... | ... |
src/main/java/com/huaheng/api/general/service/ShipmentApiService.java
0 → 100644
1 | +package com.huaheng.api.general.service; | |
2 | + | |
3 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | |
4 | +import com.baomidou.mybatisplus.core.toolkit.Wrappers; | |
5 | +import com.huaheng.api.general.domain.ShipmentDomain; | |
6 | +import com.huaheng.common.exception.service.ServiceException; | |
7 | +import com.huaheng.common.utils.StringUtils; | |
8 | +import com.huaheng.common.utils.security.ShiroUtils; | |
9 | +import com.huaheng.framework.web.domain.AjaxResult; | |
10 | +import com.huaheng.pc.config.company.domain.Company; | |
11 | +import com.huaheng.pc.config.company.service.CompanyService; | |
12 | +import com.huaheng.pc.config.customer.domain.Customer; | |
13 | +import com.huaheng.pc.config.customer.service.CustomerServiceImpl; | |
14 | +import com.huaheng.pc.config.material.domain.Material; | |
15 | +import com.huaheng.pc.config.material.service.MaterialService; | |
16 | +import com.huaheng.pc.config.shipmentType.domain.ShipmentType; | |
17 | +import com.huaheng.pc.config.shipmentType.service.ShipmentTypeService; | |
18 | +import com.huaheng.pc.config.warehouse.domain.Warehouse; | |
19 | +import com.huaheng.pc.config.warehouse.service.WarehouseService; | |
20 | +import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail; | |
21 | +import com.huaheng.pc.shipment.shipmentDetail.service.ShipmentDetailService; | |
22 | +import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader; | |
23 | +import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService; | |
24 | +import org.springframework.beans.factory.annotation.Autowired; | |
25 | +import org.springframework.stereotype.Component; | |
26 | +import org.springframework.transaction.annotation.Transactional; | |
27 | + | |
28 | +import java.math.BigDecimal; | |
29 | +import java.util.ArrayList; | |
30 | +import java.util.List; | |
31 | + | |
32 | +/** | |
33 | + * @author ricard | |
34 | + * @time 19/11/11 | |
35 | + * | |
36 | + */ | |
37 | + | |
38 | + | |
39 | +@Component | |
40 | +@Transactional | |
41 | +public class ShipmentApiService { | |
42 | + | |
43 | + @Autowired | |
44 | + private ShipmentHeaderService shipmentHeaderService; | |
45 | + | |
46 | + @Autowired | |
47 | + private ShipmentDetailService shipmentDetailService; | |
48 | + | |
49 | + @Autowired | |
50 | + private WarehouseService warehouseService; | |
51 | + | |
52 | + @Autowired | |
53 | + private CompanyService companyService; | |
54 | + | |
55 | + @Autowired | |
56 | + private CustomerServiceImpl customerService; | |
57 | + | |
58 | + @Autowired | |
59 | + private ShipmentTypeService shipmentTypeService; | |
60 | + | |
61 | + @Autowired | |
62 | + private MaterialService materialService; | |
63 | + | |
64 | + /** | |
65 | + * 出库单下发 | |
66 | + * | |
67 | + * @param shipmentDomain | |
68 | + * @return | |
69 | + */ | |
70 | + @Transactional | |
71 | + public AjaxResult shipment(ShipmentDomain shipmentDomain){ | |
72 | + | |
73 | + //1、判断出库主单和子单列是否为空 | |
74 | + ShipmentHeader shipmentHeader = shipmentDomain.getShipmentHeader(); | |
75 | + List<ShipmentDetail> shipmentDetails = shipmentDomain.getShipmentDetails(); | |
76 | + if(shipmentHeader == null){ | |
77 | + return AjaxResult.error("出库主单为空"); | |
78 | + } | |
79 | + if(shipmentDetails.size() < 1 || shipmentDetails == null ){ | |
80 | + return AjaxResult.error("出库子单为空"); | |
81 | + } | |
82 | + | |
83 | + //2、检查出库主单的合法性 | |
84 | + AjaxResult ajaxResult = this.checkShipmentHeader(shipmentHeader); | |
85 | + | |
86 | + //3、检查出库子单的合法性 | |
87 | + shipmentDetails =this.checkShipmentDetail(shipmentDetails,shipmentHeader); | |
88 | + | |
89 | + //4、保存出库主表 | |
90 | + BigDecimal totalQty = new BigDecimal(0); | |
91 | + for (ShipmentDetail item: shipmentDetails) { | |
92 | + totalQty.add(item.getShipQty()); | |
93 | + } | |
94 | + shipmentHeader.setTotalLines(shipmentDetails.size()); | |
95 | + shipmentHeader.setTotalQty(totalQty); | |
96 | + shipmentHeader.setCode(shipmentHeaderService.createCode(shipmentHeader.getShipmentType())); | |
97 | + | |
98 | + if(!shipmentHeaderService.save(shipmentHeader)){ | |
99 | + throw new ServiceException("保存出库主表失败"); | |
100 | + } | |
101 | + | |
102 | + //5、保存出库子表 | |
103 | + for(ShipmentDetail shipmentDetail : shipmentDetails){ | |
104 | + shipmentDetail.setShipmentId(shipmentHeader.getId()); | |
105 | + shipmentDetail.setShipmentCode(shipmentHeader.getCode()); | |
106 | + } | |
107 | + | |
108 | + int num = 0; | |
109 | + List<ShipmentDetail> shipmentDetailList = new ArrayList<>(); | |
110 | + if(shipmentDetails.size() >500 ){ | |
111 | + for(ShipmentDetail item : shipmentDetails){ | |
112 | + num++; | |
113 | + shipmentDetailList.add(item); | |
114 | + if(num % 500 ==0 || num == shipmentDetails.size()){ | |
115 | + if(!shipmentDetailService.insertDetails(shipmentDetailList)){ | |
116 | + throw new ServiceException("保存出库子表失败"); | |
117 | + } | |
118 | + shipmentDetailList=new ArrayList<>(); | |
119 | + } | |
120 | + } | |
121 | + }else { | |
122 | + if(!shipmentDetailService.insertDetails(shipmentDetails)){ | |
123 | + throw new ServiceException("保存出库子表失败"); | |
124 | + } | |
125 | + } | |
126 | + return AjaxResult.success("出库单下发成功"); | |
127 | + } | |
128 | + | |
129 | + | |
130 | + /** | |
131 | + * 检查出库主单的合法性 | |
132 | + * @param shipmentHeader | |
133 | + * @return | |
134 | + */ | |
135 | + public AjaxResult checkShipmentHeader(ShipmentHeader shipmentHeader){ | |
136 | + //1、判断仓库和货主 | |
137 | + if(StringUtils.isEmpty(shipmentHeader.getWarehouseCode())){ | |
138 | + return AjaxResult.error("仓库为空"); | |
139 | + } | |
140 | + if(StringUtils.isEmpty(shipmentHeader.getCompanyCode())){ | |
141 | + return AjaxResult.error("货主为空"); | |
142 | + } | |
143 | + | |
144 | + | |
145 | + LambdaQueryWrapper<Warehouse> warehouseLamb = Wrappers.lambdaQuery(); | |
146 | + warehouseLamb.eq(Warehouse::getCode,shipmentHeader.getWarehouseCode()); | |
147 | + Warehouse warehouse =warehouseService.getOne(warehouseLamb); | |
148 | + if(warehouse == null){ | |
149 | + return AjaxResult.error("wms没有此仓库"); | |
150 | + } | |
151 | + | |
152 | + LambdaQueryWrapper<Company> companyLamb = Wrappers.lambdaQuery(); | |
153 | + companyLamb.eq(Company::getCode,shipmentHeader.getCompanyCode()); | |
154 | + Company company =companyService.getOne(companyLamb); | |
155 | + if(company == null){ | |
156 | + return AjaxResult.error("wms没有此货主"); | |
157 | + } | |
158 | + | |
159 | + //2、判断出库类型 | |
160 | + LambdaQueryWrapper<ShipmentType> shipmentTypeLamb = Wrappers.lambdaQuery(); | |
161 | + shipmentTypeLamb.eq(ShipmentType::getCode,shipmentHeader.getShipmentType()) | |
162 | + .eq(ShipmentType::getWarehouseCode,shipmentHeader.getWarehouseCode()); | |
163 | + ShipmentType shipmentType =shipmentTypeService.getOne(shipmentTypeLamb); | |
164 | + if(shipmentType == null){ | |
165 | + return AjaxResult.error("wms没有此出库类型"); | |
166 | + } | |
167 | + | |
168 | + //3、检查上游单号是否存在 | |
169 | + LambdaQueryWrapper<ShipmentHeader> shipmentHeaderLamb = Wrappers.lambdaQuery(); | |
170 | + shipmentHeaderLamb.eq(ShipmentHeader::getWarehouseCode,shipmentHeader.getWarehouseCode()) | |
171 | + .eq(ShipmentHeader::getReferCode,shipmentHeader.getReferCode()); | |
172 | + List<ShipmentHeader> shipmentHeaders = shipmentHeaderService.list(shipmentHeaderLamb); | |
173 | + if(shipmentHeaders.size() > 0 || shipmentHeaders != null){ | |
174 | + return AjaxResult.success("出库单已经下发"); | |
175 | + } | |
176 | + | |
177 | + //4、检查客户 | |
178 | + if(StringUtils.isNotEmpty(shipmentHeader.getCustomerCode())){ | |
179 | + LambdaQueryWrapper<Customer> customerLamb = Wrappers.lambdaQuery(); | |
180 | + customerLamb.eq(Customer::getWarehouseCode,shipmentHeader.getWarehouseCode()) | |
181 | + .eq(Customer::getCode,shipmentHeader.getCustomerCode()); | |
182 | + Customer customer = customerService.getOne(customerLamb); | |
183 | + if(customer == null){ | |
184 | + return AjaxResult.error("wms没有此客户"); | |
185 | + } | |
186 | + } | |
187 | + return AjaxResult.success(shipmentHeader); | |
188 | + } | |
189 | + | |
190 | + | |
191 | + /** | |
192 | + * 检查出库子单的合法性 | |
193 | + * @param shipmentDetails | |
194 | + * @return | |
195 | + */ | |
196 | + public List<ShipmentDetail> checkShipmentDetail(List<ShipmentDetail> shipmentDetails,ShipmentHeader shipmentHeader){ | |
197 | + | |
198 | + for(ShipmentDetail shipmentDetail : shipmentDetails) { | |
199 | + //1、检查物料 | |
200 | + if(StringUtils.isEmpty(shipmentDetail.getMaterialCode())){ | |
201 | + throw new ServiceException("物料为空"); | |
202 | + } | |
203 | + LambdaQueryWrapper<Material> materialLamb = Wrappers.lambdaQuery(); | |
204 | + materialLamb.eq(Material::getCode,shipmentDetail.getMaterialCode()) | |
205 | + .eq(Material::getWarehouseCode,shipmentHeader.getWarehouseCode()); | |
206 | + Material material = materialService.getOne(materialLamb); | |
207 | + if(material == null){ | |
208 | + throw new ServiceException("wms没有此物料"); | |
209 | + } | |
210 | + | |
211 | + //2、赋值物料属性 | |
212 | + shipmentDetail.setMaterialName(material.getName()); | |
213 | + shipmentDetail.setMaterialSpec(material.getSpec()); | |
214 | + shipmentDetail.setMaterialUnit(material.getUnit()); | |
215 | + } | |
216 | + return shipmentDetails; | |
217 | + } | |
218 | +} | |
... | ... |
src/main/java/com/huaheng/api/wcs/service/taskFinish/TaskFinishServiceImpl.java
... | ... | @@ -24,6 +24,7 @@ public class TaskFinishServiceImpl implements TaskFinishService { |
24 | 24 | if(StringUtils.isEmpty(taskFinishDomain.getTaskNo())){ |
25 | 25 | return AjaxResult.error("任务号为空"); |
26 | 26 | } |
27 | + | |
27 | 28 | if(taskFinishDomain.getIsEmptyOut() == 1){ |
28 | 29 | LambdaQueryWrapper<TaskHeader> lam = Wrappers.lambdaQuery(); |
29 | 30 | lam.eq(TaskHeader::getId,Integer.valueOf(taskFinishDomain.getTaskNo())); |
... | ... |
src/main/java/com/huaheng/common/jasper/DocType.java
0 → 100644
src/main/java/com/huaheng/common/jasper/DocTypeUtil.java
0 → 100644
1 | +package com.huaheng.common.jasper; | |
2 | + | |
3 | + | |
4 | +/** | |
5 | + * 格式工具类 | |
6 | + * @author ricard | |
7 | + * @date 19/11/21 | |
8 | + * | |
9 | + */ | |
10 | +public class DocTypeUtil { | |
11 | + /** | |
12 | + * 默认类型PDF | |
13 | + * @param docType | |
14 | + * @return | |
15 | + * | |
16 | + */ | |
17 | + | |
18 | + public static DocType getEnumDocType(String docType){ | |
19 | + //默认PDF | |
20 | + DocType type = DocType.PDF; | |
21 | + docType = docType.toUpperCase(); | |
22 | + | |
23 | + if(docType.equals("DOC")){ | |
24 | + type =DocType.DOC; | |
25 | + } else if (docType.equals("XLS")) { | |
26 | + type = DocType.XLS; | |
27 | + } else if(docType.equals("XLSX")) { | |
28 | + type = DocType.XLSX; | |
29 | + }else if (docType.equals("XML")) { | |
30 | + type = DocType.XML; | |
31 | + } else if (docType.equals("RTF")) { | |
32 | + type = DocType.RTF; | |
33 | + } else if (docType.equals("CSV")) { | |
34 | + type = DocType.CSV; | |
35 | + } else if (docType.equals("HTML")) { | |
36 | + type = DocType.HTML; | |
37 | + } else if (docType.equals("TXT")) { | |
38 | + type = DocType.TXT; | |
39 | + } | |
40 | + return type; | |
41 | + } | |
42 | +} | |
... | ... |
src/main/java/com/huaheng/common/jasper/JasperreportUtils.java
0 → 100644
1 | +package com.huaheng.common.jasper; | |
2 | + | |
3 | +import net.sf.jasperreports.engine.*; | |
4 | +import net.sf.jasperreports.engine.export.*; | |
5 | +import net.sf.jasperreports.engine.export.ooxml.JRXlsxExporter; | |
6 | +import net.sf.jasperreports.engine.fill.JRFileVirtualizer; | |
7 | +import net.sf.jasperreports.export.*; | |
8 | +import org.slf4j.Logger; | |
9 | +import org.slf4j.LoggerFactory; | |
10 | + | |
11 | +import javax.servlet.ServletException; | |
12 | +import javax.servlet.ServletOutputStream; | |
13 | +import javax.servlet.http.HttpServletRequest; | |
14 | +import javax.servlet.http.HttpServletResponse; | |
15 | +import javax.servlet.http.HttpSession; | |
16 | +import java.io.*; | |
17 | +import java.lang.reflect.Field; | |
18 | +import java.math.BigDecimal; | |
19 | +import java.net.URLEncoder; | |
20 | +import java.sql.Connection; | |
21 | +import java.sql.SQLException; | |
22 | +import java.text.DecimalFormat; | |
23 | +import java.text.SimpleDateFormat; | |
24 | +import java.util.Date; | |
25 | +import java.util.List; | |
26 | +import java.util.Map; | |
27 | + | |
28 | +/** | |
29 | + * 报表工具类 | |
30 | + * @author ricard | |
31 | + * @date 19/11/21 | |
32 | + * | |
33 | + */ | |
34 | +public class JasperreportUtils { | |
35 | + | |
36 | + | |
37 | + | |
38 | + | |
39 | + private static final Logger LOGGER = LoggerFactory.getLogger(JasperreportUtils.class); | |
40 | + private HttpServletRequest request; | |
41 | + private HttpServletResponse response; | |
42 | + private HttpSession session; | |
43 | + | |
44 | + public JasperreportUtils(HttpServletRequest request, HttpServletResponse response, HttpSession session){ | |
45 | + super(); | |
46 | + this.request = request; | |
47 | + this.response =response; | |
48 | + this.session =request.getSession(); | |
49 | + } | |
50 | + | |
51 | + | |
52 | + | |
53 | + /** | |
54 | + * datasource与parameters填充报表 | |
55 | + * | |
56 | + * @param jasperPath | |
57 | + * @param dataSource | |
58 | + * @param parameters | |
59 | + * @return | |
60 | + * @throws JRException | |
61 | + */ | |
62 | + public JasperPrint getJasperPrint(String jasperPath, Map<String, Object> parameters, JRDataSource dataSource) | |
63 | + throws JRException { | |
64 | + | |
65 | + JasperPrint jasperPrint = JasperFillManager.fillReport(jasperPath, parameters, dataSource); | |
66 | + return jasperPrint; | |
67 | + } | |
68 | + | |
69 | + /** | |
70 | + * connection与parameters填充报表 | |
71 | + * | |
72 | + * @param jasperPath | |
73 | + * @param conn | |
74 | + * @param parameters | |
75 | + * @return | |
76 | + * @throws JRException | |
77 | + */ | |
78 | + public JasperPrint getJasperPrint(String jasperPath, Map<String, Object> parameters, Connection conn) | |
79 | + throws JRException { | |
80 | + | |
81 | + JasperPrint jasperPrint = JasperFillManager.fillReport(jasperPath, parameters, conn); | |
82 | + return jasperPrint; | |
83 | + } | |
84 | + | |
85 | + /** | |
86 | + * 传入list获取jasperPrint | |
87 | + * | |
88 | + * @param jasperPath | |
89 | + * @param parameters | |
90 | + * @param list | |
91 | + * @return | |
92 | + * @throws JRException | |
93 | + */ | |
94 | +// public JasperPrint getJasperPrintWithBeanList(String jasperPath, Map<String, Object> parameters, List<?> list) | |
95 | +// throws JRException,SQLException { | |
96 | +// JRDataSource jrDataSource = null; | |
97 | +// JasperPrint jasperPrint =new JasperPrint(); | |
98 | +// if(null != list && list.size()> 0) { | |
99 | +// jrDataSource = new JRBeanCollectionDataSource(list); | |
100 | +// jasperPrint = JasperFillManager.fillReport(jasperPath, parameters, jrDataSource); | |
101 | +// }else { | |
102 | +// jasperPrint = JasperFillManager.fillReport(jasperPath, parameters, connection); | |
103 | +// } | |
104 | +// return jasperPrint; | |
105 | +// } | |
106 | + | |
107 | + | |
108 | + | |
109 | + /** | |
110 | + * 获得相应类型的Content type | |
111 | + * | |
112 | + * @param docType | |
113 | + * @return | |
114 | + */ | |
115 | + public String getContentType(DocType docType) { | |
116 | + String contentType = "text/html"; | |
117 | + switch (docType) { | |
118 | + case PDF: | |
119 | + contentType = "application/pdf"; | |
120 | + break; | |
121 | + case XLS: | |
122 | + contentType = "application/vnd.ms-excel"; | |
123 | + break; | |
124 | + case XLSX: | |
125 | + contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; | |
126 | + break; | |
127 | + case XML: | |
128 | + contentType = "text/xml"; | |
129 | + break; | |
130 | + case RTF: | |
131 | + contentType = "application/rtf"; | |
132 | + break; | |
133 | + case CSV: | |
134 | + contentType = "text/plain"; | |
135 | + break; | |
136 | + case DOC: | |
137 | + contentType = "application/msword"; | |
138 | + break; | |
139 | + } | |
140 | + return contentType; | |
141 | + } | |
142 | + | |
143 | + /** | |
144 | + * jrxml文件 编译为 jasper文件 | |
145 | + * | |
146 | + * @param jrxmlPath | |
147 | + * @param jasperPath | |
148 | + * @throws JRException | |
149 | + */ | |
150 | + public void jrxmlToJsper(String jrxmlPath, String jasperPath) throws JRException { | |
151 | + | |
152 | + JasperCompileManager.compileReportToFile(jrxmlPath, jasperPath); | |
153 | + | |
154 | + } | |
155 | + | |
156 | + | |
157 | + /** | |
158 | + * 生成html文件 | |
159 | + * @param response | |
160 | + * @param connection | |
161 | + * @param jasperPath | |
162 | + * @param fileName | |
163 | + * @param parameters | |
164 | + * @return | |
165 | + */ | |
166 | + public String createHtml(HttpServletResponse response, Connection connection, String jasperPath, String fileName, | |
167 | + Map<String, Object> parameters, String folder) { | |
168 | + SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); | |
169 | + String dpath = sdf.format(new Date()); | |
170 | + String path = "D:"+"/reportHtml" + folder + "/" + dpath; | |
171 | + File file = new File(path); | |
172 | + if (!file.exists()) { | |
173 | + file.mkdirs(); | |
174 | + } | |
175 | + String htmlFilePath = path + "/" + fileName; | |
176 | + try { | |
177 | + | |
178 | + JasperPrint jasperPrint = this.getJasperPrint(jasperPath,parameters,connection); | |
179 | + JasperExportManager.exportReportToHtmlFile(jasperPrint, htmlFilePath); | |
180 | + | |
181 | + } catch (Exception ex) { | |
182 | + LOGGER.error("生成html文件错误"+ex.getMessage(),ex); | |
183 | + } | |
184 | + return folder + "/" + dpath + "/" + fileName; | |
185 | + } | |
186 | + | |
187 | + /** | |
188 | + * 传入类型,获取输出器 | |
189 | + * | |
190 | + * @param docType | |
191 | + * @return | |
192 | + */ | |
193 | + @SuppressWarnings("deprecation") | |
194 | + public JRAbstractExporter getJRExporter(DocType docType) { | |
195 | + JRAbstractExporter exporter = null; | |
196 | + switch (docType) { | |
197 | + case PDF: | |
198 | + exporter = new JRPdfExporter(); | |
199 | + break; | |
200 | + case HTML: | |
201 | + exporter = new HtmlExporter(); | |
202 | + break; | |
203 | + case XLS: | |
204 | + exporter = new JRXlsExporter(); | |
205 | + break; | |
206 | + case XLSX: | |
207 | + exporter = new JRXlsxExporter(); | |
208 | + break; | |
209 | + case XML: | |
210 | + exporter = new JRXmlExporter(); | |
211 | + break; | |
212 | + case RTF: | |
213 | + exporter = new JRRtfExporter(); | |
214 | + break; | |
215 | + case CSV: | |
216 | + exporter = new JRCsvExporter(); | |
217 | + break; | |
218 | + case DOC: | |
219 | + exporter = new JRRtfExporter(); | |
220 | + break; | |
221 | + case TXT: | |
222 | + exporter = new JRTextExporter(); | |
223 | + break; | |
224 | + } | |
225 | + return exporter; | |
226 | + } | |
227 | + | |
228 | + | |
229 | + /** | |
230 | + * 生成不同格式报表文档(带缓存) | |
231 | + * | |
232 | + * @param docType | |
233 | + * 文档类型 | |
234 | + * @param jasperPath | |
235 | + */ | |
236 | + @SuppressWarnings("deprecation") | |
237 | + public void createExportDocument(DocType docType, String jasperPath, Map<String, Object> parameters, | |
238 | + String fileName,Connection connection) throws JRException, IOException, ServletException, SQLException { | |
239 | + | |
240 | + //1、传入类型,获取输出器 | |
241 | + JRAbstractExporter exporter = getJRExporter(docType); | |
242 | + | |
243 | + // 2、获取后缀 | |
244 | + String ext = docType.toString().toLowerCase(); | |
245 | + | |
246 | + if (!fileName.toLowerCase().endsWith(ext)) { | |
247 | + fileName += "." + ext; | |
248 | + } | |
249 | + | |
250 | + | |
251 | + // 3、判断资源类型 | |
252 | + if (ext.equals("xls")) { | |
253 | + SimpleXlsReportConfiguration configuration = new SimpleXlsReportConfiguration(); | |
254 | + // 删除记录最下面的空行 | |
255 | + configuration.setRemoveEmptySpaceBetweenRows(Boolean.TRUE); | |
256 | + // 一页一个sheet | |
257 | + configuration.setOnePagePerSheet(Boolean.FALSE); | |
258 | + // 显示边框 背景白色 | |
259 | + configuration.setWhitePageBackground(Boolean.FALSE); | |
260 | + exporter.setConfiguration(configuration); | |
261 | + } | |
262 | + if(ext.equals("xlsx")) { | |
263 | + SimpleXlsxReportConfiguration configuration = new SimpleXlsxReportConfiguration(); | |
264 | + configuration.setRemoveEmptySpaceBetweenRows(Boolean.TRUE); | |
265 | + configuration.setRemoveEmptySpaceBetweenColumns(Boolean.TRUE); | |
266 | + configuration.setWhitePageBackground(Boolean.FALSE); | |
267 | + //自动选择格式 | |
268 | + configuration.setDetectCellType(Boolean.TRUE); | |
269 | + exporter.setConfiguration(configuration); | |
270 | + } | |
271 | + if (ext.equals("txt")) { | |
272 | + SimpleTextReportConfiguration configuration = new SimpleTextReportConfiguration(); | |
273 | + configuration.setCharWidth((float)8); | |
274 | + configuration.setCharHeight((float)15); | |
275 | + exporter.setConfiguration(configuration); | |
276 | + } | |
277 | + | |
278 | + //4、设置格式和头 | |
279 | + response.setContentType(getContentType(docType)); | |
280 | + response.setHeader("Content-Disposition", | |
281 | + "attachment; filename*=UTF-8''" + URLEncoder.encode(fileName, "UTF-8")); | |
282 | + | |
283 | + //5、加缓存 | |
284 | + JRFileVirtualizer virtualizer = new JRFileVirtualizer(2, "D:/temp"); | |
285 | + parameters.put(JRParameter.REPORT_VIRTUALIZER, virtualizer); | |
286 | + virtualizer.setReadOnly(true); | |
287 | + | |
288 | + //6、连接数据库获取jasperPrint | |
289 | + exporter.setExporterInput(new SimpleExporterInput(getJasperPrint(jasperPath, parameters, connection))); | |
290 | + /*exporter.setParameter(JRExporterParameter.JASPER_PRINT, | |
291 | + getJasperPrintWithBeanList(jasperPath, parameters, list));*/ | |
292 | + | |
293 | + OutputStream outStream = null; | |
294 | + PrintWriter outWriter = null; | |
295 | + | |
296 | + // 7、解决中文乱码问题 | |
297 | + response.setCharacterEncoding("UTF-8"); | |
298 | + if (ext.equals("csv") || ext.equals("doc") || ext.equals("rtf") || ext.equals("txt")) { | |
299 | + outWriter = response.getWriter(); | |
300 | + SimpleWriterExporterOutput outPut = new SimpleWriterExporterOutput(outWriter); | |
301 | + exporter.setExporterOutput(outPut); | |
302 | + //exporter.setParameter(JRExporterParameter.OUTPUT_WRITER, outWriter); | |
303 | + } else { | |
304 | + if(ext.equals("xml")) { | |
305 | + outWriter = response.getWriter(); | |
306 | + XmlExporterOutput outPut = new SimpleXmlExporterOutput(outWriter); | |
307 | + exporter.setExporterOutput(outPut); | |
308 | + }else if(ext.equals("html")){ | |
309 | + outWriter = response.getWriter(); | |
310 | + HtmlExporterOutput outPut = new SimpleHtmlExporterOutput(outWriter); | |
311 | + exporter.setExporterOutput(outPut); | |
312 | + }else { | |
313 | + outStream = response.getOutputStream(); | |
314 | + exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(outStream)); | |
315 | + } | |
316 | + } | |
317 | + try { | |
318 | + exporter.exportReport(); | |
319 | + virtualizer.cleanup(); | |
320 | + } catch (JRException e) { | |
321 | + throw new ServletException(e); | |
322 | + } finally { | |
323 | + if (outStream != null) { | |
324 | + try { | |
325 | + outStream.close(); | |
326 | + } catch (IOException ex) { | |
327 | + } | |
328 | + } | |
329 | + if(outWriter != null) { | |
330 | + outWriter.close(); | |
331 | + } | |
332 | + } | |
333 | + } | |
334 | + | |
335 | + | |
336 | + /** | |
337 | + * 输出以分页的形式输出html | |
338 | + * @param jasperPrint | |
339 | + * @param pageStr | |
340 | + * @throws JRException | |
341 | + * @throws IOException | |
342 | + */ | |
343 | + | |
344 | + public void createHtmlByPage(JasperPrint jasperPrint,String pageStr) throws JRException, IOException { | |
345 | + int pageIndex = 0; | |
346 | + int lastPageIndex = 0; | |
347 | + | |
348 | + HtmlExporter exporter = new HtmlExporter(); | |
349 | + if(null != jasperPrint.getPages()) { | |
350 | + lastPageIndex = jasperPrint.getPages().size() - 1; | |
351 | + } | |
352 | + | |
353 | + if(null == pageStr) { | |
354 | + pageStr = "0"; | |
355 | + } | |
356 | + try { | |
357 | + pageIndex = Integer.valueOf(pageStr); | |
358 | + if(pageIndex > 0) { | |
359 | + pageIndex = pageIndex -1 ; | |
360 | + } | |
361 | + } catch (Exception e) { | |
362 | + // 如果得到的非数字字符串 | |
363 | + if("lastPage".equals(pageStr)) { | |
364 | + pageIndex = lastPageIndex; | |
365 | + } | |
366 | + } | |
367 | + | |
368 | + if (pageIndex < 0) { | |
369 | + pageIndex = 0; | |
370 | + } | |
371 | + if (pageIndex > lastPageIndex) { | |
372 | + pageIndex = lastPageIndex; | |
373 | + } | |
374 | + response.setCharacterEncoding("UTF-8"); | |
375 | + try { | |
376 | + PrintWriter out = response.getWriter(); | |
377 | + exporter.setExporterInput(new SimpleExporterInput(jasperPrint)); | |
378 | + | |
379 | + SimpleHtmlReportConfiguration configuration = new SimpleHtmlReportConfiguration(); | |
380 | + configuration.setPageIndex(pageIndex); | |
381 | + exporter.setConfiguration(configuration); | |
382 | + //exporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN, Boolean.FALSE); | |
383 | + | |
384 | + HtmlExporterOutput outPut = new SimpleHtmlExporterOutput(out); | |
385 | + exporter.setExporterOutput(outPut); | |
386 | + | |
387 | + exporter.exportReport(); | |
388 | + } catch (Exception e) { | |
389 | + | |
390 | + e.printStackTrace(); | |
391 | + } | |
392 | + } | |
393 | + | |
394 | + | |
395 | + /** | |
396 | + * 批量打印pdf文件 | |
397 | + */ | |
398 | + public void exportBatchPdf(List<JasperPrint> jasperPrintList,String fileName) { | |
399 | + | |
400 | + JRPdfExporter exporter = new JRPdfExporter(); | |
401 | + try { | |
402 | + /** | |
403 | + * 注入打印模板 | |
404 | + */ | |
405 | + exporter.setExporterInput(SimpleExporterInput.getInstance(jasperPrintList)); | |
406 | + | |
407 | + OutputStream outStream = null; | |
408 | + | |
409 | + response.setContentType(getContentType(DocType.PDF)); | |
410 | + response.setHeader("Content-Disposition", | |
411 | + "attachment; filename*=UTF-8''" + URLEncoder.encode(fileName, "UTF-8")); | |
412 | + outStream = response.getOutputStream(); | |
413 | + | |
414 | + exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(outStream)); | |
415 | + //配置项 | |
416 | + SimplePdfExporterConfiguration configuration = new SimplePdfExporterConfiguration(); | |
417 | + // 是否批量打印 | |
418 | + configuration.setCreatingBatchModeBookmarks(true); | |
419 | + // 是否加密 | |
420 | + configuration.setEncrypted(false); | |
421 | + exporter.setConfiguration(configuration); | |
422 | + | |
423 | + exporter.exportReport(); | |
424 | + } catch (Exception e) { | |
425 | + e.printStackTrace(); | |
426 | + } | |
427 | + | |
428 | + } | |
429 | + | |
430 | + | |
431 | + | |
432 | + /** | |
433 | + * 千分位格式化数据 保留两位小数,且 ‘0 ’ 转为 ‘--’ | |
434 | + * | |
435 | + * @param obj | |
436 | + * @param fieldNames | |
437 | + * 需转化的属性 | |
438 | + * @return | |
439 | + */ | |
440 | + public Object toFormatNumber(Object obj, String[] fieldNames) { | |
441 | + Class clazz = (Class) obj.getClass(); | |
442 | + Field[] fs = clazz.getDeclaredFields(); | |
443 | + for (int i = 0; i < fs.length; i++) { | |
444 | + Field f = fs[i]; | |
445 | + // 设置些属性是可以访问的 | |
446 | + f.setAccessible(true); | |
447 | + String type = f.getType().toString(); | |
448 | + Object val = null; | |
449 | + | |
450 | + try { | |
451 | + for (String str : fieldNames) { | |
452 | + if (f.getName() == str) { | |
453 | + val = f.get(obj); | |
454 | + } | |
455 | + } | |
456 | + if (null != val) { | |
457 | + if (type.endsWith("String")) { | |
458 | + if (val.equals("0")) { | |
459 | + f.set(obj, "--"); | |
460 | + } else { | |
461 | + /* | |
462 | + * ; BigDecimal str=new BigDecimal((String) val); DecimalFormat df=new | |
463 | + * DecimalFormat(",###,##0.00"); | |
464 | + */ // 保留两位小数 | |
465 | + f.set(obj, this.toNumeber((String) val)); | |
466 | + } | |
467 | + | |
468 | + } else if (type.endsWith("int") || type.endsWith("Integer")) { | |
469 | + // System.out.println(f.getType()+"\t"); | |
470 | + } else { | |
471 | + // System.out.println(f.getType()+"\t"); | |
472 | + } | |
473 | + } | |
474 | + | |
475 | + } catch (Exception ex) { | |
476 | + LOGGER.error("千分位格式化数据错误"+ex.getMessage(), ex); | |
477 | + } | |
478 | + } | |
479 | + return obj; | |
480 | + } | |
481 | + | |
482 | + /** | |
483 | + * 转为万元保留小数点后两位 | |
484 | + * | |
485 | + * @param value | |
486 | + * @return | |
487 | + */ | |
488 | + private String toNumeber(String value) { | |
489 | + Double number = Double.valueOf(value) / 10000.00; | |
490 | + BigDecimal str = new BigDecimal(number); | |
491 | + DecimalFormat df = new DecimalFormat(",###,##0.00"); | |
492 | + | |
493 | + return df.format(str); | |
494 | + } | |
495 | + | |
496 | + | |
497 | +} | |
... | ... |
src/main/java/com/huaheng/pc/config/FilterConfigHeader/service/FilterConfigHeaderService.java
... | ... | @@ -9,6 +9,7 @@ import com.huaheng.pc.config.FilterConfigDetail.mapper.FilterConfigDetailMapper; |
9 | 9 | import com.huaheng.pc.config.FilterConfigHeader.domain.FilterConfigHeader; |
10 | 10 | import com.huaheng.pc.config.FilterConfigHeader.mapper.FilterConfigHeaderMapper; |
11 | 11 | import org.springframework.stereotype.Service; |
12 | +import org.springframework.transaction.annotation.Transactional; | |
12 | 13 | |
13 | 14 | import javax.annotation.Resource; |
14 | 15 | import java.util.List; |
... | ... | @@ -34,6 +35,7 @@ public class FilterConfigHeaderService extends ServiceImpl<FilterConfigHeaderMap |
34 | 35 | |
35 | 36 | |
36 | 37 | //复制规则配置 |
38 | + @Transactional | |
37 | 39 | public Boolean filterConfigCopy(String code,String newCode){ |
38 | 40 | int i = 0; |
39 | 41 | //复制规则配置主表 |
... | ... |
src/main/java/com/huaheng/pc/config/address/service/AddressServiceImpl.java
... | ... | @@ -10,6 +10,7 @@ import com.huaheng.common.utils.security.ShiroUtils; |
10 | 10 | import com.huaheng.pc.config.address.domain.Address; |
11 | 11 | import com.huaheng.pc.config.address.mapper.AddressMapper; |
12 | 12 | import org.springframework.stereotype.Service; |
13 | +import org.springframework.transaction.annotation.Transactional; | |
13 | 14 | |
14 | 15 | import java.util.List; |
15 | 16 | |
... | ... | @@ -42,6 +43,7 @@ public class AddressServiceImpl extends ServiceImpl<AddressMapper, Address> impl |
42 | 43 | * @return 是否复制成功 |
43 | 44 | */ |
44 | 45 | @Override |
46 | + @Transactional | |
45 | 47 | public Boolean addressCopy(String warehouseCode, String newWarehouseCode) { |
46 | 48 | log.trace("开始复制地址表"); |
47 | 49 | LambdaQueryWrapper<Address> lambdaQueryWrapper = Wrappers.lambdaQuery(); |
... | ... |
src/main/java/com/huaheng/pc/config/bom/controller/BomHeaderController.java
... | ... | @@ -72,7 +72,7 @@ public class BomHeaderController extends BaseController { |
72 | 72 | lambdaQueryWrapper.gt(StringUtils.isNotEmpty(createdBegin), BomHeader::getCreated, createdBegin) |
73 | 73 | .lt(StringUtils.isNotEmpty(createdEnd), BomHeader::getCreated, createdEnd) |
74 | 74 | .eq(StringUtils.isNotEmpty(bomHeader.getMaterialCode()), BomHeader::getMaterialCode, bomHeader.getMaterialCode()) |
75 | - .eq(StringUtils.isNotEmpty(bomHeader.getMaterialName()), BomHeader::getMaterialName, bomHeader.getMaterialName()) | |
75 | + .like(StringUtils.isNotEmpty(bomHeader.getMaterialName()), BomHeader::getMaterialName, bomHeader.getMaterialName()) | |
76 | 76 | .eq(StringUtils.isNotEmpty(bomHeader.getCompanyCode()), BomHeader::getCompanyCode, bomHeader.getCompanyCode()); |
77 | 77 | |
78 | 78 | if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){ |
... | ... |
src/main/java/com/huaheng/pc/config/carrier/controller/CarrierController.java
... | ... | @@ -64,7 +64,7 @@ public class CarrierController extends BaseController { |
64 | 64 | lambdaQueryWrapper.gt(StringUtils.isNotEmpty(createdBegin), Carrier::getCreated, createdBegin) |
65 | 65 | .lt(StringUtils.isNotEmpty(createdEnd), Carrier::getCreated, createdEnd) |
66 | 66 | .eq(StringUtils.isNotEmpty(carrier.getCode()), Carrier::getCode, carrier.getCode()) |
67 | - .eq(StringUtils.isNotEmpty(carrier.getName()), Carrier::getName, carrier.getName()) | |
67 | + .like(StringUtils.isNotEmpty(carrier.getName()), Carrier::getName, carrier.getName()) | |
68 | 68 | .eq(Carrier::getWarehouseCode, ShiroUtils.getWarehouseCode()); |
69 | 69 | |
70 | 70 | if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){ |
... | ... |
src/main/java/com/huaheng/pc/config/company/service/CompanyServiceImpl.java
... | ... | @@ -87,11 +87,11 @@ public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> impl |
87 | 87 | warehouseCompanyService.remove(lambdaQueryWrapper.eq(WarehouseCompany::getCompanyId, company.getId())); |
88 | 88 | //添加货主仓库关联 |
89 | 89 | WarehouseCompany record = new WarehouseCompany(); |
90 | - for (int i=0; i<warehouse.length-1; i++) | |
90 | + for (int i=0; i<warehouse.length; i++) | |
91 | 91 | { |
92 | 92 | record.setCompanyId(company.getId()); |
93 | 93 | record.setCompanyCode(company.getCode()); |
94 | - record.setWarehouseCode(warehouse[i+1]); | |
94 | + record.setWarehouseCode(warehouse[i]); | |
95 | 95 | warehouseCompanyService.save(record); |
96 | 96 | } |
97 | 97 | //更新货主 |
... | ... |
src/main/java/com/huaheng/pc/config/configValue/service/ConfigValueService.java
... | ... | @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
6 | 6 | import com.huaheng.pc.config.configValue.domain.ConfigValue; |
7 | 7 | import com.huaheng.pc.config.configValue.mapper.ConfigValueMapper; |
8 | 8 | import org.springframework.stereotype.Service; |
9 | +import org.springframework.transaction.annotation.Transactional; | |
9 | 10 | |
10 | 11 | import java.util.List; |
11 | 12 | @Service |
... | ... | @@ -17,6 +18,7 @@ public class ConfigValueService extends ServiceImpl<ConfigValueMapper, ConfigVal |
17 | 18 | * @param newWarehouseCode 新仓库编码 |
18 | 19 | * @return 是否复制成功 |
19 | 20 | */ |
21 | + @Transactional | |
20 | 22 | public boolean configValueCopy(String warehouseCode, String newWarehouseCode){ |
21 | 23 | log.trace("开始复制系统参数配置表"); |
22 | 24 | LambdaQueryWrapper<ConfigValue> lambdaQueryWrapper = Wrappers.lambdaQuery(); |
... | ... |
src/main/java/com/huaheng/pc/config/container/mapper/ContainerMapper.java
src/main/java/com/huaheng/pc/config/container/service/ContainerServiceImpl.java
... | ... | @@ -31,6 +31,7 @@ public class ContainerServiceImpl extends ServiceImpl<ContainerMapper, Container |
31 | 31 | @Override |
32 | 32 | public AjaxResult<List<Container>> insertContainer(String type, Integer quantity) { |
33 | 33 | List<Container> containerList = new ArrayList<>(); |
34 | + List<Container> containers =new ArrayList<>(); | |
34 | 35 | Integer number = getNumber(type); |
35 | 36 | for(int i=0; i<quantity; i++) { |
36 | 37 | number++; |
... | ... | @@ -45,10 +46,13 @@ public class ContainerServiceImpl extends ServiceImpl<ContainerMapper, Container |
45 | 46 | container.setEnable(true); |
46 | 47 | container.setCompanyCode(ShiroUtils.getCompanyCodeList().get(0)); |
47 | 48 | container.setWarehouseCode(ShiroUtils.getWarehouseCode()); |
48 | - this.save(container); | |
49 | - containerList.add(container); | |
49 | + containers.add(container); | |
50 | + if( i>0 && (i%1000==0 || i == quantity-1)){ | |
51 | + containerMapper.addList(containers); | |
52 | + containers = new ArrayList<>(); | |
53 | + } | |
50 | 54 | } |
51 | - return AjaxResult.success(containerList); | |
55 | + return AjaxResult.success(containers); | |
52 | 56 | } |
53 | 57 | |
54 | 58 | private Integer getNumber(String type) { |
... | ... |
src/main/java/com/huaheng/pc/config/containerType/controller/ContainerTypeController.java
... | ... | @@ -63,6 +63,7 @@ public class ContainerTypeController extends BaseController |
63 | 63 | lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin),ContainerType::getCreated, createdBegin) |
64 | 64 | .le(StringUtils.isNotEmpty(createdEnd), ContainerType::getCreated, createdEnd) |
65 | 65 | .eq(ContainerType::getWarehouseCode,ShiroUtils.getWarehouseCode()) |
66 | + .in(ContainerType::getCompanyCode,ShiroUtils.getCompanyCodeList()) | |
66 | 67 | .eq(StringUtils.isNotEmpty(containerType.getCode()),ContainerType::getCode,containerType.getCode()) |
67 | 68 | .like(StringUtils.isNotEmpty(containerType.getName()),ContainerType::getName,containerType.getName());; |
68 | 69 | |
... | ... |
src/main/java/com/huaheng/pc/config/containerType/service/ContainerTypeServiceImpl.java
... | ... | @@ -3,14 +3,17 @@ package com.huaheng.pc.config.containerType.service; |
3 | 3 | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
4 | 4 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
5 | 5 | import com.huaheng.common.utils.security.ShiroUtils; |
6 | +import com.huaheng.pc.config.configValue.domain.ConfigValue; | |
6 | 7 | import org.springframework.stereotype.Service; |
7 | - | |
8 | +import javax.annotation.Resource; | |
8 | 9 | import java.util.List; |
9 | 10 | import java.util.Map; |
10 | 11 | |
11 | 12 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
12 | 13 | import com.huaheng.pc.config.containerType.domain.ContainerType; |
13 | 14 | import com.huaheng.pc.config.containerType.mapper.ContainerTypeMapper; |
15 | +import com.huaheng.pc.config.containerType.service.ContainerTypeService; | |
16 | +import org.springframework.transaction.annotation.Transactional; | |
14 | 17 | |
15 | 18 | @Service("containerType") |
16 | 19 | public class ContainerTypeServiceImpl extends ServiceImpl<ContainerTypeMapper, ContainerType> implements ContainerTypeService{ |
... | ... |
src/main/java/com/huaheng/pc/config/customer/controller/CustomerController.java
... | ... | @@ -66,7 +66,7 @@ public class CustomerController extends BaseController { |
66 | 66 | lambdaQueryWrapper.gt(StringUtils.isNotEmpty(createdBegin), Customer::getCreated, createdBegin) |
67 | 67 | .lt(StringUtils.isNotEmpty(createdEnd), Customer::getCreated, createdEnd) |
68 | 68 | .eq(StringUtils.isNotEmpty(customer.getCode()), Customer::getCode, customer.getCode()) |
69 | - .eq(StringUtils.isNotEmpty(customer.getName()), Customer::getName, customer.getName()) | |
69 | + .like(StringUtils.isNotEmpty(customer.getName()), Customer::getName, customer.getName()) | |
70 | 70 | .eq(Customer::getDeleted, false) |
71 | 71 | .eq(Customer::getWarehouseCode, ShiroUtils.getWarehouseCode()) |
72 | 72 | .orderByDesc(Customer::getCreated); |
... | ... |
src/main/java/com/huaheng/pc/config/cycleCountPreference/service/CycleCountPreferenceService.java
... | ... | @@ -73,6 +73,7 @@ public class CycleCountPreferenceService extends ServiceImpl<CycleCountPreferenc |
73 | 73 | * @param newWarehouseCode 新仓库编码 |
74 | 74 | * @return 是否复制成功 |
75 | 75 | */ |
76 | + @Transactional | |
76 | 77 | public boolean cycleCountPreferenceCopy(String warehouseCode, String newWarehouseCode) { |
77 | 78 | log.trace("开始复盘点首选项表"); |
78 | 79 | LambdaQueryWrapper<CycleCountPreference> lambdaQueryWrapper = Wrappers.lambdaQuery(); |
... | ... |
src/main/java/com/huaheng/pc/config/excelTemplate/controller/excelTemplateController.java
... | ... | @@ -59,7 +59,7 @@ public class excelTemplateController extends BaseController { |
59 | 59 | Integer pageSize = pageDomain.getPageSize(); |
60 | 60 | lambdaQueryWrapper.gt(StringUtils.isNotEmpty(createdBegin), ExcelTemplate::getCreated, createdBegin) |
61 | 61 | .lt(StringUtils.isNotEmpty(createdEnd), ExcelTemplate::getCreated, createdEnd) |
62 | - .eq(StringUtils.isNotEmpty(excelTemplate.getName()), ExcelTemplate::getName, excelTemplate.getName()) | |
62 | + .like(StringUtils.isNotEmpty(excelTemplate.getName()), ExcelTemplate::getName, excelTemplate.getName()) | |
63 | 63 | .eq(ExcelTemplate::getWarehouseCode, ShiroUtils.getWarehouseCode()) |
64 | 64 | .in(ExcelTemplate::getCompanyCode, ShiroUtils.getCompanyCodeList()); |
65 | 65 | |
... | ... |
src/main/java/com/huaheng/pc/config/location/controller/LocationController.java
... | ... | @@ -76,6 +76,7 @@ public class LocationController extends BaseController { |
76 | 76 | Integer pageSize = pageDomain.getPageSize(); |
77 | 77 | lambdaQueryWrapper.gt(StringUtils.isNotEmpty(createdBegin), Location::getCreated, createdBegin) |
78 | 78 | .lt(StringUtils.isNotEmpty(createdEnd), Location::getCreated, createdEnd) |
79 | + .eq(Location::getWarehouseCode,ShiroUtils.getWarehouseCode()) | |
79 | 80 | .eq(StringUtils.isNotEmpty(location.getCode()), Location::getCode, location.getCode()) |
80 | 81 | .eq(StringUtils.isNotEmpty(location.getName()), Location::getName,location.getName()) |
81 | 82 | .eq(StringUtils.isNotEmpty(location.getContainerCode()), Location::getContainerCode, location.getContainerCode()) |
... | ... |
src/main/java/com/huaheng/pc/config/location/mapper/LocationMapper.java
... | ... | @@ -7,6 +7,8 @@ import org.apache.ibatis.annotations.Param; |
7 | 7 | import java.util.LinkedHashMap; |
8 | 8 | import java.util.List; |
9 | 9 | |
10 | +import java.util.List; | |
11 | + | |
10 | 12 | public interface LocationMapper extends BaseMapper<Location> { |
11 | 13 | |
12 | 14 | void updateStatus(@Param("warehouseCode") String warehouseCode, @Param("code") String code, @Param("status") String status); |
... | ... | @@ -15,8 +17,11 @@ public interface LocationMapper extends BaseMapper<Location> { |
15 | 17 | |
16 | 18 | Location position(String locatingRule); |
17 | 19 | |
20 | + int addList(@Param("locations") List<Location> locations); | |
21 | + | |
18 | 22 | Location getAllLocation(@Param("warehouseCode") String warehouseCode, @Param("type") String type); |
19 | 23 | |
20 | 24 | //库位利用率 |
21 | 25 | List<LinkedHashMap<String, Object>> getLocationProp(); |
26 | + | |
22 | 27 | } |
23 | 28 | \ No newline at end of file |
... | ... |
src/main/java/com/huaheng/pc/config/location/service/LocationServiceImpl.java
... | ... | @@ -142,7 +142,21 @@ public class LocationServiceImpl extends ServiceImpl<LocationMapper, Location> i |
142 | 142 | } |
143 | 143 | } |
144 | 144 | } |
145 | - return locationService.saveBatch(locations); | |
145 | + int num =0; | |
146 | + List<Location> locations1 = new ArrayList<>(); | |
147 | + if(locations.size() >1000 ){ | |
148 | + for(Location item : locations){ | |
149 | + num++; | |
150 | + locations1.add(item); | |
151 | + if(num % 1000 ==0 || num == locations.size()){ | |
152 | + locationMapper.addList(locations1); | |
153 | + locations1=new ArrayList<>(); | |
154 | + } | |
155 | + } | |
156 | + }else { | |
157 | + locationMapper.addList(locations); | |
158 | + } | |
159 | + return true; | |
146 | 160 | } |
147 | 161 | |
148 | 162 | @Override |
... | ... |
src/main/java/com/huaheng/pc/config/locationType/domain/LocationType.java
... | ... | @@ -39,19 +39,19 @@ public class LocationType implements Serializable { |
39 | 39 | * 长 |
40 | 40 | */ |
41 | 41 | @TableField(value = "length") |
42 | - private Integer length; | |
42 | + private String length; | |
43 | 43 | |
44 | 44 | /** |
45 | 45 | * 宽 |
46 | 46 | */ |
47 | 47 | @TableField(value = "width") |
48 | - private Integer width; | |
48 | + private String width; | |
49 | 49 | |
50 | 50 | /** |
51 | 51 | * 高 |
52 | 52 | */ |
53 | 53 | @TableField(value = "height") |
54 | - private Integer height; | |
54 | + private String height; | |
55 | 55 | |
56 | 56 | /** |
57 | 57 | * 最大重量 |
... | ... |
src/main/java/com/huaheng/pc/config/locationType/service/LocationTypeServiceImpl.java
... | ... | @@ -8,6 +8,7 @@ import com.huaheng.pc.config.cycleCountPreference.domain.CycleCountPreference; |
8 | 8 | import com.huaheng.pc.config.locationType.domain.LocationType; |
9 | 9 | import com.huaheng.pc.config.locationType.mapper.LocationTypeMapper; |
10 | 10 | import org.springframework.stereotype.Service; |
11 | +import org.springframework.transaction.annotation.Transactional; | |
11 | 12 | |
12 | 13 | import java.util.List; |
13 | 14 | import java.util.Map; |
... | ... | @@ -31,6 +32,7 @@ public class LocationTypeServiceImpl extends ServiceImpl<LocationTypeMapper, Loc |
31 | 32 | * @return 是否复制成功 |
32 | 33 | */ |
33 | 34 | @Override |
35 | + @Transactional | |
34 | 36 | public boolean locationTypeCopy(String warehouseCode, String newWarehouseCode) { |
35 | 37 | log.trace("开始复盘点首选项表"); |
36 | 38 | LambdaQueryWrapper<LocationType> lambdaQueryWrapper = Wrappers.lambdaQuery(); |
... | ... |
src/main/java/com/huaheng/pc/config/material/controller/MaterialController.java
... | ... | @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
4 | 4 | import com.baomidou.mybatisplus.core.metadata.IPage; |
5 | 5 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
6 | 6 | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
7 | +import com.huaheng.common.exception.service.ServiceException; | |
8 | +import com.huaheng.common.support.Convert; | |
7 | 9 | import com.huaheng.common.utils.StringUtils; |
8 | 10 | import com.huaheng.common.utils.poi.ExcelUtil; |
9 | 11 | import com.huaheng.common.utils.security.ShiroUtils; |
... | ... | @@ -16,6 +18,8 @@ import com.huaheng.framework.web.page.TableDataInfo; |
16 | 18 | import com.huaheng.framework.web.page.TableSupport; |
17 | 19 | import com.huaheng.pc.config.material.domain.Material; |
18 | 20 | import com.huaheng.pc.config.material.service.MaterialService; |
21 | +import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail; | |
22 | +import com.huaheng.pc.inventory.inventoryDetail.service.InventoryDetailService; | |
19 | 23 | import io.swagger.annotations.Api; |
20 | 24 | import io.swagger.annotations.ApiOperation; |
21 | 25 | import io.swagger.annotations.ApiParam; |
... | ... | @@ -37,6 +41,8 @@ public class MaterialController extends BaseController { |
37 | 41 | |
38 | 42 | @Resource |
39 | 43 | private MaterialService materialService; |
44 | + @Resource | |
45 | + private InventoryDetailService inventoryDetailService; | |
40 | 46 | |
41 | 47 | @RequiresPermissions("config:material:view") |
42 | 48 | @GetMapping() |
... | ... | @@ -66,11 +72,10 @@ public class MaterialController extends BaseController { |
66 | 72 | lambda.gt(StringUtils.isNotEmpty(createdBegin), Material::getCreated, createdBegin) |
67 | 73 | .lt(StringUtils.isNotEmpty(createdEnd), Material::getCreated, createdEnd) |
68 | 74 | .eq(StringUtils.isNotEmpty(material.getCode()), Material::getCode, material.getCode()) |
69 | - .eq(StringUtils.isNotEmpty(material.getName()), Material::getName, material.getName()) | |
75 | + .like(StringUtils.isNotEmpty(material.getName()), Material::getName, material.getName()) | |
70 | 76 | .eq(StringUtils.isNotEmpty(material.getType()), Material::getType, material.getType()) |
71 | 77 | .like(StringUtils.isNotEmpty(material.getSpec()), Material::getSpec, material.getSpec()) |
72 | 78 | .eq(Material::getWarehouseCode, ShiroUtils.getWarehouseCode()) |
73 | - .in(Material::getCompanyCode, ShiroUtils.getCompanyCodeList()) | |
74 | 79 | .eq(Material::getDeleted, false); |
75 | 80 | |
76 | 81 | if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){ |
... | ... | @@ -139,6 +144,16 @@ public class MaterialController extends BaseController { |
139 | 144 | if (StringUtils.isEmpty(ids)){ |
140 | 145 | return AjaxResult.error("id不能为空"); |
141 | 146 | } else { |
147 | + for(Integer id :Convert.toIntArray(ids)){ | |
148 | + Material material = materialService.getById(id); | |
149 | + LambdaQueryWrapper<InventoryDetail> lamb = Wrappers.lambdaQuery(); | |
150 | + lamb.eq(InventoryDetail::getWarehouseCode,ShiroUtils.getWarehouseCode()) | |
151 | + .eq(InventoryDetail::getMaterialCode,material.getCode()); | |
152 | + List<InventoryDetail> inventoryDetails = inventoryDetailService.list(lamb); | |
153 | + if(inventoryDetails != null || inventoryDetails.size() > 0){ | |
154 | + throw new ServiceException("id为"+id+"的物料有库存"); | |
155 | + } | |
156 | + } | |
142 | 157 | return materialService.removeByIds(ids); |
143 | 158 | } |
144 | 159 | } |
... | ... |
src/main/java/com/huaheng/pc/config/materialMultiple/controller/MaterialMultipleController.java
... | ... | @@ -14,6 +14,8 @@ import com.huaheng.framework.web.domain.AjaxResult; |
14 | 14 | import com.huaheng.framework.web.page.PageDomain; |
15 | 15 | import com.huaheng.framework.web.page.TableDataInfo; |
16 | 16 | import com.huaheng.framework.web.page.TableSupport; |
17 | +import com.huaheng.pc.config.material.domain.Material; | |
18 | +import com.huaheng.pc.config.material.service.MaterialService; | |
17 | 19 | import com.huaheng.pc.config.materialMultiple.domain.MaterialMultiple; |
18 | 20 | import com.huaheng.pc.config.materialMultiple.service.MaterialMultipleServiceImpl; |
19 | 21 | import io.swagger.annotations.ApiOperation; |
... | ... | @@ -33,6 +35,8 @@ public class MaterialMultipleController extends BaseController { |
33 | 35 | |
34 | 36 | @Resource |
35 | 37 | private MaterialMultipleServiceImpl materialMultipleService; |
38 | + @Resource | |
39 | + private MaterialService materialService; | |
36 | 40 | |
37 | 41 | private String prefix = "config/materialMultiple"; |
38 | 42 | |
... | ... | @@ -60,7 +64,7 @@ public class MaterialMultipleController extends BaseController { |
60 | 64 | lambdaQueryWrapper.gt(StringUtils.isNotEmpty(createdBegin), MaterialMultiple::getCreated, createdBegin) |
61 | 65 | .lt(StringUtils.isNotEmpty(createdEnd), MaterialMultiple::getCreated, createdEnd) |
62 | 66 | .eq(StringUtils.isNotEmpty(materialMultiple.getMaterialCode()), MaterialMultiple::getMaterialCode, materialMultiple.getMaterialCode()) |
63 | - .eq(StringUtils.isNotEmpty(materialMultiple.getMaterialName()), MaterialMultiple::getMaterialName, materialMultiple.getMaterialName()) | |
67 | + .like(StringUtils.isNotEmpty(materialMultiple.getMaterialName()), MaterialMultiple::getMaterialName, materialMultiple.getMaterialName()) | |
64 | 68 | .in(MaterialMultiple::getCompanyCode, ShiroUtils.getCompanyCodeList()) |
65 | 69 | .eq(MaterialMultiple::getWarehouseCode, ShiroUtils.getWarehouseCode()); |
66 | 70 | |
... | ... | @@ -92,15 +96,25 @@ public class MaterialMultipleController extends BaseController { |
92 | 96 | @PostMapping("/add") |
93 | 97 | @ResponseBody |
94 | 98 | public AjaxResult addSave(MaterialMultiple materialMultiple) { |
99 | + LambdaQueryWrapper<Material> lam = Wrappers.lambdaQuery(); | |
100 | + lam.eq(Material::getCode,materialMultiple.getMaterialCode()) | |
101 | + .eq(Material::getWarehouseCode,ShiroUtils.getWarehouseCode()); | |
102 | + Material material = materialService.getOne(lam); | |
103 | + if(material ==null){ | |
104 | + return AjaxResult.error("物料编码错误,系统没有此物料"); | |
105 | + } | |
95 | 106 | LambdaQueryWrapper<MaterialMultiple> lambda = Wrappers.lambdaQuery(); |
96 | 107 | lambda.eq(MaterialMultiple::getCompanyCode,materialMultiple.getCompanyCode()) |
97 | 108 | .eq(MaterialMultiple::getMaterialCode, materialMultiple) |
98 | 109 | .eq(MaterialMultiple::getWarehouseCode, ShiroUtils.getWarehouseCode()) |
99 | 110 | .eq(MaterialMultiple::getUnitId1, materialMultiple.getUnitId1()) |
100 | 111 | .eq(MaterialMultiple::getUnitId2, materialMultiple.getUnitId2()); |
101 | - if (materialMultipleService.list(lambda) == null){ | |
112 | + if (materialMultipleService.list(lambda) != null){ | |
102 | 113 | return AjaxResult.error("该信息已存在"); |
103 | 114 | } |
115 | + materialMultiple.setMaterialName(material.getName()); | |
116 | + materialMultiple.setMaterialSpec(material.getSpec()); | |
117 | + materialMultiple.setWarehouseCode(ShiroUtils.getWarehouseCode()); | |
104 | 118 | materialMultiple.setCreatedBy(ShiroUtils.getLoginName()); |
105 | 119 | materialMultiple.setLastUpdatedBy(ShiroUtils.getLoginName()); |
106 | 120 | return toAjax(materialMultipleService.save(materialMultiple)); |
... | ... |
src/main/java/com/huaheng/pc/config/materialType/controller/MaterialTypeController.java
... | ... | @@ -71,7 +71,7 @@ public class MaterialTypeController extends BaseController { |
71 | 71 | .eq(MaterialType::getWarehouseCode, ShiroUtils.getWarehouseCode()) |
72 | 72 | .eq(StringUtils.isNotEmpty(materialType.getCode()), |
73 | 73 | MaterialType::getCode, materialType.getCode()) |
74 | - .eq(StringUtils.isNotEmpty(materialType.getName()), MaterialType::getName, materialType.getName()); | |
74 | + .like(StringUtils.isNotEmpty(materialType.getName()), MaterialType::getName, materialType.getName()); | |
75 | 75 | |
76 | 76 | if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){ |
77 | 77 | /** |
... | ... |
src/main/java/com/huaheng/pc/config/materialUnit/controller/MaterialUnitController.java
... | ... | @@ -101,7 +101,8 @@ public class MaterialUnitController extends BaseController { |
101 | 101 | @ResponseBody |
102 | 102 | public AjaxResult addSave(MaterialUnit materialUnit) { |
103 | 103 | LambdaQueryWrapper<Material> lambdaQueryWrapper = Wrappers.lambdaQuery(); |
104 | - lambdaQueryWrapper.eq(Material::getCode, materialUnit.getMaterialCode()); | |
104 | + lambdaQueryWrapper.eq(Material::getCode, materialUnit.getMaterialCode()) | |
105 | + .eq(Material::getWarehouseCode,ShiroUtils.getWarehouseCode()); | |
105 | 106 | Material material = materialService.getOne(lambdaQueryWrapper); |
106 | 107 | if (material == null){ |
107 | 108 | return AjaxResult.error(" 该物料编码不存在"); |
... | ... | @@ -110,12 +111,13 @@ public class MaterialUnitController extends BaseController { |
110 | 111 | LambdaQueryWrapper<MaterialUnit> lambda = Wrappers.lambdaQuery(); |
111 | 112 | lambda.eq(MaterialUnit::getWarehouseCode, ShiroUtils.getWarehouseCode()) |
112 | 113 | .eq(MaterialUnit::getCompanyCode, materialUnit.getCompanyCode()) |
113 | - .eq(MaterialUnit::getMaterialCode, materialUnit.getMaterialCode()) | |
114 | - .eq(MaterialUnit::getUnit, materialUnit.getUnit()); | |
114 | + .eq(MaterialUnit::getWarehouseCode,ShiroUtils.getWarehouseCode()) | |
115 | + .eq(MaterialUnit::getMaterialCode, materialUnit.getMaterialCode()) | |
116 | + .eq(MaterialUnit::getUnit, materialUnit.getUnit()); | |
115 | 117 | if (materialUnitService.getOne(lambda) != null){ |
116 | 118 | return AjaxResult.error("当前新增记录已存在"); |
117 | 119 | } |
118 | - | |
120 | + materialUnit.setWarehouseCode(ShiroUtils.getWarehouseCode()); | |
119 | 121 | materialUnit.setMaterialName(material.getName()); |
120 | 122 | materialUnit.setMaterialSpec(material.getSpec()); |
121 | 123 | materialUnit.setCreatedBy(ShiroUtils.getLoginName()); |
... | ... |
src/main/java/com/huaheng/pc/config/receiptPreference/controller/ReceiptPreferenceController.java
... | ... | @@ -61,7 +61,7 @@ public class ReceiptPreferenceController extends BaseController { |
61 | 61 | .eq(ReceiptPreference::getWarehouseCode, ShiroUtils.getWarehouseCode()) |
62 | 62 | .eq(StringUtils.isNotEmpty(receiptPreference.getCode()), |
63 | 63 | ReceiptPreference::getCode, receiptPreference.getCode()) |
64 | - .eq(StringUtils.isNotEmpty(receiptPreference.getName()), | |
64 | + .like(StringUtils.isNotEmpty(receiptPreference.getName()), | |
65 | 65 | ReceiptPreference::getName, receiptPreference.getName()) |
66 | 66 | .like(StringUtils.isNotEmpty(receiptPreference.getReceivingFlow()), |
67 | 67 | ReceiptPreference::getReceivingFlow, receiptPreference.getReceivingFlow()); |
... | ... |
src/main/java/com/huaheng/pc/config/receiptPreference/service/ReceiptPreferenceService.java
... | ... | @@ -9,6 +9,8 @@ import java.util.List; |
9 | 9 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
10 | 10 | import com.huaheng.pc.config.receiptPreference.mapper.ReceiptPreferenceMapper; |
11 | 11 | import com.huaheng.pc.config.receiptPreference.domain.ReceiptPreference; |
12 | +import org.springframework.transaction.annotation.Transactional; | |
13 | + | |
12 | 14 | @Service |
13 | 15 | public class ReceiptPreferenceService extends ServiceImpl<ReceiptPreferenceMapper, ReceiptPreference> { |
14 | 16 | |
... | ... | @@ -19,6 +21,7 @@ public class ReceiptPreferenceService extends ServiceImpl<ReceiptPreferenceMappe |
19 | 21 | * @param newWarehouseCode 新仓库编码 |
20 | 22 | * @return 是否复制成功 |
21 | 23 | */ |
24 | + @Transactional | |
22 | 25 | public boolean receiptPreferenceCopy(String warehouseCode, String newWarehouseCode) { |
23 | 26 | log.trace("开始入库首选项表"); |
24 | 27 | LambdaQueryWrapper<ReceiptPreference> lambdaQueryWrapper = Wrappers.lambdaQuery(); |
... | ... |
src/main/java/com/huaheng/pc/config/receiptType/service/ReceiptTypeServiceImpl.java
... | ... | @@ -9,6 +9,7 @@ import com.huaheng.pc.config.address.domain.Address; |
9 | 9 | import com.huaheng.pc.config.receiptType.domain.ReceiptType; |
10 | 10 | import com.huaheng.pc.config.receiptType.mapper.ReceiptTypeMapper; |
11 | 11 | import org.springframework.stereotype.Service; |
12 | +import org.springframework.transaction.annotation.Transactional; | |
12 | 13 | |
13 | 14 | import java.util.List; |
14 | 15 | import java.util.Map; |
... | ... | @@ -31,6 +32,7 @@ public class ReceiptTypeServiceImpl extends ServiceImpl<ReceiptTypeMapper, Recei |
31 | 32 | * @return 是否复制成功 |
32 | 33 | */ |
33 | 34 | @Override |
35 | + @Transactional | |
34 | 36 | public Boolean receiptTypeCopy(String warehouseCode, String newWarehouseCode) { |
35 | 37 | log.trace("开始复制入库类型表"); |
36 | 38 | LambdaQueryWrapper<ReceiptType> lambdaQueryWrapper = Wrappers.lambdaQuery(); |
... | ... |
src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java
... | ... | @@ -19,6 +19,7 @@ import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader; |
19 | 19 | import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService; |
20 | 20 | import org.springframework.beans.factory.annotation.Autowired; |
21 | 21 | import org.springframework.stereotype.Service; |
22 | +import org.springframework.transaction.annotation.Transactional; | |
22 | 23 | |
23 | 24 | import java.util.ArrayList; |
24 | 25 | import java.util.List; |
... | ... | @@ -118,6 +119,7 @@ public class ShipmentPreferenceServiceImpl extends ServiceImpl<ShipmentPreferenc |
118 | 119 | * @return 是否复制成功 |
119 | 120 | */ |
120 | 121 | @Override |
122 | + @Transactional | |
121 | 123 | public boolean shipmentPreferenceCopy(String warehouseCode, String newWarehouseCode) { |
122 | 124 | log.trace("开始复制出库首选项表"); |
123 | 125 | LambdaQueryWrapper<ShipmentPreference> lambdaQueryWrapper = Wrappers.lambdaQuery(); |
... | ... |
src/main/java/com/huaheng/pc/config/shipmentType/service/ShipmentTypeServiceImpl.java
... | ... | @@ -7,6 +7,7 @@ import com.huaheng.pc.config.shipmentPreference.domain.ShipmentPreference; |
7 | 7 | import com.huaheng.pc.config.shipmentType.domain.ShipmentType; |
8 | 8 | import com.huaheng.pc.config.shipmentType.mapper.ShipmentTypeMapper; |
9 | 9 | import org.springframework.stereotype.Service; |
10 | +import org.springframework.transaction.annotation.Transactional; | |
10 | 11 | |
11 | 12 | import java.util.List; |
12 | 13 | |
... | ... | @@ -21,6 +22,7 @@ public class ShipmentTypeServiceImpl extends ServiceImpl<ShipmentTypeMapper, Shi |
21 | 22 | * @return 是否复制成功 |
22 | 23 | */ |
23 | 24 | @Override |
25 | + @Transactional | |
24 | 26 | public boolean ShipmentTypeCopy(String warehouseCode, String newWarehouseCode) { |
25 | 27 | log.trace("开始复制出库类型表"); |
26 | 28 | LambdaQueryWrapper<ShipmentType> lambdaQueryWrapper = Wrappers.lambdaQuery(); |
... | ... |
src/main/java/com/huaheng/pc/config/statusFlow/service/StatusFlowHeaderService.java
... | ... | @@ -26,6 +26,7 @@ public class StatusFlowHeaderService extends ServiceImpl<StatusFlowHeaderMapper, |
26 | 26 | public List<Map<String, Object>> flowList(String recordType){ |
27 | 27 | LambdaQueryWrapper<StatusFlowHeader> lambda = Wrappers.lambdaQuery(); |
28 | 28 | lambda.select(StatusFlowHeader::getCode, StatusFlowHeader::getName) |
29 | + .eq(StatusFlowHeader::getWarehouseCode,ShiroUtils.getWarehouseCode()) | |
29 | 30 | .eq(StatusFlowHeader::getRecordType, recordType); |
30 | 31 | return this.listMaps(lambda); |
31 | 32 | } |
... | ... |
src/main/java/com/huaheng/pc/config/supplier/controller/SupplierController.java
... | ... | @@ -66,7 +66,7 @@ public class SupplierController extends BaseController { |
66 | 66 | lambdaQueryWrapper.gt(StringUtils.isNotEmpty(createdBegin), Supplier::getCreated, createdBegin) |
67 | 67 | .lt(StringUtils.isNotEmpty(createdEnd), Supplier::getCreated, createdEnd) |
68 | 68 | .eq(StringUtils.isNotEmpty(supplier.getCode()), Supplier::getCode, supplier.getCode()) |
69 | - .eq(StringUtils.isNotEmpty(supplier.getName()), Supplier::getName, supplier.getName()) | |
69 | + .like(StringUtils.isNotEmpty(supplier.getName()), Supplier::getName, supplier.getName()) | |
70 | 70 | .eq(Supplier::getWarehouseCode, ShiroUtils.getWarehouseCode()) |
71 | 71 | .eq(Supplier::getDeleted,false) |
72 | 72 | .orderByDesc(Supplier::getCreated); |
... | ... |
src/main/java/com/huaheng/pc/config/warehouse/controller/WareHouseController.java
... | ... | @@ -169,7 +169,7 @@ public class WareHouseController extends BaseController { |
169 | 169 | return prefix+"/copy"; |
170 | 170 | } |
171 | 171 | /** |
172 | - * 修改保存仓库 | |
172 | + * 复制仓库 | |
173 | 173 | */ |
174 | 174 | @RequiresPermissions("config:warehouse:copy") |
175 | 175 | @Log(title = "通用-仓库管理", operating = "复制仓库", action = BusinessType.INSERT) |
... | ... |
src/main/java/com/huaheng/pc/config/warehouse/mapper/WarehouseMapper.java
... | ... | @@ -17,6 +17,9 @@ public interface WarehouseMapper extends BaseMapper<Warehouse> { |
17 | 17 | |
18 | 18 | int companyCopy(@Param("warehouseCode") String warehouseCode, @Param("newWarehouseCode")String newWarehouseCode); |
19 | 19 | |
20 | + int userCopy(@Param("warehouseCode") String warehouseCode, @Param("newWarehouseCode")String newWarehouseCode); | |
21 | + | |
22 | + | |
20 | 23 | List<Warehouse> selectListEntityByEqual(Warehouse condition); |
21 | 24 | |
22 | 25 | } |
23 | 26 | \ No newline at end of file |
... | ... |
src/main/java/com/huaheng/pc/config/warehouse/service/WarehouseServiceImpl.java
... | ... | @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
5 | 5 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
6 | 6 | import com.huaheng.common.exception.service.ServiceException; |
7 | 7 | import com.huaheng.pc.config.FilterConfigHeader.service.FilterConfigHeaderService; |
8 | +import com.huaheng.pc.config.address.domain.Address; | |
8 | 9 | import com.huaheng.pc.config.address.service.AddressService; |
9 | 10 | import com.huaheng.pc.config.configValue.service.ConfigValueService; |
10 | 11 | import com.huaheng.pc.config.containerType.service.ContainerTypeService; |
... | ... | @@ -20,6 +21,7 @@ import com.huaheng.pc.config.warehouse.mapper.WarehouseMapper; |
20 | 21 | import com.huaheng.pc.config.warehouseCompany.domain.WarehouseCompany; |
21 | 22 | import com.huaheng.pc.config.warehouseCompany.service.WarehouseCompanyService; |
22 | 23 | import com.huaheng.pc.config.waveMaster.service.WaveMasterService; |
24 | +import com.huaheng.pc.config.zone.service.ZoneService; | |
23 | 25 | import com.huaheng.pc.system.dict.service.IDictTypeService; |
24 | 26 | import com.huaheng.pc.system.menu.service.IMenuService; |
25 | 27 | import com.huaheng.pc.system.role.service.IRoleService; |
... | ... | @@ -68,6 +70,8 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper, Warehouse |
68 | 70 | private StatusFlowHeaderService statusFlowHeaderService; |
69 | 71 | @Autowired |
70 | 72 | private WaveMasterService waveMasterService; |
73 | + @Autowired | |
74 | + private ZoneService zoneService; | |
71 | 75 | |
72 | 76 | @Override |
73 | 77 | public List<Map<String, Object>> getWarehouseList(Integer id) { |
... | ... | @@ -79,15 +83,15 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper, Warehouse |
79 | 83 | List<Map<String, Object>> warehouseList = warehouseMapper.selectMaps(lambdaQueryWrapper); |
80 | 84 | |
81 | 85 | LambdaQueryWrapper<WarehouseCompany> lambdaQueryWrapper1 = Wrappers.lambdaQuery(); |
82 | - lambdaQueryWrapper1.select(WarehouseCompany::getCompanyCode, WarehouseCompany::getWarehouseCode) | |
86 | + lambdaQueryWrapper1.select(WarehouseCompany::getCompanyCode,WarehouseCompany::getWarehouseCode) | |
83 | 87 | .eq(WarehouseCompany::getCompanyId,id); |
84 | 88 | List<Map<String, Object>> warehouseCompanies = warehouseCompanyService.listMaps(lambdaQueryWrapper1); |
85 | 89 | |
86 | 90 | for(Map<String, Object> item : warehouseList){ |
87 | 91 | item.put("flag",false); |
88 | 92 | item.put("value", item.get("code").toString()); |
89 | - for (Map<String, Object> warehouseId:warehouseCompanies) { | |
90 | - if (item.get("code").toString().equals(warehouseId.get("warehouseCode").toString())) { | |
93 | + for (Map<String, Object> warehouseI:warehouseCompanies) { | |
94 | + if (item.get("code").toString().equals(warehouseI.get("warehouseCode").toString())) { | |
91 | 95 | item.put("flag",true); |
92 | 96 | break; |
93 | 97 | } |
... | ... | @@ -139,6 +143,10 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper, Warehouse |
139 | 143 | if (!locationTypeService.locationTypeCopy(warehouseCode, newWarehouseCode)){ |
140 | 144 | throw new ServiceException("复制库位类型表失败"); |
141 | 145 | } |
146 | + /* 复制库区表*/ | |
147 | + if (!zoneService.zoneCopy(warehouseCode, newWarehouseCode)){ | |
148 | + throw new ServiceException("复制库区类型表失败"); | |
149 | + } | |
142 | 150 | /* 复制盘点首选项表*/ |
143 | 151 | if (!cycleCountPreferenceService.cycleCountPreferenceCopy(warehouseCode, newWarehouseCode)){ |
144 | 152 | throw new ServiceException("复制盘点首选项表失败"); |
... | ... | @@ -163,6 +171,10 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper, Warehouse |
163 | 171 | if (warehouseMapper.companyCopy(warehouseCode, newWarehouseCode) < 1){ |
164 | 172 | throw new ServiceException("复制仓库货主关系表失败"); |
165 | 173 | } |
174 | + /* 复制仓库用户关系*/ | |
175 | + if (warehouseMapper.userCopy(warehouseCode, newWarehouseCode) < 1){ | |
176 | + throw new ServiceException("复制仓库货主关系表失败"); | |
177 | + } | |
166 | 178 | /* 复制角色*/ |
167 | 179 | if (!roleService.roleCopy(warehouseCode, newWarehouseCode)){ |
168 | 180 | throw new ServiceException("复制角色表失败"); |
... | ... |
src/main/java/com/huaheng/pc/config/waveMaster/service/WaveMasterService.java
... | ... | @@ -9,6 +9,7 @@ import com.huaheng.pc.config.waveFlowHeader.mapper.WaveFlowHeaderMapper; |
9 | 9 | import com.huaheng.pc.config.waveMaster.domain.WaveMaster; |
10 | 10 | import com.huaheng.pc.config.waveMaster.mapper.WaveMasterMapper; |
11 | 11 | import org.springframework.stereotype.Service; |
12 | +import org.springframework.transaction.annotation.Transactional; | |
12 | 13 | |
13 | 14 | import javax.annotation.Resource; |
14 | 15 | |
... | ... | @@ -25,6 +26,7 @@ public class WaveMasterService extends ServiceImpl<WaveMasterMapper, WaveMaster> |
25 | 26 | |
26 | 27 | |
27 | 28 | //复制波次配置 |
29 | + @Transactional | |
28 | 30 | public Boolean waveMasterCopy(String code,String newCode){ |
29 | 31 | int i = 0; |
30 | 32 | //复制波次配置 |
... | ... |
src/main/java/com/huaheng/pc/config/zone/mapper/ZoneMapper.java
... | ... | @@ -2,6 +2,10 @@ package com.huaheng.pc.config.zone.mapper; |
2 | 2 | |
3 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
4 | 4 | import com.huaheng.pc.config.zone.domain.Zone; |
5 | +import org.apache.ibatis.annotations.Param; | |
5 | 6 | |
6 | 7 | public interface ZoneMapper extends BaseMapper<Zone> { |
8 | + | |
9 | + /* 复制库区表*/ | |
10 | + int zoneCopy(@Param("code") String code,@Param("newCode") String newCode); | |
7 | 11 | } |
8 | 12 | \ No newline at end of file |
... | ... |
src/main/java/com/huaheng/pc/config/zone/service/ZoneService.java
src/main/java/com/huaheng/pc/config/zone/service/ZoneServiceImpl.java
... | ... | @@ -3,20 +3,39 @@ package com.huaheng.pc.config.zone.service; |
3 | 3 | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
4 | 4 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
5 | 5 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
6 | +import com.huaheng.common.exception.service.ServiceException; | |
6 | 7 | import com.huaheng.pc.config.zone.domain.Zone; |
7 | 8 | import com.huaheng.pc.config.zone.mapper.ZoneMapper; |
8 | 9 | import org.springframework.stereotype.Service; |
10 | +import org.springframework.transaction.annotation.Transactional; | |
9 | 11 | |
12 | +import javax.annotation.Resource; | |
10 | 13 | import java.util.List; |
11 | 14 | import java.util.Map; |
12 | 15 | |
13 | 16 | @Service("zone") |
14 | 17 | public class ZoneServiceImpl extends ServiceImpl<ZoneMapper, Zone> implements ZoneService { |
15 | 18 | |
19 | + @Resource | |
20 | + private ZoneMapper zoneMapper; | |
21 | + | |
16 | 22 | @Override |
23 | + @Transactional | |
17 | 24 | public List<Map<String, Object>> getZoneCodeList() { |
18 | 25 | LambdaQueryWrapper<Zone> lambda = Wrappers.lambdaQuery(); |
19 | 26 | lambda.select(Zone::getId, Zone::getCode, Zone::getName); |
20 | 27 | return this.listMaps(lambda); |
21 | 28 | } |
29 | + | |
30 | + @Override | |
31 | + @Transactional | |
32 | + public boolean zoneCopy(String warehouseCode, String newWarehouseCode) { | |
33 | + int i = 0; | |
34 | + //复制流程主表 | |
35 | + i = zoneMapper.zoneCopy(warehouseCode,newWarehouseCode); | |
36 | + if(i < 1){ | |
37 | + throw new ServiceException("复制菜单数据失败"); | |
38 | + } | |
39 | + return true; | |
40 | + } | |
22 | 41 | } |
... | ... |
src/main/java/com/huaheng/pc/jasper/JasperController.java
0 → 100644
1 | +package com.huaheng.pc.jasper; | |
2 | + | |
3 | +import com.huaheng.common.jasper.DocType; | |
4 | +import com.huaheng.common.jasper.DocTypeUtil; | |
5 | +import com.huaheng.common.jasper.JasperreportUtils; | |
6 | +import net.sf.jasperreports.engine.*; | |
7 | +import net.sf.jasperreports.engine.util.JRLoader; | |
8 | +import org.springframework.core.io.ClassPathResource; | |
9 | +import org.springframework.web.bind.annotation.*; | |
10 | + | |
11 | +import javax.annotation.Resource; | |
12 | +import javax.servlet.http.HttpServletRequest; | |
13 | +import javax.servlet.http.HttpServletResponse; | |
14 | +import javax.sql.DataSource; | |
15 | +import java.io.File; | |
16 | +import java.io.IOException; | |
17 | +import java.io.InputStream; | |
18 | +import java.io.OutputStream; | |
19 | +import java.sql.Connection; | |
20 | +import java.sql.SQLException; | |
21 | +import java.util.ArrayList; | |
22 | +import java.util.HashMap; | |
23 | +import java.util.List; | |
24 | +import java.util.Map; | |
25 | + | |
26 | +@RestController | |
27 | +@RequestMapping("/api/jasper") | |
28 | +public class JasperController { | |
29 | + | |
30 | + @Resource | |
31 | + private DataSource dataSource; | |
32 | + | |
33 | + | |
34 | + | |
35 | + /** | |
36 | + * 转换为pdf在浏览器上展示 | |
37 | + * | |
38 | + * @param reportName | |
39 | + * @param parameters | |
40 | + * @param response | |
41 | + * @throws SQLException | |
42 | + * @throws ClassNotFoundException | |
43 | + * @throws JRException | |
44 | + * @throws IOException | |
45 | + */ | |
46 | +// @GetMapping("/{reportName}") | |
47 | + public void getReportByParam( | |
48 | + @PathVariable("reportName") final String reportName, | |
49 | + @RequestParam(required = false) Map<String, Object> parameters, | |
50 | + HttpServletResponse response) throws Exception { | |
51 | + | |
52 | + parameters = parameters == null ? new HashMap<>() : parameters; | |
53 | + //获取文件流 | |
54 | + ClassPathResource resource = new ClassPathResource("jaspers" + File.separator + reportName + ".jasper"); | |
55 | + InputStream jasperStream = resource.getInputStream(); | |
56 | + | |
57 | + JasperReport jasperReport = (JasperReport) JRLoader.loadObject(jasperStream); | |
58 | + Connection connection =dataSource.getConnection(); | |
59 | + JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, connection); | |
60 | + response.setContentType("application/pdf"); | |
61 | + response.setHeader("Content-Disposition", "inline;"); | |
62 | + final OutputStream outputStream = response.getOutputStream(); | |
63 | + JasperExportManager.exportReportToPdfStream(jasperPrint, outputStream); | |
64 | + } | |
65 | + | |
66 | + | |
67 | + | |
68 | + | |
69 | + /** | |
70 | + * 转换为多种格式导出 | |
71 | + * | |
72 | + * @param reportName | |
73 | + * @param parameters | |
74 | + * @param response | |
75 | + * @throws SQLException | |
76 | + * @throws ClassNotFoundException | |
77 | + * @throws JRException | |
78 | + * @throws IOException | |
79 | + */ | |
80 | + @GetMapping("/{reportName}") | |
81 | + public void getReportByExcel( | |
82 | + @PathVariable("reportName") final String reportName, | |
83 | + @RequestParam(required = false) Map<String, Object> parameters, | |
84 | + HttpServletRequest request, | |
85 | + HttpServletResponse response) throws Exception { | |
86 | + | |
87 | + parameters = parameters == null ? new HashMap<>() : parameters; | |
88 | + String jasperPath ="C:/Users/Administrator/JaspersoftWorkspace/MyReports/" + reportName + ".jasper"; | |
89 | + String docType="xml"; | |
90 | + DocType type = DocTypeUtil.getEnumDocType(docType); | |
91 | + String fileName =reportName; | |
92 | + List list =new ArrayList(); | |
93 | + Connection connection =dataSource.getConnection(); | |
94 | + JasperreportUtils jasperreportUtils =new JasperreportUtils(request,response,request.getSession()); | |
95 | + jasperreportUtils.createExportDocument(type,jasperPath,parameters,reportName,connection); | |
96 | + | |
97 | + } | |
98 | + | |
99 | + | |
100 | +} | |
... | ... |
src/main/java/com/huaheng/pc/monitor/errorlog/domain/ErrorLog.java
1 | 1 | package com.huaheng.pc.monitor.errorlog.domain; |
2 | 2 | |
3 | +import com.baomidou.mybatisplus.annotation.IdType; | |
4 | +import com.baomidou.mybatisplus.annotation.TableField; | |
5 | +import com.baomidou.mybatisplus.annotation.TableId; | |
6 | +import com.baomidou.mybatisplus.annotation.TableName; | |
3 | 7 | import com.huaheng.framework.web.domain.BaseEntity; |
4 | 8 | import org.apache.commons.lang3.builder.ToStringBuilder; |
5 | 9 | import org.apache.commons.lang3.builder.ToStringStyle; |
... | ... | @@ -11,40 +15,58 @@ import java.util.Date; |
11 | 15 | * @author huaheng |
12 | 16 | * @date 2018-12-4 |
13 | 17 | */ |
18 | + | |
19 | +@TableName(value = "logging_event") | |
14 | 20 | public class ErrorLog extends BaseEntity { |
15 | 21 | |
16 | 22 | private static final long serialVersionUID = 1L; |
17 | 23 | //错误编号 |
24 | + @TableId(value = "event_id", type = IdType.AUTO) | |
18 | 25 | private Integer event_id; |
19 | 26 | //时间戳 |
27 | + @TableField(value = "timestmp") | |
20 | 28 | private Long timestmp; |
21 | 29 | //格式化错误信息 |
30 | + @TableField(value = "formatted_message") | |
22 | 31 | private String formatted_message; |
23 | 32 | //日志名 |
33 | + @TableField(value = "logger_name") | |
24 | 34 | private String logger_name; |
25 | 35 | //级别 |
36 | + @TableField(value = "level_string") | |
26 | 37 | private String level_string; |
27 | 38 | //线程名 |
39 | + @TableField(value = "thread_name") | |
28 | 40 | private String thread_name; |
29 | 41 | //参数标志 |
42 | + @TableField(value = "reference_flag") | |
30 | 43 | private String reference_flag; |
31 | 44 | //arg0参数 |
45 | + @TableField(value = "arg0") | |
32 | 46 | private String arg0; |
33 | 47 | //arg1参数 |
48 | + @TableField(value = "arg1") | |
34 | 49 | private String arg1; |
35 | 50 | //arg2参数 |
51 | + @TableField(value = "arg2") | |
36 | 52 | private String arg2; |
37 | 53 | //arg3参数 |
54 | + @TableField(value = "arg3") | |
38 | 55 | private String arg3; |
39 | 56 | //来电名称 |
57 | + @TableField(value = "caller_filename") | |
40 | 58 | private String caller_filename; |
41 | 59 | //来电类 |
60 | + @TableField(value = "caller_class") | |
42 | 61 | private String caller_class; |
43 | 62 | //来电方法 |
63 | + @TableField(value = "caller_method") | |
44 | 64 | private String caller_method; |
45 | 65 | //来电线程 |
66 | + @TableField(value = "caller_line") | |
46 | 67 | private String caller_line; |
47 | 68 | //发生时间 |
69 | + @TableField(value = "creatTime") | |
48 | 70 | private Date creatTime; |
49 | 71 | |
50 | 72 | public Integer getEvent_id() { |
... | ... |
src/main/java/com/huaheng/pc/monitor/job/controller/JobController.java
0 → 100644
1 | +package com.huaheng.pc.monitor.job.controller; | |
2 | + | |
3 | +import com.huaheng.common.utils.poi.ExcelUtil; | |
4 | +import com.huaheng.framework.aspectj.lang.annotation.Log; | |
5 | +import com.huaheng.framework.aspectj.lang.constant.BusinessType; | |
6 | +import com.huaheng.framework.web.controller.BaseController; | |
7 | +import com.huaheng.framework.web.domain.AjaxResult; | |
8 | +import com.huaheng.framework.web.page.TableDataInfo; | |
9 | +import com.huaheng.pc.monitor.job.domain.Job; | |
10 | +import com.huaheng.pc.monitor.job.service.IJobService; | |
11 | +import org.apache.shiro.authz.annotation.RequiresPermissions; | |
12 | +import org.springframework.beans.factory.annotation.Autowired; | |
13 | +import org.springframework.stereotype.Controller; | |
14 | +import org.springframework.ui.ModelMap; | |
15 | +import org.springframework.web.bind.annotation.*; | |
16 | + | |
17 | +import java.util.List; | |
18 | + | |
19 | +/** | |
20 | + * 调度任务信息操作处理 | |
21 | + * | |
22 | + * @author huaheng | |
23 | + */ | |
24 | +@Controller | |
25 | +@RequestMapping("/monitor/job") | |
26 | +public class JobController extends BaseController | |
27 | +{ | |
28 | + private String prefix = "monitor/job"; | |
29 | + | |
30 | + @Autowired | |
31 | + private IJobService jobService; | |
32 | + | |
33 | + @RequiresPermissions("monitor:job:view") | |
34 | + @GetMapping() | |
35 | + public String job() | |
36 | + { | |
37 | + return prefix + "/job"; | |
38 | + } | |
39 | + | |
40 | + @RequiresPermissions("monitor:job:list") | |
41 | + @Log(title = "系统监控-定时任务", operating = "查看定时任务", action = BusinessType.GRANT) | |
42 | + @PostMapping("/list") | |
43 | + @ResponseBody | |
44 | + public TableDataInfo list(Job job) | |
45 | + { | |
46 | + startPage(); | |
47 | + List<Job> list = jobService.selectJobList(job); | |
48 | + return getDataTable(list); | |
49 | + } | |
50 | + | |
51 | + @Log(title = "系统监控-定时任务", operating = "导出定时任务", action = BusinessType.EXPORT) | |
52 | + @RequiresPermissions("monitor:job:export") | |
53 | + @PostMapping("/export") | |
54 | + @ResponseBody | |
55 | + public AjaxResult export(Job job) throws Exception | |
56 | + { | |
57 | + try | |
58 | + { | |
59 | + List<Job> list = jobService.selectJobList(job); | |
60 | + ExcelUtil<Job> util = new ExcelUtil<Job>(Job.class); | |
61 | + return util.exportExcel(list, "job"); | |
62 | + } | |
63 | + catch (Exception e) | |
64 | + { | |
65 | + return error("导出Excel失败,请联系网站管理员!"); | |
66 | + } | |
67 | + } | |
68 | + | |
69 | + @Log(title = "系统监控-定时任务", operating = "删除定时任务", action = BusinessType.DELETE) | |
70 | + @RequiresPermissions("monitor:job:remove") | |
71 | + @PostMapping("/remove") | |
72 | + @ResponseBody | |
73 | + public AjaxResult remove(String ids) | |
74 | + { | |
75 | + try | |
76 | + { | |
77 | + jobService.deleteJobByIds(ids); | |
78 | + return success(); | |
79 | + } | |
80 | + catch (Exception e) | |
81 | + { | |
82 | + e.printStackTrace(); | |
83 | + return error(e.getMessage()); | |
84 | + } | |
85 | + } | |
86 | + | |
87 | + /** | |
88 | + * 任务调度状态修改 | |
89 | + */ | |
90 | + @Log(title = "系统监控-定时任务", operating = "启用或暂停定时任务", action = BusinessType.UPDATE) | |
91 | + @RequiresPermissions("monitor:job:changeStatus") | |
92 | + @PostMapping("/changeStatus") | |
93 | + @ResponseBody | |
94 | + public AjaxResult changeStatus(Job job) | |
95 | + { | |
96 | + return toAjax(jobService.changeStatus(job)); | |
97 | + } | |
98 | + | |
99 | + /** | |
100 | + * 任务调度立即执行一次 | |
101 | + */ | |
102 | + @Log(title = "系统监控-定时任务", operating = "执行定时任务", action = BusinessType.UPDATE) | |
103 | + @RequiresPermissions("monitor:job:start") | |
104 | + @PostMapping("/run") | |
105 | + @ResponseBody | |
106 | + public AjaxResult run(Job job) | |
107 | + { | |
108 | + return toAjax(jobService.run(job)); | |
109 | + } | |
110 | + | |
111 | + /** | |
112 | + * 新增调度 | |
113 | + */ | |
114 | + @GetMapping("/add") | |
115 | + public String add() | |
116 | + { | |
117 | + return prefix + "/add"; | |
118 | + } | |
119 | + | |
120 | + /** | |
121 | + * 新增保存调度 | |
122 | + */ | |
123 | + @Log(title = "系统监控-定时任务", operating = "新增定时任务", action = BusinessType.INSERT) | |
124 | + @RequiresPermissions("monitor:job:add") | |
125 | + @PostMapping("/add") | |
126 | + @ResponseBody | |
127 | + public AjaxResult addSave(Job job) | |
128 | + { | |
129 | + return toAjax(jobService.insertJobCron(job)); | |
130 | + } | |
131 | + | |
132 | + /** | |
133 | + * 修改调度 | |
134 | + */ | |
135 | + @GetMapping("/edit/{id}") | |
136 | + public String edit(@PathVariable("id") Long id, ModelMap mmap) | |
137 | + { | |
138 | + mmap.put("job", jobService.selectJobById(id)); | |
139 | + return prefix + "/edit"; | |
140 | + } | |
141 | + | |
142 | + /** | |
143 | + * 修改保存调度 | |
144 | + */ | |
145 | + @Log(title = "系统监控-定时任务", operating = "修改定时任务", action = BusinessType.UPDATE) | |
146 | + @RequiresPermissions("monitor:job:edit") | |
147 | + @PostMapping("/edit") | |
148 | + @ResponseBody | |
149 | + public AjaxResult editSave(Job job) | |
150 | + { | |
151 | + return toAjax(jobService.updateJobCron(job)); | |
152 | + } | |
153 | +} | |
... | ... |
src/main/java/com/huaheng/pc/monitor/job/controller/JobLogController.java
0 → 100644
1 | +package com.huaheng.pc.monitor.job.controller; | |
2 | + | |
3 | +import com.huaheng.common.utils.poi.ExcelUtil; | |
4 | +import com.huaheng.framework.aspectj.lang.annotation.Log; | |
5 | +import com.huaheng.framework.aspectj.lang.constant.BusinessType; | |
6 | +import com.huaheng.framework.web.controller.BaseController; | |
7 | +import com.huaheng.framework.web.domain.AjaxResult; | |
8 | +import com.huaheng.framework.web.page.TableDataInfo; | |
9 | +import com.huaheng.pc.monitor.job.domain.JobLog; | |
10 | +import com.huaheng.pc.monitor.job.service.IJobLogService; | |
11 | +import org.apache.shiro.authz.annotation.RequiresPermissions; | |
12 | +import org.springframework.beans.factory.annotation.Autowired; | |
13 | +import org.springframework.stereotype.Controller; | |
14 | +import org.springframework.web.bind.annotation.GetMapping; | |
15 | +import org.springframework.web.bind.annotation.PostMapping; | |
16 | +import org.springframework.web.bind.annotation.RequestMapping; | |
17 | +import org.springframework.web.bind.annotation.ResponseBody; | |
18 | + | |
19 | +import java.util.List; | |
20 | + | |
21 | +/** | |
22 | + * 调度日志操作处理 | |
23 | + * | |
24 | + * @author huaheng | |
25 | + */ | |
26 | +@Controller | |
27 | +@RequestMapping("/monitor/jobLog") | |
28 | +public class JobLogController extends BaseController | |
29 | +{ | |
30 | + private String prefix = "monitor/job"; | |
31 | + | |
32 | + @Autowired | |
33 | + private IJobLogService jobLogService; | |
34 | + | |
35 | + @RequiresPermissions("monitor:jobLog:view") | |
36 | + @GetMapping() | |
37 | + public String jobLog() | |
38 | + { | |
39 | + return prefix + "/jobLog"; | |
40 | + } | |
41 | + | |
42 | + @RequiresPermissions("monitor:jobLog:list") | |
43 | + @PostMapping("/list") | |
44 | + @ResponseBody | |
45 | + public TableDataInfo list(JobLog jobLog) | |
46 | + { | |
47 | + startPage(); | |
48 | + List<JobLog> list = jobLogService.selectJobLogList(jobLog); | |
49 | + return getDataTable(list); | |
50 | + } | |
51 | + | |
52 | + @Log(title = "系统监控-定时任务", operating = "导出调度日志", action = BusinessType.EXPORT) | |
53 | + @RequiresPermissions("monitor:jobLog:export") | |
54 | + @PostMapping("/export") | |
55 | + @ResponseBody | |
56 | + public AjaxResult export(JobLog jobLog) throws Exception | |
57 | + { | |
58 | + try | |
59 | + { | |
60 | + List<JobLog> list = jobLogService.selectJobLogList(jobLog); | |
61 | + ExcelUtil<JobLog> util = new ExcelUtil<JobLog>(JobLog.class); | |
62 | + return util.exportExcel(list, "jobLog"); | |
63 | + } | |
64 | + catch (Exception e) | |
65 | + { | |
66 | + return error("导出Excel失败,请联系网站管理员!"); | |
67 | + } | |
68 | + } | |
69 | + | |
70 | + @Log(title = "系统监控-定时任务", operating = "删除调度日志", action = BusinessType.DELETE) | |
71 | + @RequiresPermissions("monitor:jobLog:remove") | |
72 | + @PostMapping("/remove") | |
73 | + @ResponseBody | |
74 | + public AjaxResult remove(String ids) | |
75 | + { | |
76 | + return toAjax(jobLogService.deleteJobLogByIds(ids)); | |
77 | + } | |
78 | +} | |
... | ... |
src/main/java/com/huaheng/pc/monitor/job/domain/Job.java
0 → 100644
1 | +package com.huaheng.pc.monitor.job.domain; | |
2 | + | |
3 | +import com.baomidou.mybatisplus.annotation.IdType; | |
4 | +import com.baomidou.mybatisplus.annotation.TableField; | |
5 | +import com.baomidou.mybatisplus.annotation.TableId; | |
6 | +import com.baomidou.mybatisplus.annotation.TableName; | |
7 | +import com.fasterxml.jackson.annotation.JsonFormat; | |
8 | +import com.google.common.collect.Maps; | |
9 | +import com.huaheng.common.constant.ScheduleConstants; | |
10 | +import com.huaheng.framework.aspectj.lang.annotation.Excel; | |
11 | + | |
12 | +import java.io.Serializable; | |
13 | +import java.util.Date; | |
14 | +import java.util.Map; | |
15 | + | |
16 | +/** | |
17 | + * 定时任务调度信息 sys_job | |
18 | + * | |
19 | + * @author huaheng | |
20 | + */ | |
21 | +@TableName(value = "sys_job") | |
22 | +public class Job implements Serializable | |
23 | +{ | |
24 | + private static final long serialVersionUID = 1L; | |
25 | + | |
26 | + /** 任务ID */ | |
27 | + @Excel(name = "任务序号") | |
28 | + @TableId(value = "id", type = IdType.AUTO) | |
29 | + private Long id; | |
30 | + | |
31 | + /** 任务名称 */ | |
32 | + @Excel(name = "任务名称") | |
33 | + @TableField(value = "jobName") | |
34 | + private String jobName; | |
35 | + | |
36 | + /** 任务组名 */ | |
37 | + @Excel(name = "任务组名") | |
38 | + @TableField(value = "jobGroup") | |
39 | + private String jobGroup; | |
40 | + | |
41 | + /** 任务方法 */ | |
42 | + @Excel(name = "任务方法") | |
43 | + @TableField(value = "methodName") | |
44 | + private String methodName; | |
45 | + | |
46 | + /** 方法参数 */ | |
47 | + @Excel(name = "方法参数") | |
48 | + @TableField(value = "methodParams") | |
49 | + private String methodParams; | |
50 | + | |
51 | + /** cron执行表达式 */ | |
52 | + @Excel(name = "执行表达式 ") | |
53 | + @TableField(value = "cronExpression") | |
54 | + private String cronExpression; | |
55 | + | |
56 | + /** cron计划策略 */ | |
57 | + @Excel(name = "计划策略 ") | |
58 | + @TableField(value = "misfirePolicy") | |
59 | + private String misfirePolicy = ScheduleConstants.MISFIRE_DEFAULT; | |
60 | + | |
61 | + /** 任务状态(0正常 1暂停) */ | |
62 | + @Excel(name = "任务状态") | |
63 | + @TableField(value = "status") | |
64 | + private String status; | |
65 | + | |
66 | + /** 搜索值 */ | |
67 | + private String searchValue; | |
68 | + | |
69 | + /** 创建者 */ | |
70 | + @TableField(value = "createBy") | |
71 | + private String createBy; | |
72 | + | |
73 | + /** 创建时间 */ | |
74 | + @TableField(value = "createTime") | |
75 | + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") | |
76 | + private Date createTime; | |
77 | + | |
78 | + /** 更新者 */ | |
79 | + @TableField(value = "updateBy") | |
80 | + private String updateBy; | |
81 | + | |
82 | + /** 更新时间 */ | |
83 | + @TableField(value = "updateTime") | |
84 | + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") | |
85 | + private Date updateTime; | |
86 | + | |
87 | + /** 备注 */ | |
88 | + @TableField(value = "remark") | |
89 | +// @TableField(exist=false) | |
90 | + private String remark; | |
91 | + | |
92 | + /** 请求参数 */ | |
93 | + private Map<String, Object> params; | |
94 | + | |
95 | + public Long getId() | |
96 | + { | |
97 | + return id; | |
98 | + } | |
99 | + | |
100 | + public void setId(Long id) | |
101 | + { | |
102 | + this.id = id; | |
103 | + } | |
104 | + | |
105 | + public String getJobName() | |
106 | + { | |
107 | + return jobName; | |
108 | + } | |
109 | + | |
110 | + public void setJobName(String jobName) | |
111 | + { | |
112 | + this.jobName = jobName; | |
113 | + } | |
114 | + | |
115 | + public String getJobGroup() | |
116 | + { | |
117 | + return jobGroup; | |
118 | + } | |
119 | + | |
120 | + public void setJobGroup(String jobGroup) | |
121 | + { | |
122 | + this.jobGroup = jobGroup; | |
123 | + } | |
124 | + | |
125 | + public String getMethodName() | |
126 | + { | |
127 | + return methodName; | |
128 | + } | |
129 | + | |
130 | + public void setMethodName(String methodName) | |
131 | + { | |
132 | + this.methodName = methodName; | |
133 | + } | |
134 | + | |
135 | + public String getMethodParams() | |
136 | + { | |
137 | + return methodParams; | |
138 | + } | |
139 | + | |
140 | + public void setMethodParams(String methodParams) | |
141 | + { | |
142 | + this.methodParams = methodParams; | |
143 | + } | |
144 | + | |
145 | + public String getCronExpression() | |
146 | + { | |
147 | + return cronExpression; | |
148 | + } | |
149 | + | |
150 | + public void setCronExpression(String cronExpression) | |
151 | + { | |
152 | + this.cronExpression = cronExpression; | |
153 | + } | |
154 | + | |
155 | + public String getMisfirePolicy() | |
156 | + { | |
157 | + return misfirePolicy; | |
158 | + } | |
159 | + | |
160 | + public void setMisfirePolicy(String misfirePolicy) | |
161 | + { | |
162 | + this.misfirePolicy = misfirePolicy; | |
163 | + } | |
164 | + | |
165 | + public String getStatus() | |
166 | + { | |
167 | + return status; | |
168 | + } | |
169 | + | |
170 | + public void setStatus(String status) | |
171 | + { | |
172 | + this.status = status; | |
173 | + } | |
174 | + | |
175 | + public String getSearchValue() | |
176 | + { | |
177 | + return searchValue; | |
178 | + } | |
179 | + | |
180 | + public void setSearchValue(String searchValue) | |
181 | + { | |
182 | + this.searchValue = searchValue; | |
183 | + } | |
184 | + | |
185 | + public String getCreateBy() | |
186 | + { | |
187 | + return createBy; | |
188 | + } | |
189 | + | |
190 | + public void setCreateBy(String createBy) | |
191 | + { | |
192 | + this.createBy = createBy; | |
193 | + } | |
194 | + | |
195 | + public Date getCreateTime() | |
196 | + { | |
197 | + return createTime; | |
198 | + } | |
199 | + | |
200 | + public void setCreateTime(Date createTime) | |
201 | + { | |
202 | + this.createTime = createTime; | |
203 | + } | |
204 | + | |
205 | + public String getUpdateBy() | |
206 | + { | |
207 | + return updateBy; | |
208 | + } | |
209 | + | |
210 | + public void setUpdateBy(String updateBy) | |
211 | + { | |
212 | + this.updateBy = updateBy; | |
213 | + } | |
214 | + | |
215 | + public Date getUpdateTime() | |
216 | + { | |
217 | + return updateTime; | |
218 | + } | |
219 | + | |
220 | + public void setUpdateTime(Date updateTime) | |
221 | + { | |
222 | + this.updateTime = updateTime; | |
223 | + } | |
224 | + | |
225 | + public String getRemark() | |
226 | + { | |
227 | + return remark; | |
228 | + } | |
229 | + | |
230 | + public void setRemark(String remark) | |
231 | + { | |
232 | + this.remark = remark; | |
233 | + } | |
234 | + | |
235 | + public Map<String, Object> getParams() { if (params == null) { params = Maps.newHashMap(); } return params; } | |
236 | + | |
237 | + public void setParams(Map<String, Object> params) | |
238 | + { | |
239 | + this.params = params; | |
240 | + } | |
241 | + | |
242 | + @Override | |
243 | + public String toString() | |
244 | + { | |
245 | + return "Job [id=" + id + ", jobName=" + jobName + ", jobGroup=" + jobGroup + ", methodName=" + methodName | |
246 | + + ", methodParams=" + methodParams + ", cronExpression=" + cronExpression + ", status=" + status + "]"; | |
247 | + } | |
248 | + | |
249 | +} | |
... | ... |
src/main/java/com/huaheng/pc/monitor/job/domain/JobLog.java
0 → 100644
1 | +package com.huaheng.pc.monitor.job.domain; | |
2 | + | |
3 | +import com.baomidou.mybatisplus.annotation.IdType; | |
4 | +import com.baomidou.mybatisplus.annotation.TableField; | |
5 | +import com.baomidou.mybatisplus.annotation.TableId; | |
6 | +import com.baomidou.mybatisplus.annotation.TableName; | |
7 | +import com.fasterxml.jackson.annotation.JsonFormat; | |
8 | +import com.google.common.collect.Maps; | |
9 | +import com.huaheng.framework.aspectj.lang.annotation.Excel; | |
10 | + | |
11 | +import java.util.Date; | |
12 | +import java.util.Map; | |
13 | + | |
14 | +/** | |
15 | + * 定时任务调度日志信息 sys_job_log | |
16 | + * | |
17 | + * @author huaheng | |
18 | + */ | |
19 | +@TableName(value = "sys_job_log") | |
20 | +public class JobLog | |
21 | +{ | |
22 | + private static final long serialVersionUID = 1L; | |
23 | + | |
24 | + /** ID */ | |
25 | + @Excel(name = "日志序号") | |
26 | + @TableId(value = "id", type = IdType.AUTO) | |
27 | + private Integer id; | |
28 | + | |
29 | + /** 任务名称 */ | |
30 | + @Excel(name = "任务名称") | |
31 | + @TableField(value = "jobName") | |
32 | + private String jobName; | |
33 | + | |
34 | + /** 任务组名 */ | |
35 | + @Excel(name = "任务组名") | |
36 | + @TableField(value = "jobGroup") | |
37 | + private String jobGroup; | |
38 | + | |
39 | + /** 任务方法 */ | |
40 | + @Excel(name = "任务方法") | |
41 | + @TableField(value = "methodName") | |
42 | + private String methodName; | |
43 | + | |
44 | + /** 方法参数 */ | |
45 | + @Excel(name = "方法参数") | |
46 | + @TableField(value = "methodParams") | |
47 | + private String methodParams; | |
48 | + | |
49 | + /** 日志信息 */ | |
50 | + @Excel(name = "日志信息") | |
51 | + @TableField(value = "jobMessage") | |
52 | + private String jobMessage; | |
53 | + | |
54 | + /** 执行状态(0正常 1失败) */ | |
55 | + @Excel(name = "执行状态") | |
56 | + @TableField(value = "status") | |
57 | + private String status; | |
58 | + | |
59 | + /** 异常信息 */ | |
60 | + @Excel(name = "异常信息") | |
61 | + @TableField(value = "exceptionInfo") | |
62 | + private String exceptionInfo; | |
63 | + | |
64 | + /** 搜索值 */ | |
65 | + private String searchValue; | |
66 | + | |
67 | + /** 创建者 */ | |
68 | + private String createBy; | |
69 | + | |
70 | + /** 创建时间 */ | |
71 | + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") | |
72 | + @TableField(value = "createTime") | |
73 | + private Date createTime; | |
74 | + | |
75 | + /** 更新者 */ | |
76 | + private String updateBy; | |
77 | + | |
78 | + /** 更新时间 */ | |
79 | + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") | |
80 | + private Date updateTime; | |
81 | + | |
82 | + /** 备注 */ | |
83 | +// @TableField(exist=false) | |
84 | + private String remark; | |
85 | + | |
86 | + /** 请求参数 */ | |
87 | + private Map<String, Object> params; | |
88 | + | |
89 | + public Integer getId() { | |
90 | + return id; | |
91 | + } | |
92 | + | |
93 | + public void setId(Integer id) { | |
94 | + this.id = id; | |
95 | + } | |
96 | + | |
97 | + public String getJobName() | |
98 | + { | |
99 | + return jobName; | |
100 | + } | |
101 | + | |
102 | + public void setJobName(String jobName) | |
103 | + { | |
104 | + this.jobName = jobName; | |
105 | + } | |
106 | + | |
107 | + public String getJobGroup() | |
108 | + { | |
109 | + return jobGroup; | |
110 | + } | |
111 | + | |
112 | + public void setJobGroup(String jobGroup) | |
113 | + { | |
114 | + this.jobGroup = jobGroup; | |
115 | + } | |
116 | + | |
117 | + public String getMethodName() | |
118 | + { | |
119 | + return methodName; | |
120 | + } | |
121 | + | |
122 | + public void setMethodName(String methodName) | |
123 | + { | |
124 | + this.methodName = methodName; | |
125 | + } | |
126 | + | |
127 | + public String getMethodParams() | |
128 | + { | |
129 | + return methodParams; | |
130 | + } | |
131 | + | |
132 | + public void setMethodParams(String methodParams) | |
133 | + { | |
134 | + this.methodParams = methodParams; | |
135 | + } | |
136 | + | |
137 | + public String getJobMessage() | |
138 | + { | |
139 | + return jobMessage; | |
140 | + } | |
141 | + | |
142 | + public void setJobMessage(String jobMessage) | |
143 | + { | |
144 | + this.jobMessage = jobMessage; | |
145 | + } | |
146 | + | |
147 | + public String getStatus() | |
148 | + { | |
149 | + return status; | |
150 | + } | |
151 | + | |
152 | + public void setStatus(String status) | |
153 | + { | |
154 | + this.status = status; | |
155 | + } | |
156 | + | |
157 | + public String getExceptionInfo() | |
158 | + { | |
159 | + return exceptionInfo; | |
160 | + } | |
161 | + | |
162 | + public void setExceptionInfo(String exceptionInfo) | |
163 | + { | |
164 | + this.exceptionInfo = exceptionInfo; | |
165 | + } | |
166 | + | |
167 | + public String getSearchValue() | |
168 | + { | |
169 | + return searchValue; | |
170 | + } | |
171 | + | |
172 | + public void setSearchValue(String searchValue) | |
173 | + { | |
174 | + this.searchValue = searchValue; | |
175 | + } | |
176 | + | |
177 | + public String getCreateBy() | |
178 | + { | |
179 | + return createBy; | |
180 | + } | |
181 | + | |
182 | + public void setCreateBy(String createBy) | |
183 | + { | |
184 | + this.createBy = createBy; | |
185 | + } | |
186 | + | |
187 | + public Date getCreateTime() | |
188 | + { | |
189 | + return createTime; | |
190 | + } | |
191 | + | |
192 | + public void setCreateTime(Date createTime) | |
193 | + { | |
194 | + this.createTime = createTime; | |
195 | + } | |
196 | + | |
197 | + public String getUpdateBy() | |
198 | + { | |
199 | + return updateBy; | |
200 | + } | |
201 | + | |
202 | + public void setUpdateBy(String updateBy) | |
203 | + { | |
204 | + this.updateBy = updateBy; | |
205 | + } | |
206 | + | |
207 | + public Date getUpdateTime() | |
208 | + { | |
209 | + return updateTime; | |
210 | + } | |
211 | + | |
212 | + public void setUpdateTime(Date updateTime) | |
213 | + { | |
214 | + this.updateTime = updateTime; | |
215 | + } | |
216 | + | |
217 | + public String getRemark() | |
218 | + { | |
219 | + return remark; | |
220 | + } | |
221 | + | |
222 | + public void setRemark(String remark) | |
223 | + { | |
224 | + this.remark = remark; | |
225 | + } | |
226 | + | |
227 | + public Map<String, Object> getParams() | |
228 | + { | |
229 | + if (params == null) { | |
230 | + params = Maps.newHashMap(); | |
231 | + } | |
232 | + return params; | |
233 | + } | |
234 | + | |
235 | + public void setParams(Map<String, Object> params) | |
236 | + { | |
237 | + this.params = params; | |
238 | + } | |
239 | + | |
240 | + @Override | |
241 | + public String toString() | |
242 | + { | |
243 | + return "JobLog [id=" + id + ", jobName=" + jobName + ", jobGroup=" + jobGroup + ", methodName=" | |
244 | + + methodName + ", methodParams=" + methodParams + ", jobMessage=" + jobMessage + ", status=" + status | |
245 | + + ", exceptionInfo=" + exceptionInfo + "]"; | |
246 | + } | |
247 | + | |
248 | +} | |
... | ... |
src/main/java/com/huaheng/pc/monitor/job/mapper/JobLogMapper.java
0 → 100644
1 | +package com.huaheng.pc.monitor.job.mapper; | |
2 | + | |
3 | +import com.huaheng.pc.monitor.job.domain.JobLog; | |
4 | +import org.springframework.stereotype.Service; | |
5 | + | |
6 | +import java.util.List; | |
7 | + | |
8 | +/** | |
9 | + * 调度任务日志信息 数据层 | |
10 | + * | |
11 | + * @author huaheng | |
12 | + */ | |
13 | +@Service | |
14 | +public interface JobLogMapper | |
15 | +{ | |
16 | + | |
17 | + /** | |
18 | + * 获取quartz调度器日志的计划任务 | |
19 | + * | |
20 | + * @param jobLog 调度日志信息 | |
21 | + * @return 调度任务日志集合 | |
22 | + */ | |
23 | + public List<JobLog> selectJobLogList(JobLog jobLog); | |
24 | + | |
25 | + /** | |
26 | + * 通过调度任务日志ID查询调度信息 | |
27 | + * | |
28 | + * @param id 调度任务日志ID | |
29 | + * @return 调度任务日志对象信息 | |
30 | + */ | |
31 | + public JobLog selectJobLogById(Integer id); | |
32 | + | |
33 | + /** | |
34 | + * 新增任务日志 | |
35 | + * | |
36 | + * @param jobLog 调度日志信息 | |
37 | + * @return 结果 | |
38 | + */ | |
39 | + public int insertJobLog(JobLog jobLog); | |
40 | + | |
41 | + /** | |
42 | + * 批量删除调度日志信息 | |
43 | + * | |
44 | + * @param ids 需要删除的数据ID | |
45 | + * @return 结果 | |
46 | + */ | |
47 | + public int deleteJobLogByIds(String[] ids); | |
48 | + | |
49 | + /** | |
50 | + * 删除任务日志 | |
51 | + * | |
52 | + * @param id 调度日志ID | |
53 | + * @return 结果 | |
54 | + */ | |
55 | + public int deleteJobLogById(Integer id); | |
56 | + | |
57 | + | |
58 | + //清空任务日志 | |
59 | + public int truncateTable(); | |
60 | + | |
61 | +} | |
... | ... |
src/main/java/com/huaheng/pc/monitor/job/mapper/JobMapper.java
0 → 100644
1 | +package com.huaheng.pc.monitor.job.mapper; | |
2 | + | |
3 | +import com.huaheng.pc.monitor.job.domain.Job; | |
4 | +import org.springframework.stereotype.Service; | |
5 | + | |
6 | +import java.util.List; | |
7 | + | |
8 | +/** | |
9 | + * 调度任务信息 数据层 | |
10 | + * | |
11 | + * @author huaheng | |
12 | + */ | |
13 | +@Service | |
14 | +public interface JobMapper | |
15 | +{ | |
16 | + | |
17 | + /** | |
18 | + * 查询调度任务日志集合 | |
19 | + * | |
20 | + * @param job 调度信息 | |
21 | + * @return 操作日志集合 | |
22 | + */ | |
23 | + public List<Job> selectJobList(Job job); | |
24 | + | |
25 | + /** | |
26 | + * 查询所有调度任务 | |
27 | + * | |
28 | + * @return 调度任务列表 | |
29 | + */ | |
30 | + public List<Job> selectJobAll(); | |
31 | + | |
32 | + /** | |
33 | + * 通过调度ID查询调度任务信息 | |
34 | + * | |
35 | + * @param id 调度ID | |
36 | + * @return 角色对象信息 | |
37 | + */ | |
38 | + public Job selectJobById(Long id); | |
39 | + | |
40 | + /** | |
41 | + * 通过调度ID删除调度任务信息 | |
42 | + * | |
43 | + * @param job 调度 | |
44 | + * @return 结果 | |
45 | + */ | |
46 | + public int deleteJobById(Job job); | |
47 | + | |
48 | + /** | |
49 | + * 批量删除调度任务信息 | |
50 | + * | |
51 | + * @param ids 需要删除的数据ID | |
52 | + * @return 结果 | |
53 | + */ | |
54 | + public int deleteJobByIds(Integer[] ids); | |
55 | + | |
56 | + /** | |
57 | + * 修改调度任务信息 | |
58 | + * | |
59 | + * @param job 调度任务信息 | |
60 | + * @return 结果 | |
61 | + */ | |
62 | + public int updateJob(Job job); | |
63 | + | |
64 | + /** | |
65 | + * 新增调度任务信息 | |
66 | + * | |
67 | + * @param job 调度任务信息 | |
68 | + * @return 结果 | |
69 | + */ | |
70 | + public int insertJob(Job job); | |
71 | + | |
72 | +} | |
... | ... |
src/main/java/com/huaheng/pc/monitor/job/service/IJobLogService.java
0 → 100644
1 | +package com.huaheng.pc.monitor.job.service; | |
2 | + | |
3 | +import com.huaheng.pc.monitor.job.domain.JobLog; | |
4 | + | |
5 | +import java.util.List; | |
6 | + | |
7 | +/** | |
8 | + * 定时任务调度日志信息信息 服务层 | |
9 | + * | |
10 | + * @author huaheng | |
11 | + */ | |
12 | +public interface IJobLogService | |
13 | +{ | |
14 | + | |
15 | + /** | |
16 | + * 获取quartz调度器日志的计划任务 | |
17 | + * | |
18 | + * @param jobLog 调度日志信息 | |
19 | + * @return 调度任务日志集合 | |
20 | + */ | |
21 | + public List<JobLog> selectJobLogList(JobLog jobLog); | |
22 | + | |
23 | + /** | |
24 | + * 通过调度任务日志ID查询调度信息 | |
25 | + * | |
26 | + * @param id 调度任务日志ID | |
27 | + * @return 调度任务日志对象信息 | |
28 | + */ | |
29 | + public JobLog selectJobLogById(Integer id); | |
30 | + | |
31 | + /** | |
32 | + * 新增任务日志 | |
33 | + * | |
34 | + * @param jobLog 调度日志信息 | |
35 | + */ | |
36 | + public void addJobLog(JobLog jobLog); | |
37 | + | |
38 | + /** | |
39 | + * 批量删除调度日志信息 | |
40 | + * | |
41 | + * @param ids 需要删除的数据ID | |
42 | + * @return 结果 | |
43 | + */ | |
44 | + public int deleteJobLogByIds(String ids); | |
45 | + | |
46 | + /** | |
47 | + * 删除任务日志 | |
48 | + * | |
49 | + * @param id 调度日志ID | |
50 | + * @return 结果 | |
51 | + */ | |
52 | + public int deleteJobLogById(Integer id); | |
53 | + | |
54 | + //清空任务日志 | |
55 | + public int truncateTable(); | |
56 | + | |
57 | +} | |
... | ... |
src/main/java/com/huaheng/pc/monitor/job/service/IJobService.java
0 → 100644
1 | +package com.huaheng.pc.monitor.job.service; | |
2 | + | |
3 | +import com.huaheng.pc.monitor.job.domain.Job; | |
4 | + | |
5 | +import java.util.List; | |
6 | + | |
7 | +/** | |
8 | + * 定时任务调度信息信息 服务层 | |
9 | + * | |
10 | + * @author huaheng | |
11 | + */ | |
12 | +public interface IJobService | |
13 | +{ | |
14 | + | |
15 | + /** | |
16 | + * 获取quartz调度器的计划任务 | |
17 | + * | |
18 | + * @param job 调度信息 | |
19 | + * @return 调度任务集合 | |
20 | + */ | |
21 | + public List<Job> selectJobList(Job job); | |
22 | + | |
23 | + /** | |
24 | + * 通过调度任务ID查询调度信息 | |
25 | + * | |
26 | + * @param id 调度任务ID | |
27 | + * @return 调度任务对象信息 | |
28 | + */ | |
29 | + public Job selectJobById(Long id); | |
30 | + | |
31 | + /** | |
32 | + * 暂停任务 | |
33 | + * | |
34 | + * @param job 调度信息 | |
35 | + * @return 结果 | |
36 | + */ | |
37 | + public int pauseJob(Job job); | |
38 | + | |
39 | + /** | |
40 | + * 恢复任务 | |
41 | + * | |
42 | + * @param job 调度信息 | |
43 | + * @return 结果 | |
44 | + */ | |
45 | + public int resumeJob(Job job); | |
46 | + | |
47 | + /** | |
48 | + * 删除任务后,所对应的trigger也将被删除 | |
49 | + * | |
50 | + * @param job 调度信息 | |
51 | + * @return 结果 | |
52 | + */ | |
53 | + public int deleteJob(Job job); | |
54 | + | |
55 | + /** | |
56 | + * 批量删除调度信息 | |
57 | + * | |
58 | + * @param ids 需要删除的数据ID | |
59 | + * @return 结果 | |
60 | + */ | |
61 | + public void deleteJobByIds(String ids); | |
62 | + | |
63 | + /** | |
64 | + * 任务调度状态修改 | |
65 | + * | |
66 | + * @param job 调度信息 | |
67 | + * @return 结果 | |
68 | + */ | |
69 | + public int changeStatus(Job job); | |
70 | + | |
71 | + /** | |
72 | + * 立即运行任务 | |
73 | + * | |
74 | + * @param job 调度信息 | |
75 | + * @return 结果 | |
76 | + */ | |
77 | + public int run(Job job); | |
78 | + | |
79 | + /** | |
80 | + * 新增任务表达式 | |
81 | + * | |
82 | + * @param job 调度信息 | |
83 | + * @return 结果 | |
84 | + */ | |
85 | + public int insertJobCron(Job job); | |
86 | + | |
87 | + /** | |
88 | + * 更新任务的时间表达式 | |
89 | + * | |
90 | + * @param job 调度信息 | |
91 | + * @return 结果 | |
92 | + */ | |
93 | + public int updateJobCron(Job job); | |
94 | + | |
95 | +} | |
... | ... |