Commit d38b1b62d52e70d8f06f7ee48829ef86dc1b060d

Authored by mahuandong
2 parents 7b92cf16 430bdfe4

Merge remote-tracking branch 'origin/develop' into develop

Showing 34 changed files with 1216 additions and 832 deletions
.idea/workspace.xml
1 <?xml version="1.0" encoding="UTF-8"?> 1 <?xml version="1.0" encoding="UTF-8"?>
2 <project version="4"> 2 <project version="4">
3 <component name="ChangeListManager"> 3 <component name="ChangeListManager">
4 - <list default="true" id="908d8a6f-e3e4-4fdc-b674-e523a3e2b520" name="Default Changelist" comment=""> 4 + <list default="true" id="1fe4ff20-6474-45ee-a361-9572a808e9c9" name="Default Changelist" comment="Merge branch 'develop' of http://172.16.29.40:8010/wms/wms2 into develop&#10;&#10;# Conflicts:&#10;#&#9;.idea/workspace.xml&#10;#&#9;src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java&#10;#&#9;src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java">
5 <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> 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/inventory/cycleCountDetail/controller/CycleCountDetailController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/controller/CycleCountDetailController.java" afterDir="false" />  
7 - <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountHeader/controller/CycleCountHeaderController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountHeader/controller/CycleCountHeaderController.java" afterDir="false" />  
8 - <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderServiceImpl.java" afterDir="false" />  
9 <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java" afterDir="false" /> 6 <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java" afterDir="false" />
10 - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustDetail/addAdjust.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustHeader/addAdjust.html" afterDir="false" />  
11 - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html" afterDir="false" />  
12 - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustDetail/adjustEdit.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustHeader/adjustEdit.html" afterDir="false" />  
13 - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustHeader/adjustHeader.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustHeader/adjustHeader.html" afterDir="false" />  
14 - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html" afterDir="false" />  
15 - <change beforePath="$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountHeader/cycleCountHeader.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountHeader/cycleCountHeader.html" afterDir="false" />  
16 </list> 7 </list>
17 <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> 8 <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
18 <option name="SHOW_DIALOG" value="false" /> 9 <option name="SHOW_DIALOG" value="false" />
@@ -47,45 +38,91 @@ @@ -47,45 +38,91 @@
47 <item name="schemas" type="d4e8921:DatabaseStructure$FamilyGroup" /> 38 <item name="schemas" type="d4e8921:DatabaseStructure$FamilyGroup" />
48 <item name="wms_v2: schema" type="76f4a085:MysqlImplModel$Schema" /> 39 <item name="wms_v2: schema" type="76f4a085:MysqlImplModel$Schema" />
49 </path> 40 </path>
  41 + <path>
  42 + <item name="Database" type="3277223f:DatabaseStructure$DbRootGroup" />
  43 + <item name="@172.16.29.45" type="feb32156:DbDataSourceImpl" />
  44 + <item name="schemas" type="d4e8921:DatabaseStructure$FamilyGroup" />
  45 + <item name="wms_v2: schema" type="76f4a085:MysqlImplModel$Schema" />
  46 + <item name="task_detail: table" type="285a2a93:MysqlImplModel$Table" />
  47 + </path>
  48 + <path>
  49 + <item name="Database" type="3277223f:DatabaseStructure$DbRootGroup" />
  50 + <item name="@localhost" type="feb32156:DbDataSourceImpl" />
  51 + </path>
  52 + <path>
  53 + <item name="Database" type="3277223f:DatabaseStructure$DbRootGroup" />
  54 + <item name="@localhost" type="feb32156:DbDataSourceImpl" />
  55 + <item name="schemas" type="d4e8921:DatabaseStructure$FamilyGroup" />
  56 + </path>
50 </expand> 57 </expand>
51 <select /> 58 <select />
52 </component> 59 </component>
53 <component name="FileEditorManager"> 60 <component name="FileEditorManager">
54 <leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> 61 <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
55 <file pinned="false" current-in-tab="false"> 62 <file pinned="false" current-in-tab="false">
56 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountHeader/controller/CycleCountHeaderController.java"> 63 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java">
  64 + <provider selected="true" editor-type-id="text-editor">
  65 + <state relative-caret-position="542">
  66 + <caret line="117" column="45" lean-forward="true" selection-start-line="117" selection-start-column="45" selection-end-line="117" selection-end-column="45" />
  67 + </state>
  68 + </provider>
  69 + </entry>
  70 + </file>
  71 + <file pinned="false" current-in-tab="false">
  72 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java">
57 <provider selected="true" editor-type-id="text-editor"> 73 <provider selected="true" editor-type-id="text-editor">
58 - <state relative-caret-position="-567">  
59 - <caret line="44" column="51" selection-start-line="44" selection-start-column="51" selection-end-line="44" selection-end-column="51" /> 74 + <state relative-caret-position="209">
  75 + <caret line="18" column="15" selection-start-line="18" selection-start-column="15" selection-end-line="18" selection-end-column="15" />
60 </state> 76 </state>
61 </provider> 77 </provider>
62 </entry> 78 </entry>
63 </file> 79 </file>
64 <file pinned="false" current-in-tab="true"> 80 <file pinned="false" current-in-tab="true">
65 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/controller/CycleCountDetailController.java"> 81 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java">
66 <provider selected="true" editor-type-id="text-editor"> 82 <provider selected="true" editor-type-id="text-editor">
67 - <state relative-caret-position="8">  
68 - <caret line="64" column="52" lean-forward="true" selection-start-line="64" selection-start-column="52" selection-end-line="64" selection-end-column="52" /> 83 + <state relative-caret-position="376">
  84 + <caret line="1089" column="13" lean-forward="true" selection-start-line="1089" selection-start-column="13" selection-end-line="1089" selection-end-column="13" />
  85 + <folding>
  86 + <element signature="imports" expanded="true" />
  87 + </folding>
69 </state> 88 </state>
70 </provider> 89 </provider>
71 </entry> 90 </entry>
72 </file> 91 </file>
73 <file pinned="false" current-in-tab="false"> 92 <file pinned="false" current-in-tab="false">
74 - <entry file="file://$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountHeader/cycleCountHeader.html"> 93 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderService.java">
75 <provider selected="true" editor-type-id="text-editor"> 94 <provider selected="true" editor-type-id="text-editor">
76 - <state relative-caret-position="-12">  
77 - <caret line="273" column="18" selection-start-line="273" selection-start-column="18" selection-end-line="273" selection-end-column="18" /> 95 + <state relative-caret-position="266">
  96 + <caret line="18" column="15" selection-start-line="18" selection-start-column="15" selection-end-line="18" selection-end-column="15" />
78 </state> 97 </state>
79 </provider> 98 </provider>
80 </entry> 99 </entry>
81 </file> 100 </file>
82 <file pinned="false" current-in-tab="false"> 101 <file pinned="false" current-in-tab="false">
83 - <entry file="file://$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html"> 102 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderServiceImpl.java">
84 <provider selected="true" editor-type-id="text-editor"> 103 <provider selected="true" editor-type-id="text-editor">
85 - <state relative-caret-position="-87">  
86 - <caret line="122" selection-start-line="122" selection-end-line="122" /> 104 + <state relative-caret-position="340">
  105 + <caret line="112" column="26" selection-start-line="112" selection-start-column="16" selection-end-line="112" selection-end-column="26" />
  106 + </state>
  107 + </provider>
  108 + </entry>
  109 + </file>
  110 + <file pinned="false" current-in-tab="false">
  111 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryTransaction/domain/InventoryTransaction.java">
  112 + <provider selected="true" editor-type-id="text-editor">
  113 + <state relative-caret-position="226">
  114 + <caret line="95" column="19" selection-start-line="95" selection-start-column="12" selection-end-line="95" selection-end-column="19" />
  115 + </state>
  116 + </provider>
  117 + </entry>
  118 + </file>
  119 + <file pinned="false" current-in-tab="false">
  120 + <entry file="file://$PROJECT_DIR$/src/main/resources/templates/task/taskHeader/taskHeader.html">
  121 + <provider selected="true" editor-type-id="text-editor">
  122 + <state relative-caret-position="214">
  123 + <caret line="236" column="64" selection-start-line="236" selection-start-column="64" selection-end-line="236" selection-end-column="64" />
87 <folding> 124 <folding>
88 - <element signature="e#6120#12518#0" /> 125 + <element signature="n#style#0;n#i#0;n#a#0;n#!!top" expanded="true" />
89 </folding> 126 </folding>
90 </state> 127 </state>
91 </provider> 128 </provider>
@@ -113,41 +150,10 @@ @@ -113,41 +150,10 @@
113 <component name="IdeDocumentHistory"> 150 <component name="IdeDocumentHistory">
114 <option name="CHANGED_PATHS"> 151 <option name="CHANGED_PATHS">
115 <list> 152 <list>
116 - <option value="$PROJECT_DIR$/src/main/resources/templates/inventory/inventoryHeader/transfer.html" />  
117 - <option value="$PROJECT_DIR$/src/main/resources/application-druid.properties" />  
118 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/mapper/InventoryHeaderMapper.java" />  
119 - <option value="$PROJECT_DIR$/src/main/resources/mybatis/inventory/InventoryHeaderMapper.xml" /> 153 + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptDetail/service/ReceiptDetailServiceImpl.java" />
  154 + <option value="$PROJECT_DIR$/src/main/resources/templates/task/taskHeader/taskHeader.html" />
120 <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskDetail/domain/TaskDetail.java" /> 155 <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskDetail/domain/TaskDetail.java" />
121 - <option value="$PROJECT_DIR$/src/main/resources/mybatis/task/TaskDetailMapper.xml" />  
122 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/domain/TaskHeader.java" />  
123 - <option value="$PROJECT_DIR$/src/main/resources/mybatis/task/TaskHeaderMapper.xml" />  
124 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryTransaction/domain/InventoryTransaction.java" />  
125 - <option value="$PROJECT_DIR$/src/main/resources/mybatis/inventory/InventoryTransactionMapper.xml" />  
126 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java" />  
127 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/containerType/service/ContainerTypeServiceImpl.java" />  
128 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderService.java" />  
129 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailService.java" />  
130 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderController.java" />  
131 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailServiceImpl.java" />  
132 - <option value="$PROJECT_DIR$/src/main/resources/templates/inventory/inventoryDetail/inventoryDetail.html" />  
133 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/controller/InventoryDetailController.java" />  
134 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java" />  
135 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/container/service/ContainerService.java" />  
136 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/location/service/LocationService.java" />  
137 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/container/service/ContainerServiceImpl.java" />  
138 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/location/service/LocationServiceImpl.java" />  
139 - <option value="$PROJECT_DIR$/src/main/resources/mybatis/config/LocationMapper.xml" />  
140 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/container/mapper/ContainerMapper.java" />  
141 - <option value="$PROJECT_DIR$/src/main/resources/mybatis/config/ContainerMapper.xml" />  
142 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/location/mapper/LocationMapper.java" />  
143 <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java" /> 156 <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java" />
144 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderServiceImpl.java" />  
145 - <option value="$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountHeader/cycleCountHeader.html" />  
146 - <option value="$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html" />  
147 - <option value="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustHeader/adjustHeader.html" />  
148 - <option value="$PROJECT_DIR$/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html" />  
149 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountHeader/controller/CycleCountHeaderController.java" />  
150 - <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/controller/CycleCountDetailController.java" />  
151 </list> 157 </list>
152 </option> 158 </option>
153 </component> 159 </component>
@@ -165,10 +171,9 @@ @@ -165,10 +171,9 @@
165 </option> 171 </option>
166 </component> 172 </component>
167 <component name="ProjectFrameBounds" extendedState="6"> 173 <component name="ProjectFrameBounds" extendedState="6">
168 - <option name="x" value="-9" />  
169 - <option name="y" value="-9" />  
170 - <option name="width" value="1938" />  
171 - <option name="height" value="1048" /> 174 + <option name="x" value="470" />
  175 + <option name="width" value="980" />
  176 + <option name="height" value="1030" />
172 </component> 177 </component>
173 <component name="ProjectId" id="1Q2nhRM7LRz3yFWhpclOKgTjxn0" /> 178 <component name="ProjectId" id="1Q2nhRM7LRz3yFWhpclOKgTjxn0" />
174 <component name="ProjectLevelVcsManager"> 179 <component name="ProjectLevelVcsManager">
@@ -179,6 +184,8 @@ @@ -179,6 +184,8 @@
179 <foldersAlwaysOnTop value="true" /> 184 <foldersAlwaysOnTop value="true" />
180 </navigator> 185 </navigator>
181 <panes> 186 <panes>
  187 + <pane id="PackagesPane" />
  188 + <pane id="Scope" />
182 <pane id="ProjectPane"> 189 <pane id="ProjectPane">
183 <subPane> 190 <subPane>
184 <expand> 191 <expand>
@@ -189,11 +196,6 @@ @@ -189,11 +196,6 @@
189 <path> 196 <path>
190 <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> 197 <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
191 <item name="wms2" type="462c0819:PsiDirectoryNode" /> 198 <item name="wms2" type="462c0819:PsiDirectoryNode" />
192 - <item name=".idea" type="462c0819:PsiDirectoryNode" />  
193 - </path>  
194 - <path>  
195 - <item name="wms2" type="b2602c69:ProjectViewProjectNode" />  
196 - <item name="wms2" type="462c0819:PsiDirectoryNode" />  
197 <item name="src" type="462c0819:PsiDirectoryNode" /> 199 <item name="src" type="462c0819:PsiDirectoryNode" />
198 </path> 200 </path>
199 <path> 201 <path>
@@ -245,7 +247,7 @@ @@ -245,7 +247,7 @@
245 <item name="com" type="462c0819:PsiDirectoryNode" /> 247 <item name="com" type="462c0819:PsiDirectoryNode" />
246 <item name="huaheng" type="462c0819:PsiDirectoryNode" /> 248 <item name="huaheng" type="462c0819:PsiDirectoryNode" />
247 <item name="pc" type="462c0819:PsiDirectoryNode" /> 249 <item name="pc" type="462c0819:PsiDirectoryNode" />
248 - <item name="inventory" type="462c0819:PsiDirectoryNode" /> 250 + <item name="receipt" type="462c0819:PsiDirectoryNode" />
249 </path> 251 </path>
250 <path> 252 <path>
251 <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> 253 <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
@@ -256,8 +258,8 @@ @@ -256,8 +258,8 @@
256 <item name="com" type="462c0819:PsiDirectoryNode" /> 258 <item name="com" type="462c0819:PsiDirectoryNode" />
257 <item name="huaheng" type="462c0819:PsiDirectoryNode" /> 259 <item name="huaheng" type="462c0819:PsiDirectoryNode" />
258 <item name="pc" type="462c0819:PsiDirectoryNode" /> 260 <item name="pc" type="462c0819:PsiDirectoryNode" />
259 - <item name="inventory" type="462c0819:PsiDirectoryNode" />  
260 - <item name="cycleCountDetail" type="462c0819:PsiDirectoryNode" /> 261 + <item name="receipt" type="462c0819:PsiDirectoryNode" />
  262 + <item name="receiptContainerHeader" type="462c0819:PsiDirectoryNode" />
261 </path> 263 </path>
262 <path> 264 <path>
263 <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> 265 <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
@@ -268,8 +270,8 @@ @@ -268,8 +270,8 @@
268 <item name="com" type="462c0819:PsiDirectoryNode" /> 270 <item name="com" type="462c0819:PsiDirectoryNode" />
269 <item name="huaheng" type="462c0819:PsiDirectoryNode" /> 271 <item name="huaheng" type="462c0819:PsiDirectoryNode" />
270 <item name="pc" type="462c0819:PsiDirectoryNode" /> 272 <item name="pc" type="462c0819:PsiDirectoryNode" />
271 - <item name="inventory" type="462c0819:PsiDirectoryNode" />  
272 - <item name="cycleCountDetail" type="462c0819:PsiDirectoryNode" /> 273 + <item name="receipt" type="462c0819:PsiDirectoryNode" />
  274 + <item name="receiptContainerHeader" type="462c0819:PsiDirectoryNode" />
273 <item name="controller" type="462c0819:PsiDirectoryNode" /> 275 <item name="controller" type="462c0819:PsiDirectoryNode" />
274 </path> 276 </path>
275 <path> 277 <path>
@@ -281,8 +283,7 @@ @@ -281,8 +283,7 @@
281 <item name="com" type="462c0819:PsiDirectoryNode" /> 283 <item name="com" type="462c0819:PsiDirectoryNode" />
282 <item name="huaheng" type="462c0819:PsiDirectoryNode" /> 284 <item name="huaheng" type="462c0819:PsiDirectoryNode" />
283 <item name="pc" type="462c0819:PsiDirectoryNode" /> 285 <item name="pc" type="462c0819:PsiDirectoryNode" />
284 - <item name="inventory" type="462c0819:PsiDirectoryNode" />  
285 - <item name="cycleCountHeader" type="462c0819:PsiDirectoryNode" /> 286 + <item name="task" type="462c0819:PsiDirectoryNode" />
286 </path> 287 </path>
287 <path> 288 <path>
288 <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> 289 <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
@@ -293,9 +294,8 @@ @@ -293,9 +294,8 @@
293 <item name="com" type="462c0819:PsiDirectoryNode" /> 294 <item name="com" type="462c0819:PsiDirectoryNode" />
294 <item name="huaheng" type="462c0819:PsiDirectoryNode" /> 295 <item name="huaheng" type="462c0819:PsiDirectoryNode" />
295 <item name="pc" type="462c0819:PsiDirectoryNode" /> 296 <item name="pc" type="462c0819:PsiDirectoryNode" />
296 - <item name="inventory" type="462c0819:PsiDirectoryNode" />  
297 - <item name="cycleCountHeader" type="462c0819:PsiDirectoryNode" />  
298 - <item name="controller" type="462c0819:PsiDirectoryNode" /> 297 + <item name="task" type="462c0819:PsiDirectoryNode" />
  298 + <item name="taskDetail" type="462c0819:PsiDirectoryNode" />
299 </path> 299 </path>
300 <path> 300 <path>
301 <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> 301 <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
@@ -307,6 +307,8 @@ @@ -307,6 +307,8 @@
307 <item name="huaheng" type="462c0819:PsiDirectoryNode" /> 307 <item name="huaheng" type="462c0819:PsiDirectoryNode" />
308 <item name="pc" type="462c0819:PsiDirectoryNode" /> 308 <item name="pc" type="462c0819:PsiDirectoryNode" />
309 <item name="task" type="462c0819:PsiDirectoryNode" /> 309 <item name="task" type="462c0819:PsiDirectoryNode" />
  310 + <item name="taskDetail" type="462c0819:PsiDirectoryNode" />
  311 + <item name="domain" type="462c0819:PsiDirectoryNode" />
310 </path> 312 </path>
311 <path> 313 <path>
312 <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> 314 <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
@@ -351,18 +353,6 @@ @@ -351,18 +353,6 @@
351 <item name="wms2" type="462c0819:PsiDirectoryNode" /> 353 <item name="wms2" type="462c0819:PsiDirectoryNode" />
352 <item name="src" type="462c0819:PsiDirectoryNode" /> 354 <item name="src" type="462c0819:PsiDirectoryNode" />
353 <item name="main" type="462c0819:PsiDirectoryNode" /> 355 <item name="main" type="462c0819:PsiDirectoryNode" />
354 - <item name="java" type="462c0819:PsiDirectoryNode" />  
355 - <item name="com" type="462c0819:PsiDirectoryNode" />  
356 - <item name="huaheng" type="462c0819:PsiDirectoryNode" />  
357 - <item name="pc" type="462c0819:PsiDirectoryNode" />  
358 - <item name="task" type="462c0819:PsiDirectoryNode" />  
359 - <item name="taskPreference" type="462c0819:PsiDirectoryNode" />  
360 - </path>  
361 - <path>  
362 - <item name="wms2" type="b2602c69:ProjectViewProjectNode" />  
363 - <item name="wms2" type="462c0819:PsiDirectoryNode" />  
364 - <item name="src" type="462c0819:PsiDirectoryNode" />  
365 - <item name="main" type="462c0819:PsiDirectoryNode" />  
366 <item name="resources" type="462c0819:PsiDirectoryNode" /> 356 <item name="resources" type="462c0819:PsiDirectoryNode" />
367 </path> 357 </path>
368 <path> 358 <path>
@@ -380,37 +370,7 @@ @@ -380,37 +370,7 @@
380 <item name="main" type="462c0819:PsiDirectoryNode" /> 370 <item name="main" type="462c0819:PsiDirectoryNode" />
381 <item name="resources" type="462c0819:PsiDirectoryNode" /> 371 <item name="resources" type="462c0819:PsiDirectoryNode" />
382 <item name="templates" type="462c0819:PsiDirectoryNode" /> 372 <item name="templates" type="462c0819:PsiDirectoryNode" />
383 - <item name="inventory" type="462c0819:PsiDirectoryNode" />  
384 - </path>  
385 - <path>  
386 - <item name="wms2" type="b2602c69:ProjectViewProjectNode" />  
387 - <item name="wms2" type="462c0819:PsiDirectoryNode" />  
388 - <item name="src" type="462c0819:PsiDirectoryNode" />  
389 - <item name="main" type="462c0819:PsiDirectoryNode" />  
390 - <item name="resources" type="462c0819:PsiDirectoryNode" />  
391 - <item name="templates" type="462c0819:PsiDirectoryNode" />  
392 - <item name="inventory" type="462c0819:PsiDirectoryNode" />  
393 - <item name="adjustDetail" type="462c0819:PsiDirectoryNode" />  
394 - </path>  
395 - <path>  
396 - <item name="wms2" type="b2602c69:ProjectViewProjectNode" />  
397 - <item name="wms2" type="462c0819:PsiDirectoryNode" />  
398 - <item name="src" type="462c0819:PsiDirectoryNode" />  
399 - <item name="main" type="462c0819:PsiDirectoryNode" />  
400 - <item name="resources" type="462c0819:PsiDirectoryNode" />  
401 - <item name="templates" type="462c0819:PsiDirectoryNode" />  
402 - <item name="inventory" type="462c0819:PsiDirectoryNode" />  
403 - <item name="adjustHeader" type="462c0819:PsiDirectoryNode" />  
404 - </path>  
405 - <path>  
406 - <item name="wms2" type="b2602c69:ProjectViewProjectNode" />  
407 - <item name="wms2" type="462c0819:PsiDirectoryNode" />  
408 - <item name="src" type="462c0819:PsiDirectoryNode" />  
409 - <item name="main" type="462c0819:PsiDirectoryNode" />  
410 - <item name="resources" type="462c0819:PsiDirectoryNode" />  
411 - <item name="templates" type="462c0819:PsiDirectoryNode" />  
412 - <item name="inventory" type="462c0819:PsiDirectoryNode" />  
413 - <item name="cycleCountDetail" type="462c0819:PsiDirectoryNode" /> 373 + <item name="task" type="462c0819:PsiDirectoryNode" />
414 </path> 374 </path>
415 <path> 375 <path>
416 <item name="wms2" type="b2602c69:ProjectViewProjectNode" /> 376 <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
@@ -419,15 +379,13 @@ @@ -419,15 +379,13 @@
419 <item name="main" type="462c0819:PsiDirectoryNode" /> 379 <item name="main" type="462c0819:PsiDirectoryNode" />
420 <item name="resources" type="462c0819:PsiDirectoryNode" /> 380 <item name="resources" type="462c0819:PsiDirectoryNode" />
421 <item name="templates" type="462c0819:PsiDirectoryNode" /> 381 <item name="templates" type="462c0819:PsiDirectoryNode" />
422 - <item name="inventory" type="462c0819:PsiDirectoryNode" />  
423 - <item name="cycleCountHeader" type="462c0819:PsiDirectoryNode" /> 382 + <item name="task" type="462c0819:PsiDirectoryNode" />
  383 + <item name="taskHeader" type="462c0819:PsiDirectoryNode" />
424 </path> 384 </path>
425 </expand> 385 </expand>
426 <select /> 386 <select />
427 </subPane> 387 </subPane>
428 </pane> 388 </pane>
429 - <pane id="PackagesPane" />  
430 - <pane id="Scope" />  
431 </panes> 389 </panes>
432 </component> 390 </component>
433 <component name="PropertiesComponent"> 391 <component name="PropertiesComponent">
@@ -442,6 +400,8 @@ @@ -442,6 +400,8 @@
442 <property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" /> 400 <property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
443 <property name="WebServerToolWindowFactoryState" value="false" /> 401 <property name="WebServerToolWindowFactoryState" value="false" />
444 <property name="aspect.path.notification.shown" value="true" /> 402 <property name="aspect.path.notification.shown" value="true" />
  403 + <property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1567684191959" />
  404 + <property name="last_opened_file_path" value="$PROJECT_DIR$/../web_cms" />
445 <property name="list.type.of.created.stylesheet" value="CSS" /> 405 <property name="list.type.of.created.stylesheet" value="CSS" />
446 <property name="node.js.detected.package.eslint" value="true" /> 406 <property name="node.js.detected.package.eslint" value="true" />
447 <property name="node.js.path.for.package.eslint" value="project" /> 407 <property name="node.js.path.for.package.eslint" value="project" />
@@ -451,12 +411,6 @@ @@ -451,12 +411,6 @@
451 <property name="nodejs_package_manager_path" value="npm" /> 411 <property name="nodejs_package_manager_path" value="npm" />
452 <property name="settings.editor.selected.configurable" value="Settings.JavaScript" /> 412 <property name="settings.editor.selected.configurable" value="Settings.JavaScript" />
453 </component> 413 </component>
454 - <component name="RecentsManager">  
455 - <key name="MoveFile.RECENT_KEYS">  
456 - <recent name="C:\Project\wms2\src\main\resources\templates\inventory\adjustDetail" />  
457 - <recent name="C:\Project\wms2\src\main\resources\templates\inventory\adjustHeader" />  
458 - </key>  
459 - </component>  
460 <component name="RunDashboard"> 414 <component name="RunDashboard">
461 <option name="configurationTypes"> 415 <option name="configurationTypes">
462 <set> 416 <set>
@@ -477,7 +431,7 @@ @@ -477,7 +431,7 @@
477 </component> 431 </component>
478 <component name="RunManager"> 432 <component name="RunManager">
479 <configuration name="HuaHengApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot"> 433 <configuration name="HuaHengApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
480 - <module name="wms2" /> 434 + <module name="huaheng" />
481 <option name="SPRING_BOOT_MAIN_CLASS" value="com.huaheng.HuaHengApplication" /> 435 <option name="SPRING_BOOT_MAIN_CLASS" value="com.huaheng.HuaHengApplication" />
482 <option name="ALTERNATIVE_JRE_PATH" /> 436 <option name="ALTERNATIVE_JRE_PATH" />
483 <option name="UPDATE_ACTION_UPDATE_POLICY" value="UpdateClassesAndResources" /> 437 <option name="UPDATE_ACTION_UPDATE_POLICY" value="UpdateClassesAndResources" />
@@ -492,17 +446,7 @@ @@ -492,17 +446,7 @@
492 <serviceView> 446 <serviceView>
493 <option name="contentProportion" value="0.17857143" /> 447 <option name="contentProportion" value="0.17857143" />
494 <treeState> 448 <treeState>
495 - <expand>  
496 - <path>  
497 - <item name="services root" type="e789fda9:ObjectUtils$Sentinel" />  
498 - <item name="com.intellij.execution.services.ServiceModel$ServiceGroupNode@b9e1b2d7" type="7427dc5b:ServiceModel$ServiceGroupNode" />  
499 - </path>  
500 - <path>  
501 - <item name="services root" type="e789fda9:ObjectUtils$Sentinel" />  
502 - <item name="com.intellij.execution.services.ServiceModel$ServiceGroupNode@b9e1b2d7" type="7427dc5b:ServiceModel$ServiceGroupNode" />  
503 - <item name="com.intellij.execution.services.ServiceModel$ServiceGroupNode@67b24c63" type="7427dc5b:ServiceModel$ServiceGroupNode" />  
504 - </path>  
505 - </expand> 449 + <expand />
506 <select /> 450 <select />
507 </treeState> 451 </treeState>
508 </serviceView> 452 </serviceView>
@@ -513,7 +457,7 @@ @@ -513,7 +457,7 @@
513 </component> 457 </component>
514 <component name="TaskManager"> 458 <component name="TaskManager">
515 <task active="true" id="Default" summary="Default task"> 459 <task active="true" id="Default" summary="Default task">
516 - <changelist id="908d8a6f-e3e4-4fdc-b674-e523a3e2b520" name="Default Changelist" comment="" /> 460 + <changelist id="4d9bac65-d8f6-4ced-8855-0db48f39a5f2" name="Default Changelist" comment="" />
517 <created>1566977677142</created> 461 <created>1566977677142</created>
518 <option name="number" value="Default" /> 462 <option name="number" value="Default" />
519 <option name="presentableId" value="Default" /> 463 <option name="presentableId" value="Default" />
@@ -523,6 +467,7 @@ @@ -523,6 +467,7 @@
523 <workItem from="1567038752582" duration="12361000" /> 467 <workItem from="1567038752582" duration="12361000" />
524 <workItem from="1567057373550" duration="15293000" /> 468 <workItem from="1567057373550" duration="15293000" />
525 <workItem from="1567125196953" duration="16752000" /> 469 <workItem from="1567125196953" duration="16752000" />
  470 + <workItem from="1567643852002" duration="245000" />
526 </task> 471 </task>
527 <task id="LOCAL-00001" summary="入库单添加时添加流程标记,审核入库单"> 472 <task id="LOCAL-00001" summary="入库单添加时添加流程标记,审核入库单">
528 <created>1566983055587</created> 473 <created>1566983055587</created>
@@ -580,76 +525,58 @@ @@ -580,76 +525,58 @@
580 <option name="project" value="LOCAL" /> 525 <option name="project" value="LOCAL" />
581 <updated>1567069834248</updated> 526 <updated>1567069834248</updated>
582 </task> 527 </task>
583 - <option name="localTasksCounter" value="9" /> 528 + <task id="LOCAL-00009" summary="出库任务完成。新增allocationId字段">
  529 + <created>1567672551433</created>
  530 + <option name="number" value="00009" />
  531 + <option name="presentableId" value="LOCAL-00009" />
  532 + <option name="project" value="LOCAL" />
  533 + <updated>1567672551433</updated>
  534 + </task>
  535 + <option name="localTasksCounter" value="10" />
584 <servers /> 536 <servers />
585 </component> 537 </component>
  538 + <component name="TimeTrackingManager">
  539 + <option name="totallyTimeSpent" value="22177000" />
  540 + </component>
586 <component name="ToolWindowManager"> 541 <component name="ToolWindowManager">
587 - <frame x="-7" y="-7" width="1550" height="838" extended-state="6" /> 542 + <frame x="-7" y="-7" width="1550" height="838" extended-state="7" />
588 <editor active="true" /> 543 <editor active="true" />
589 <layout> 544 <layout>
590 - <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.19839142" /> 545 + <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.28016084" />
591 <window_info id="Structure" order="1" side_tool="true" weight="0.25" /> 546 <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
592 - <window_info id="Web" order="2" side_tool="true" />  
593 - <window_info id="Designer" order="3" />  
594 - <window_info id="UI Designer" order="4" />  
595 - <window_info id="Favorites" order="5" side_tool="true" /> 547 + <window_info id="Designer" order="2" />
  548 + <window_info id="Image Layers" order="3" />
  549 + <window_info id="Capture Tool" order="4" />
  550 + <window_info id="UI Designer" order="5" />
  551 + <window_info id="Favorites" order="6" side_tool="true" />
  552 + <window_info id="Web" order="7" side_tool="true" />
596 <window_info anchor="bottom" id="Message" order="0" /> 553 <window_info anchor="bottom" id="Message" order="0" />
597 - <window_info anchor="bottom" id="Find" order="1" weight="0.3286119" /> 554 + <window_info anchor="bottom" id="Find" order="1" />
598 <window_info anchor="bottom" id="Run" order="2" /> 555 <window_info anchor="bottom" id="Run" order="2" />
599 - <window_info anchor="bottom" id="Debug" order="3" weight="0.29036826" /> 556 + <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
600 <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" /> 557 <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
601 <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" /> 558 <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
602 <window_info anchor="bottom" id="TODO" order="6" /> 559 <window_info anchor="bottom" id="TODO" order="6" />
603 - <window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />  
604 - <window_info anchor="bottom" id="Version Control" order="8" sideWeight="0.49932975" weight="0.08073654" />  
605 - <window_info anchor="bottom" id="Database Changes" order="9" weight="0.3286119" />  
606 - <window_info anchor="bottom" id="Spring" order="10" />  
607 - <window_info anchor="bottom" id="MyBatis Log" order="11" weight="0.3286119" />  
608 - <window_info anchor="bottom" id="Event Log" order="12" sideWeight="0.50067025" side_tool="true" weight="0.6090652" />  
609 - <window_info anchor="bottom" id="Messages" order="13" weight="0.04249292" />  
610 - <window_info anchor="bottom" id="Java Enterprise" order="14" />  
611 - <window_info active="true" anchor="bottom" id="Run Dashboard" order="15" sideWeight="0.49932975" visible="true" weight="0.17280453" /> 560 + <window_info anchor="bottom" id="Spring" order="7" />
  561 + <window_info anchor="bottom" id="Terminal" order="8" />
  562 + <window_info anchor="bottom" id="Docker" order="9" show_stripe_button="false" />
  563 + <window_info anchor="bottom" id="Event Log" order="10" sideWeight="0.5013405" side_tool="true" weight="0.2719547" />
  564 + <window_info anchor="bottom" id="Messages" order="11" weight="0.18696883" />
  565 + <window_info anchor="bottom" id="Java Enterprise" order="12" />
  566 + <window_info anchor="bottom" id="Database Changes" order="13" weight="0.3286119" />
  567 + <window_info anchor="bottom" id="Version Control" order="14" weight="0.3286119" />
  568 + <window_info anchor="bottom" id="Run Dashboard" order="15" sideWeight="0.49865952" weight="0.2719547" />
612 <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" /> 569 <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
613 <window_info anchor="right" id="Ant Build" order="1" weight="0.25" /> 570 <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
614 <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" /> 571 <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
615 - <window_info anchor="right" id="Palette" order="3" />  
616 - <window_info anchor="right" id="Database" order="4" />  
617 - <window_info anchor="right" id="Maven" order="5" weight="0.097184986" />  
618 - <window_info anchor="right" id="Bean Validation" order="6" /> 572 + <window_info anchor="right" id="Maven" order="3" />
  573 + <window_info anchor="right" id="Palette" order="4" />
  574 + <window_info anchor="right" id="Capture Analysis" order="5" />
  575 + <window_info anchor="right" id="Database" order="6" />
619 <window_info anchor="right" id="Palette&#9;" order="7" /> 576 <window_info anchor="right" id="Palette&#9;" order="7" />
  577 + <window_info anchor="right" id="Theme Preview" order="8" />
  578 + <window_info anchor="right" id="Bean Validation" order="9" />
620 </layout> 579 </layout>
621 - <layout-to-restore>  
622 - <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.26340482" />  
623 - <window_info id="Structure" order="1" side_tool="true" weight="0.25" />  
624 - <window_info id="Web" order="2" side_tool="true" />  
625 - <window_info id="Designer" order="3" />  
626 - <window_info id="UI Designer" order="4" />  
627 - <window_info id="Favorites" order="5" side_tool="true" />  
628 - <window_info anchor="bottom" id="Message" order="0" />  
629 - <window_info anchor="bottom" id="Find" order="1" weight="0.3286119" />  
630 - <window_info anchor="bottom" id="Run" order="2" />  
631 - <window_info anchor="bottom" id="Debug" order="3" weight="0.29036826" />  
632 - <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />  
633 - <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />  
634 - <window_info anchor="bottom" id="TODO" order="6" />  
635 - <window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />  
636 - <window_info anchor="bottom" id="Version Control" order="8" weight="0.45042494" />  
637 - <window_info anchor="bottom" id="Database Changes" order="9" />  
638 - <window_info anchor="bottom" id="Spring" order="10" />  
639 - <window_info anchor="bottom" id="MyBatis Log" order="11" weight="0.3286119" />  
640 - <window_info anchor="bottom" id="Event Log" order="12" sideWeight="0.50067025" side_tool="true" weight="0.23796034" />  
641 - <window_info anchor="bottom" id="Messages" order="13" weight="0.12606232" />  
642 - <window_info anchor="bottom" id="Java Enterprise" order="14" />  
643 - <window_info active="true" anchor="bottom" id="Run Dashboard" order="15" sideWeight="0.49932975" visible="true" weight="0.18838526" />  
644 - <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />  
645 - <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />  
646 - <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />  
647 - <window_info anchor="right" id="Palette" order="3" />  
648 - <window_info anchor="right" id="Database" order="4" />  
649 - <window_info anchor="right" id="Maven" order="5" weight="0.097184986" />  
650 - <window_info anchor="right" id="Bean Validation" order="6" />  
651 - <window_info anchor="right" id="Palette&#9;" order="7" />  
652 - </layout-to-restore>  
653 </component> 580 </component>
654 <component name="TypeScriptGeneratedFilesManager"> 581 <component name="TypeScriptGeneratedFilesManager">
655 <option name="version" value="1" /> 582 <option name="version" value="1" />
@@ -666,14 +593,7 @@ @@ -666,14 +593,7 @@
666 <option name="RECENTLY_FILTERED_BRANCH_GROUPS"> 593 <option name="RECENTLY_FILTERED_BRANCH_GROUPS">
667 <collection /> 594 <collection />
668 </option> 595 </option>
669 - <option name="COLUMN_ORDER">  
670 - <list>  
671 - <option value="0" />  
672 - <option value="1" />  
673 - <option value="2" />  
674 - <option value="3" />  
675 - </list>  
676 - </option> 596 + <option name="COLUMN_ORDER" />
677 </State> 597 </State>
678 </value> 598 </value>
679 </entry> 599 </entry>
@@ -695,7 +615,6 @@ @@ -695,7 +615,6 @@
695 </option> 615 </option>
696 </component> 616 </component>
697 <component name="VcsManagerConfiguration"> 617 <component name="VcsManagerConfiguration">
698 - <option name="ADD_EXTERNAL_FILES_SILENTLY" value="true" />  
699 <MESSAGE value="盘点明细页面" /> 618 <MESSAGE value="盘点明细页面" />
700 <MESSAGE value="入库单添加时添加流程标记,审核入库单" /> 619 <MESSAGE value="入库单添加时添加流程标记,审核入库单" />
701 <MESSAGE value="添加入库单历史" /> 620 <MESSAGE value="添加入库单历史" />
@@ -708,9 +627,8 @@ @@ -708,9 +627,8 @@
708 <MESSAGE value="库存和任务移库相关" /> 627 <MESSAGE value="库存和任务移库相关" />
709 <MESSAGE value="库存移库生成和完成逻辑" /> 628 <MESSAGE value="库存移库生成和完成逻辑" />
710 <MESSAGE value="xml" /> 629 <MESSAGE value="xml" />
711 - <MESSAGE value="空托出入库,完成逻辑" />  
712 - <MESSAGE value="pull" />  
713 - <option name="LAST_COMMIT_MESSAGE" value="pull" /> 630 + <MESSAGE value="出库任务完成。新增allocationId字段" />
  631 + <option name="LAST_COMMIT_MESSAGE" value="出库任务完成。新增allocationId字段" />
714 </component> 632 </component>
715 <component name="XDebuggerManager"> 633 <component name="XDebuggerManager">
716 <breakpoint-manager> 634 <breakpoint-manager>
@@ -734,30 +652,6 @@ @@ -734,30 +652,6 @@
734 <option name="timeStamp" value="16" /> 652 <option name="timeStamp" value="16" />
735 </line-breakpoint> 653 </line-breakpoint>
736 <line-breakpoint enabled="true" type="java-line"> 654 <line-breakpoint enabled="true" type="java-line">
737 - <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptDetail/service/ReceiptDetailServiceImpl.java</url>  
738 - <line>216</line>  
739 - <properties />  
740 - <option name="timeStamp" value="19" />  
741 - </line-breakpoint>  
742 - <line-breakpoint enabled="true" type="java-line">  
743 - <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptDetail/service/ReceiptDetailServiceImpl.java</url>  
744 - <line>241</line>  
745 - <properties />  
746 - <option name="timeStamp" value="20" />  
747 - </line-breakpoint>  
748 - <line-breakpoint enabled="true" type="java-line">  
749 - <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptDetail/service/ReceiptDetailServiceImpl.java</url>  
750 - <line>163</line>  
751 - <properties />  
752 - <option name="timeStamp" value="22" />  
753 - </line-breakpoint>  
754 - <line-breakpoint enabled="true" type="java-line">  
755 - <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptDetail/service/ReceiptDetailServiceImpl.java</url>  
756 - <line>181</line>  
757 - <properties />  
758 - <option name="timeStamp" value="23" />  
759 - </line-breakpoint>  
760 - <line-breakpoint enabled="true" type="java-line">  
761 <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptHeader/service/ReceiptHeaderService.java</url> 655 <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptHeader/service/ReceiptHeaderService.java</url>
762 <line>92</line> 656 <line>92</line>
763 <properties /> 657 <properties />
@@ -769,386 +663,175 @@ @@ -769,386 +663,175 @@
769 <properties /> 663 <properties />
770 <option name="timeStamp" value="26" /> 664 <option name="timeStamp" value="26" />
771 </line-breakpoint> 665 </line-breakpoint>
  666 + <line-breakpoint enabled="true" type="java-line">
  667 + <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailServiceImpl.java</url>
  668 + <line>48</line>
  669 + <properties />
  670 + <option name="timeStamp" value="37" />
  671 + </line-breakpoint>
772 </breakpoints> 672 </breakpoints>
773 </breakpoint-manager> 673 </breakpoint-manager>
  674 + <watches-manager>
  675 + <configuration name="SpringBootApplicationConfigurationType">
  676 + <watch expression="DataUtils.getInteger(map.get(&quot;receiptId&quot;))" language="JAVA" />
  677 + </configuration>
  678 + </watches-manager>
  679 + </component>
  680 + <component name="debuggerHistoryManager">
  681 + <expressions id="watch">
  682 + <expression>
  683 + <expression-string>DataUtils.getInteger(map.get(&quot;receiptId&quot;))</expression-string>
  684 + <language-id>JAVA</language-id>
  685 + <evaluation-mode>EXPRESSION</evaluation-mode>
  686 + </expression>
  687 + </expressions>
774 </component> 688 </component>
775 <component name="editorHistoryManager"> 689 <component name="editorHistoryManager">
776 - <entry file="jar://C:/Program Files/Java/jdk1.8.0_202/src.zip!/com/sun/jmx/snmp/tasks/Task.java">  
777 - <provider selected="true" editor-type-id="text-editor">  
778 - <state relative-caret-position="330">  
779 - <caret line="57" column="17" selection-start-line="57" selection-start-column="17" selection-end-line="57" selection-end-column="17" />  
780 - </state>  
781 - </provider>  
782 - </entry>  
783 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptContainerDetail/service/ReceiptContainerDetailServiceImpl.java">  
784 - <provider selected="true" editor-type-id="text-editor">  
785 - <state relative-caret-position="80">  
786 - <caret line="10" column="13" selection-start-line="10" selection-start-column="13" selection-end-line="10" selection-end-column="13" />  
787 - </state>  
788 - </provider>  
789 - </entry>  
790 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptContainerDetail/service/ReceiptContainerDetailService.java">  
791 - <provider selected="true" editor-type-id="text-editor">  
792 - <state relative-caret-position="60">  
793 - <caret line="4" column="62" selection-start-line="4" selection-start-column="62" selection-end-line="4" selection-end-column="62" />  
794 - </state>  
795 - </provider>  
796 - </entry>  
797 - <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-core/3.1.2/mybatis-plus-core-3.1.2.jar!/com/baomidou/mybatisplus/core/mapper/BaseMapper.class">  
798 - <provider selected="true" editor-type-id="text-editor">  
799 - <state relative-caret-position="80">  
800 - <caret line="13" column="43" lean-forward="true" selection-start-line="13" selection-start-column="43" selection-end-line="13" selection-end-column="43" />  
801 - </state>  
802 - </provider>  
803 - </entry>  
804 - <entry file="file://$PROJECT_DIR$/src/main/resources/mybatis/task/TaskDetailMapper.xml">  
805 - <provider selected="true" editor-type-id="text-editor">  
806 - <state relative-caret-position="464">  
807 - <caret line="54" column="25" lean-forward="true" selection-start-line="54" selection-start-column="25" selection-end-line="54" selection-end-column="25" />  
808 - </state>  
809 - </provider>  
810 - </entry>  
811 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskDetail/mapper/TaskDetailMapper.java">  
812 - <provider selected="true" editor-type-id="text-editor">  
813 - <state relative-caret-position="100">  
814 - <caret line="6" column="1" lean-forward="true" selection-start-line="6" selection-start-column="1" selection-end-line="6" selection-end-column="1" />  
815 - </state>  
816 - </provider>  
817 - </entry>  
818 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskDetail/domain/TaskDetail.java">  
819 - <provider selected="true" editor-type-id="text-editor">  
820 - <state relative-caret-position="304">  
821 - <caret line="43" column="19" selection-start-line="43" selection-start-column="19" selection-end-line="43" selection-end-column="19" />  
822 - </state>  
823 - </provider>  
824 - </entry>  
825 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailServiceImpl.java">  
826 - <provider selected="true" editor-type-id="text-editor">  
827 - <state relative-caret-position="80">  
828 - <caret line="10" column="13" selection-start-line="10" selection-start-column="13" selection-end-line="10" selection-end-column="13" />  
829 - </state>  
830 - </provider>  
831 - </entry>  
832 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailService.java">  
833 - <provider selected="true" editor-type-id="text-editor">  
834 - <state relative-caret-position="60">  
835 - <caret line="4" column="17" selection-start-line="4" selection-start-column="17" selection-end-line="4" selection-end-column="17" />  
836 - </state>  
837 - </provider>  
838 - </entry>  
839 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/domain/ShipmentTaskCreateModel.java"> 690 + <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-extension/3.1.2/mybatis-plus-extension-3.1.2.jar!/com/baomidou/mybatisplus/extension/service/IService.class">
840 <provider selected="true" editor-type-id="text-editor"> 691 <provider selected="true" editor-type-id="text-editor">
841 - <state relative-caret-position="-12">  
842 - <caret line="5" column="13" selection-start-line="5" selection-start-column="13" selection-end-line="5" selection-end-column="13" /> 692 + <state relative-caret-position="149">
  693 + <caret line="53" column="12" selection-start-line="53" selection-start-column="12" selection-end-line="53" selection-end-column="12" />
843 </state> 694 </state>
844 </provider> 695 </provider>
845 </entry> 696 </entry>
846 <entry file="file://$PROJECT_DIR$/src/main/resources/mybatis/task/TaskHeaderMapper.xml"> 697 <entry file="file://$PROJECT_DIR$/src/main/resources/mybatis/task/TaskHeaderMapper.xml">
847 <provider selected="true" editor-type-id="text-editor"> 698 <provider selected="true" editor-type-id="text-editor">
848 - <state relative-caret-position="322">  
849 - <caret line="18" column="4" selection-start-line="18" selection-start-column="4" selection-end-line="18" selection-end-column="4" />  
850 - </state>  
851 - </provider>  
852 - </entry>  
853 - <entry file="file://$PROJECT_DIR$/src/main/resources/mybatis/inventory/InventoryTransactionMapper.xml">  
854 - <provider selected="true" editor-type-id="text-editor">  
855 - <state relative-caret-position="308">  
856 - <caret line="28" column="50" selection-start-line="28" selection-start-column="50" selection-end-line="28" selection-end-column="50" />  
857 - </state>  
858 - </provider>  
859 - </entry>  
860 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryTransaction/mapper/InventoryTransactionMapper.java">  
861 - <provider selected="true" editor-type-id="text-editor">  
862 - <state relative-caret-position="80">  
863 - <caret line="5" column="17" selection-start-line="5" selection-start-column="17" selection-end-line="5" selection-end-column="17" />  
864 - </state>  
865 - </provider>  
866 - </entry>  
867 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/domain/TaskHeader.java">  
868 - <provider selected="true" editor-type-id="text-editor">  
869 - <state relative-caret-position="1048">  
870 - <caret line="316" column="69" selection-start-line="316" selection-start-column="69" selection-end-line="316" selection-end-column="69" /> 699 + <state relative-caret-position="146">
  700 + <caret line="45" column="31" selection-start-line="45" selection-start-column="16" selection-end-line="45" selection-end-column="31" />
871 </state> 701 </state>
872 </provider> 702 </provider>
873 </entry> 703 </entry>
874 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryTransaction/domain/InventoryTransaction.java"> 704 + <entry file="file://$PROJECT_DIR$/src/main/resources/templates/task/task/task.html">
875 <provider selected="true" editor-type-id="text-editor"> 705 <provider selected="true" editor-type-id="text-editor">
876 - <state relative-caret-position="324">  
877 - <caret line="179" column="18" selection-start-line="179" selection-start-column="18" selection-end-line="179" selection-end-column="18" /> 706 + <state relative-caret-position="1444">
  707 + <caret line="76" column="89" selection-start-line="76" selection-start-column="70" selection-end-line="76" selection-end-column="89" />
878 </state> 708 </state>
879 </provider> 709 </provider>
880 </entry> 710 </entry>
881 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/containerType/service/ContainerTypeServiceImpl.java"> 711 + <entry file="file://$PROJECT_DIR$/pom.xml">
882 <provider selected="true" editor-type-id="text-editor"> 712 <provider selected="true" editor-type-id="text-editor">
883 - <state relative-caret-position="400">  
884 - <caret line="31" selection-start-line="31" selection-end-line="31" /> 713 + <state relative-caret-position="532">
  714 + <caret line="28" column="8" selection-start-line="28" selection-start-column="8" selection-end-line="28" selection-end-column="51" />
885 </state> 715 </state>
886 </provider> 716 </provider>
887 </entry> 717 </entry>
888 - <entry file="file://$PROJECT_DIR$/src/main/resources/templates/config/container/add.html"> 718 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptDetail/service/ReceiptDetailServiceImpl.java">
889 <provider selected="true" editor-type-id="text-editor"> 719 <provider selected="true" editor-type-id="text-editor">
890 - <state relative-caret-position="164">  
891 - <caret line="10" column="95" selection-start-line="10" selection-start-column="95" selection-end-line="10" selection-end-column="95" /> 720 + <state relative-caret-position="-66">
  721 + <caret line="238" column="16" selection-start-line="238" selection-start-column="16" selection-end-line="238" selection-end-column="16" />
892 </state> 722 </state>
893 </provider> 723 </provider>
894 </entry> 724 </entry>
895 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/mapper/TaskHeaderMapper.java"> 725 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptDetail/service/ReceiptDetailService.java">
896 <provider selected="true" editor-type-id="text-editor"> 726 <provider selected="true" editor-type-id="text-editor">
897 - <state relative-caret-position="120">  
898 - <caret line="11" column="78" selection-start-line="11" selection-start-column="78" selection-end-line="11" selection-end-column="78" /> 727 + <state relative-caret-position="209">
  728 + <caret line="13" column="9" selection-start-line="13" selection-start-column="9" selection-end-line="13" selection-end-column="9" />
899 </state> 729 </state>
900 </provider> 730 </provider>
901 </entry> 731 </entry>
902 - <entry file="file://$PROJECT_DIR$/src/main/resources/templates/inventory/inventoryHeader/transfer.html"> 732 + <entry file="file://$PROJECT_DIR$/src/main/resources/templates/task/taskHeader/taskHeader.html">
903 <provider selected="true" editor-type-id="text-editor"> 733 <provider selected="true" editor-type-id="text-editor">
904 - <state relative-caret-position="-264">  
905 - <caret line="13" column="54" selection-start-line="13" selection-start-column="54" selection-end-line="13" selection-end-column="54" />  
906 - </state>  
907 - </provider>  
908 - </entry>  
909 - <entry file="jar://C:/Program Files/Java/jdk1.8.0_202/src.zip!/java/util/function/Function.java">  
910 - <provider selected="true" editor-type-id="text-editor">  
911 - <state relative-caret-position="460">  
912 - <caret line="46" column="32" selection-start-line="46" selection-start-column="32" selection-end-line="46" selection-end-column="32" />  
913 - </state>  
914 - </provider>  
915 - </entry>  
916 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryTransaction/service/InventoryTransactionService.java">  
917 - <provider selected="true" editor-type-id="text-editor">  
918 - <state relative-caret-position="60">  
919 - <caret line="4" column="17" selection-start-line="4" selection-start-column="17" selection-end-line="4" selection-end-column="17" />  
920 - </state>  
921 - </provider>  
922 - </entry>  
923 - <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-extension/3.1.2/mybatis-plus-extension-3.1.2.jar!/com/baomidou/mybatisplus/extension/service/IService.class">  
924 - <provider selected="true" editor-type-id="text-editor">  
925 - <state relative-caret-position="216">  
926 - <caret line="37" column="20" selection-start-line="37" selection-start-column="20" selection-end-line="37" selection-end-column="20" /> 734 + <state relative-caret-position="214">
  735 + <caret line="236" column="64" selection-start-line="236" selection-start-column="64" selection-end-line="236" selection-end-column="64" />
927 <folding> 736 <folding>
928 - <element signature="e#1400#1401#0" expanded="true" />  
929 - <element signature="e#1463#1464#0" expanded="true" /> 737 + <element signature="n#style#0;n#i#0;n#a#0;n#!!top" expanded="true" />
930 </folding> 738 </folding>
931 </state> 739 </state>
932 </provider> 740 </provider>
933 </entry> 741 </entry>
934 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderService.java"> 742 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/mapper/TaskHeaderMapper.java">
935 <provider selected="true" editor-type-id="text-editor"> 743 <provider selected="true" editor-type-id="text-editor">
936 - <state relative-caret-position="100">  
937 - <caret line="8" column="61" selection-start-line="8" selection-start-column="61" selection-end-line="8" selection-end-column="61" /> 744 + <state relative-caret-position="114">
  745 + <caret line="11" column="30" selection-start-line="11" selection-start-column="30" selection-end-line="11" selection-end-column="30" />
938 </state> 746 </state>
939 </provider> 747 </provider>
940 </entry> 748 </entry>
941 - <entry file="file://$PROJECT_DIR$/src/main/resources/templates/inventory/inventoryDetail/inventoryDetail.html"> 749 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/controller/ReceiptContainerHeaderController.java">
942 <provider selected="true" editor-type-id="text-editor"> 750 <provider selected="true" editor-type-id="text-editor">
943 - <state relative-caret-position="185">  
944 - <caret line="335" column="16" lean-forward="true" selection-start-line="335" selection-start-column="16" selection-end-line="335" selection-end-column="16" />  
945 - <folding>  
946 - <element signature="e#4822#10729#0" />  
947 - </folding> 751 + <state relative-caret-position="323">
  752 + <caret line="136" column="42" selection-start-line="136" selection-start-column="42" selection-end-line="136" selection-end-column="42" />
948 </state> 753 </state>
949 </provider> 754 </provider>
950 </entry> 755 </entry>
951 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailService.java"> 756 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java">
952 <provider selected="true" editor-type-id="text-editor"> 757 <provider selected="true" editor-type-id="text-editor">
953 - <state relative-caret-position="140">  
954 - <caret line="9" selection-start-line="9" selection-end-line="9" /> 758 + <state relative-caret-position="542">
  759 + <caret line="117" column="45" lean-forward="true" selection-start-line="117" selection-start-column="45" selection-end-line="117" selection-end-column="45" />
955 </state> 760 </state>
956 </provider> 761 </provider>
957 </entry> 762 </entry>
958 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/controller/InventoryDetailController.java"> 763 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java">
959 <provider selected="true" editor-type-id="text-editor"> 764 <provider selected="true" editor-type-id="text-editor">
960 - <state relative-caret-position="173">  
961 - <caret line="104" column="25" selection-start-line="104" selection-start-column="25" selection-end-line="104" selection-end-column="25" /> 765 + <state relative-caret-position="209">
  766 + <caret line="18" column="15" selection-start-line="18" selection-start-column="15" selection-end-line="18" selection-end-column="15" />
962 </state> 767 </state>
963 </provider> 768 </provider>
964 </entry> 769 </entry>
965 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/container/service/ContainerService.java"> 770 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryTransaction/domain/InventoryTransaction.java">
966 <provider selected="true" editor-type-id="text-editor"> 771 <provider selected="true" editor-type-id="text-editor">
967 - <state relative-caret-position="200">  
968 - <caret line="15" selection-start-line="15" selection-end-line="15" /> 772 + <state relative-caret-position="226">
  773 + <caret line="95" column="19" selection-start-line="95" selection-start-column="12" selection-end-line="95" selection-end-column="19" />
969 </state> 774 </state>
970 </provider> 775 </provider>
971 </entry> 776 </entry>
972 <entry file="file://$PROJECT_DIR$/src/main/resources/mybatis/config/ContainerMapper.xml"> 777 <entry file="file://$PROJECT_DIR$/src/main/resources/mybatis/config/ContainerMapper.xml">
973 <provider selected="true" editor-type-id="text-editor"> 778 <provider selected="true" editor-type-id="text-editor">
974 - <state relative-caret-position="436">  
975 - <caret line="50" column="23" selection-start-line="50" selection-start-column="23" selection-end-line="50" selection-end-column="23" /> 779 + <state relative-caret-position="490">
  780 + <caret line="50" column="4" selection-start-line="50" selection-start-column="4" selection-end-line="50" selection-end-column="4" />
976 </state> 781 </state>
977 </provider> 782 </provider>
978 </entry> 783 </entry>
979 <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/container/mapper/ContainerMapper.java"> 784 <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/container/mapper/ContainerMapper.java">
980 <provider selected="true" editor-type-id="text-editor"> 785 <provider selected="true" editor-type-id="text-editor">
981 - <state relative-caret-position="180">  
982 - <caret line="14" selection-start-line="14" selection-end-line="14" /> 786 + <state relative-caret-position="171">
  787 + <caret line="14" column="9" selection-start-line="14" selection-start-column="9" selection-end-line="14" selection-end-column="9" />
983 </state> 788 </state>
984 </provider> 789 </provider>
985 </entry> 790 </entry>
986 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/location/mapper/LocationMapper.java"> 791 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/container/service/ContainerServiceImpl.java">
987 <provider selected="true" editor-type-id="text-editor"> 792 <provider selected="true" editor-type-id="text-editor">
988 - <state relative-caret-position="280">  
989 - <caret line="16" column="1" lean-forward="true" selection-start-line="16" selection-start-column="1" selection-end-line="16" selection-end-column="1" /> 793 + <state relative-caret-position="471">
  794 + <caret line="127" column="47" lean-forward="true" selection-start-line="127" selection-start-column="47" selection-end-line="127" selection-end-column="47" />
990 </state> 795 </state>
991 </provider> 796 </provider>
992 </entry> 797 </entry>
993 - <entry file="file://$PROJECT_DIR$/src/main/resources/mybatis/config/LocationMapper.xml"> 798 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/container/service/ContainerService.java">
994 <provider selected="true" editor-type-id="text-editor"> 799 <provider selected="true" editor-type-id="text-editor">
995 - <state relative-caret-position="446">  
996 - <caret line="49" column="132" lean-forward="true" selection-start-line="49" selection-start-column="132" selection-end-line="49" selection-end-column="132" /> 800 + <state relative-caret-position="228">
  801 + <caret line="17" column="9" selection-start-line="17" selection-start-column="9" selection-end-line="17" selection-end-column="9" />
997 </state> 802 </state>
998 </provider> 803 </provider>
999 </entry> 804 </entry>
1000 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/location/service/LocationServiceImpl.java"> 805 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskDetail/domain/TaskDetail.java">
1001 <provider selected="true" editor-type-id="text-editor"> 806 <provider selected="true" editor-type-id="text-editor">
1002 - <state relative-caret-position="326">  
1003 - <caret line="116" column="7" lean-forward="true" selection-start-line="116" selection-start-column="7" selection-end-line="116" selection-end-column="7" />  
1004 - <folding>  
1005 - <element signature="e#4932#4933#0" expanded="true" />  
1006 - <element signature="e#4992#4993#0" expanded="true" />  
1007 - </folding> 807 + <state relative-caret-position="226">
  808 + <caret line="65" column="19" selection-start-line="65" selection-start-column="19" selection-end-line="65" selection-end-column="19" />
1008 </state> 809 </state>
1009 </provider> 810 </provider>
1010 </entry> 811 </entry>
1011 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/container/service/ContainerServiceImpl.java"> 812 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderService.java">
1012 <provider selected="true" editor-type-id="text-editor"> 813 <provider selected="true" editor-type-id="text-editor">
1013 - <state relative-caret-position="392">  
1014 - <caret line="123" column="13" lean-forward="true" selection-start-line="123" selection-start-column="13" selection-end-line="123" selection-end-column="13" /> 814 + <state relative-caret-position="266">
  815 + <caret line="18" column="15" selection-start-line="18" selection-start-column="15" selection-end-line="18" selection-end-column="15" />
1015 </state> 816 </state>
1016 </provider> 817 </provider>
1017 </entry> 818 </entry>
1018 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/config/location/service/LocationService.java"> 819 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderServiceImpl.java">
1019 <provider selected="true" editor-type-id="text-editor"> 820 <provider selected="true" editor-type-id="text-editor">
1020 - <state relative-caret-position="220">  
1021 - <caret line="12" column="96" selection-start-line="12" selection-start-column="96" selection-end-line="12" selection-end-column="96" />  
1022 - </state>  
1023 - </provider>  
1024 - </entry>  
1025 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java">  
1026 - <provider selected="true" editor-type-id="text-editor">  
1027 - <state relative-caret-position="216">  
1028 - <caret line="18" column="15" selection-start-line="18" selection-start-column="15" selection-end-line="18" selection-end-column="15" /> 821 + <state relative-caret-position="340">
  822 + <caret line="112" column="26" selection-start-line="112" selection-start-column="16" selection-end-line="112" selection-end-column="26" />
1029 </state> 823 </state>
1030 </provider> 824 </provider>
1031 </entry> 825 </entry>
1032 <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java"> 826 <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java">
1033 <provider selected="true" editor-type-id="text-editor"> 827 <provider selected="true" editor-type-id="text-editor">
1034 - <state relative-caret-position="363">  
1035 - <caret line="924" lean-forward="true" selection-start-line="924" selection-end-line="924" /> 828 + <state relative-caret-position="376">
  829 + <caret line="1089" column="13" lean-forward="true" selection-start-line="1089" selection-start-column="13" selection-end-line="1089" selection-end-column="13" />
1036 <folding> 830 <folding>
1037 <element signature="imports" expanded="true" /> 831 <element signature="imports" expanded="true" />
1038 </folding> 832 </folding>
1039 </state> 833 </state>
1040 </provider> 834 </provider>
1041 </entry> 835 </entry>
1042 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryTransaction/service/InventoryTransactionServiceImpl.java">  
1043 - <provider selected="true" editor-type-id="text-editor">  
1044 - <state relative-caret-position="80">  
1045 - <caret line="10" column="13" selection-start-line="10" selection-start-column="13" selection-end-line="10" selection-end-column="13" />  
1046 - </state>  
1047 - </provider>  
1048 - </entry>  
1049 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderServiceImpl.java">  
1050 - <provider selected="true" editor-type-id="text-editor">  
1051 - <state relative-caret-position="671">  
1052 - <caret line="60" column="12" selection-start-line="60" selection-start-column="12" selection-end-line="60" selection-end-column="12" />  
1053 - </state>  
1054 - </provider>  
1055 - </entry>  
1056 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailServiceImpl.java">  
1057 - <provider selected="true" editor-type-id="text-editor">  
1058 - <state relative-caret-position="-525">  
1059 - <caret line="44" column="22" selection-start-line="44" selection-start-column="22" selection-end-line="44" selection-end-column="22" />  
1060 - </state>  
1061 - </provider>  
1062 - </entry>  
1063 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryTransaction/controller/InventoryTransactionController.java">  
1064 - <provider selected="true" editor-type-id="text-editor">  
1065 - <state relative-caret-position="-1060">  
1066 - <caret line="33" column="13" selection-start-line="33" selection-start-column="13" selection-end-line="33" selection-end-column="13" />  
1067 - </state>  
1068 - </provider>  
1069 - </entry>  
1070 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderController.java">  
1071 - <provider selected="true" editor-type-id="text-editor">  
1072 - <state relative-caret-position="1531">  
1073 - <caret line="214" column="20" selection-start-line="214" selection-start-column="20" selection-end-line="214" selection-end-column="20" />  
1074 - </state>  
1075 - </provider>  
1076 - </entry>  
1077 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java">  
1078 - <provider selected="true" editor-type-id="text-editor">  
1079 - <state relative-caret-position="367">  
1080 - <caret line="117" column="42" selection-start-line="117" selection-start-column="42" selection-end-line="117" selection-end-column="42" />  
1081 - </state>  
1082 - </provider>  
1083 - </entry>  
1084 - <entry file="file://$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountHeader/cycleCountHeader.html">  
1085 - <provider selected="true" editor-type-id="text-editor">  
1086 - <state relative-caret-position="-12">  
1087 - <caret line="273" column="18" selection-start-line="273" selection-start-column="18" selection-end-line="273" selection-end-column="18" />  
1088 - </state>  
1089 - </provider>  
1090 - </entry>  
1091 - <entry file="file://$PROJECT_DIR$/src/main/resources/static/huaheng/js/huahengUI.js">  
1092 - <provider selected="true" editor-type-id="text-editor">  
1093 - <state relative-caret-position="304">  
1094 - <caret line="44" column="25" lean-forward="true" selection-start-line="43" selection-start-column="52" selection-end-line="44" selection-end-column="25" />  
1095 - </state>  
1096 - </provider>  
1097 - </entry>  
1098 - <entry file="file://$PROJECT_DIR$/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html">  
1099 - <provider selected="true" editor-type-id="text-editor">  
1100 - <state relative-caret-position="196">  
1101 - <caret line="323" column="16" lean-forward="true" selection-start-line="323" selection-start-column="16" selection-end-line="323" selection-end-column="16" />  
1102 - </state>  
1103 - </provider>  
1104 - </entry>  
1105 - <entry file="file://$PROJECT_DIR$/src/main/resources/templates/inventory/adjustHeader/adjustHeader.html">  
1106 - <provider selected="true" editor-type-id="text-editor">  
1107 - <state relative-caret-position="163">  
1108 - <caret line="187" column="30" lean-forward="true" selection-start-line="187" selection-start-column="30" selection-end-line="187" selection-end-column="30" />  
1109 - <folding>  
1110 - <element signature="n#style#0;n#a#0;n#!!top" expanded="true" />  
1111 - </folding>  
1112 - </state>  
1113 - </provider>  
1114 - </entry>  
1115 - <entry file="jar://$MAVEN_REPOSITORY$/org/springframework/spring-core/5.1.5.RELEASE/spring-core-5.1.5.RELEASE.jar!/org/springframework/cglib/proxy/MethodProxy.class">  
1116 - <provider selected="true" editor-type-id="text-editor">  
1117 - <state relative-caret-position="167">  
1118 - <caret line="102" selection-start-line="102" selection-end-line="102" />  
1119 - </state>  
1120 - </provider>  
1121 - </entry>  
1122 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/domain/CycleCountDetail.java">  
1123 - <provider selected="true" editor-type-id="text-editor">  
1124 - <state relative-caret-position="120">  
1125 - <caret line="13" column="13" selection-start-line="13" selection-start-column="13" selection-end-line="13" selection-end-column="13" />  
1126 - </state>  
1127 - </provider>  
1128 - </entry>  
1129 - <entry file="file://$PROJECT_DIR$/src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html">  
1130 - <provider selected="true" editor-type-id="text-editor">  
1131 - <state relative-caret-position="-87">  
1132 - <caret line="122" selection-start-line="122" selection-end-line="122" />  
1133 - <folding>  
1134 - <element signature="e#6120#12518#0" />  
1135 - </folding>  
1136 - </state>  
1137 - </provider>  
1138 - </entry>  
1139 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountHeader/controller/CycleCountHeaderController.java">  
1140 - <provider selected="true" editor-type-id="text-editor">  
1141 - <state relative-caret-position="-567">  
1142 - <caret line="44" column="51" selection-start-line="44" selection-start-column="51" selection-end-line="44" selection-end-column="51" />  
1143 - </state>  
1144 - </provider>  
1145 - </entry>  
1146 - <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/controller/CycleCountDetailController.java">  
1147 - <provider selected="true" editor-type-id="text-editor">  
1148 - <state relative-caret-position="8">  
1149 - <caret line="64" column="52" lean-forward="true" selection-start-line="64" selection-start-column="52" selection-end-line="64" selection-end-column="52" />  
1150 - </state>  
1151 - </provider>  
1152 - </entry>  
1153 </component> 836 </component>
1154 </project> 837 </project>
1155 \ No newline at end of file 838 \ No newline at end of file
src/main/java/com/huaheng/pc/inventory/adjustDetail/controller/adjustDetailController.java
@@ -14,7 +14,6 @@ import com.huaheng.framework.web.page.TableDataInfo; @@ -14,7 +14,6 @@ import com.huaheng.framework.web.page.TableDataInfo;
14 import com.huaheng.framework.web.page.TableSupport; 14 import com.huaheng.framework.web.page.TableSupport;
15 import com.huaheng.pc.inventory.adjustDetail.domain.AdjustDetail; 15 import com.huaheng.pc.inventory.adjustDetail.domain.AdjustDetail;
16 import com.huaheng.pc.inventory.adjustDetail.service.AdjustDetailService; 16 import com.huaheng.pc.inventory.adjustDetail.service.AdjustDetailService;
17 -  
18 import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderService; 17 import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderService;
19 import org.springframework.stereotype.Controller; 18 import org.springframework.stereotype.Controller;
20 import org.springframework.web.bind.annotation.GetMapping; 19 import org.springframework.web.bind.annotation.GetMapping;
src/main/java/com/huaheng/pc/inventory/adjustDetail/domain/AdjustDetail.java
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName; @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
7 import io.swagger.annotations.ApiModel; 7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty; 8 import io.swagger.annotations.ApiModelProperty;
9 import java.io.Serializable; 9 import java.io.Serializable;
  10 +import java.math.BigDecimal;
10 import java.util.Date; 11 import java.util.Date;
11 import lombok.Data; 12 import lombok.Data;
12 13
@@ -142,21 +143,21 @@ public class AdjustDetail implements Serializable { @@ -142,21 +143,21 @@ public class AdjustDetail implements Serializable {
142 */ 143 */
143 @TableField(value = "fromQty") 144 @TableField(value = "fromQty")
144 @ApiModelProperty(value="调整前的数量") 145 @ApiModelProperty(value="调整前的数量")
145 - private Integer fromQty; 146 + private BigDecimal fromQty;
146 147
147 /** 148 /**
148 * 调整后的数量 149 * 调整后的数量
149 */ 150 */
150 @TableField(value = "toQty") 151 @TableField(value = "toQty")
151 @ApiModelProperty(value="调整后的数量 ") 152 @ApiModelProperty(value="调整后的数量 ")
152 - private Integer toQty; 153 + private BigDecimal toQty;
153 154
154 /** 155 /**
155 * 调整变动数量 156 * 调整变动数量
156 */ 157 */
157 @TableField(value = "gapQty") 158 @TableField(value = "gapQty")
158 @ApiModelProperty(value="调整变动数量 ") 159 @ApiModelProperty(value="调整变动数量 ")
159 - private Integer gapQty; 160 + private BigDecimal gapQty;
160 161
161 /** 162 /**
162 * 状态 -0-待调整 1-已调整 2-未批准 3-已批准 163 * 状态 -0-待调整 1-已调整 2-未批准 3-已批准
src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailService.java
1 package com.huaheng.pc.inventory.adjustDetail.service; 1 package com.huaheng.pc.inventory.adjustDetail.service;
2 2
3 -import org.springframework.stereotype.Service;  
4 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 3 +import com.baomidou.mybatisplus.extension.service.IService;
5 import com.huaheng.pc.inventory.adjustDetail.domain.AdjustDetail; 4 import com.huaheng.pc.inventory.adjustDetail.domain.AdjustDetail;
6 -import com.huaheng.pc.inventory.adjustDetail.mapper.AdjustDetailMapper;  
7 -@Service  
8 -public class AdjustDetailService extends ServiceImpl<AdjustDetailMapper, AdjustDetail> { 5 +
  6 +
  7 +
  8 +public interface AdjustDetailService extends IService<AdjustDetail> {
  9 +
  10 +
9 11
10 } 12 }
  13 +
  14 +
src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailServiceImpl.java 0 → 100644
  1 +package com.huaheng.pc.inventory.adjustDetail.service;
  2 +
  3 +import org.springframework.stereotype.Service;
  4 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5 +import com.huaheng.pc.inventory.adjustDetail.domain.AdjustDetail;
  6 +import com.huaheng.pc.inventory.adjustDetail.mapper.AdjustDetailMapper;
  7 +@Service
  8 +public class AdjustDetailServiceImpl extends ServiceImpl<AdjustDetailMapper, AdjustDetail> implements AdjustDetailService {
  9 +
  10 +}
src/main/java/com/huaheng/pc/inventory/adjustHeader/controller/adjustHeaderController.java
@@ -13,8 +13,10 @@ import com.huaheng.framework.web.page.PageDomain; @@ -13,8 +13,10 @@ import com.huaheng.framework.web.page.PageDomain;
13 import com.huaheng.framework.web.page.TableDataInfo; 13 import com.huaheng.framework.web.page.TableDataInfo;
14 import com.huaheng.framework.web.page.TableSupport; 14 import com.huaheng.framework.web.page.TableSupport;
15 import com.huaheng.pc.inventory.adjustDetail.service.AdjustDetailService; 15 import com.huaheng.pc.inventory.adjustDetail.service.AdjustDetailService;
  16 +import com.huaheng.pc.inventory.adjustDetail.service.AdjustDetailServiceImpl;
16 import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader; 17 import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader;
17 import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderService; 18 import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderService;
  19 +import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderServiceImpl;
18 import org.springframework.stereotype.Controller; 20 import org.springframework.stereotype.Controller;
19 import org.springframework.web.bind.annotation.GetMapping; 21 import org.springframework.web.bind.annotation.GetMapping;
20 import org.springframework.web.bind.annotation.PostMapping; 22 import org.springframework.web.bind.annotation.PostMapping;
src/main/java/com/huaheng/pc/inventory/adjustHeader/mapper/AdjustHeaderMapper.java
@@ -4,4 +4,10 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -4,4 +4,10 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader; 4 import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader;
5 5
6 public interface AdjustHeaderMapper extends BaseMapper<AdjustHeader> { 6 public interface AdjustHeaderMapper extends BaseMapper<AdjustHeader> {
  7 +
  8 +
  9 + String getLastCode();
  10 +
  11 +
  12 +
7 } 13 }
8 \ No newline at end of file 14 \ No newline at end of file
src/main/java/com/huaheng/pc/inventory/adjustHeader/service/AdjustHeaderService.java
1 package com.huaheng.pc.inventory.adjustHeader.service; 1 package com.huaheng.pc.inventory.adjustHeader.service;
2 2
3 -import org.springframework.stereotype.Service;  
4 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 3 +import com.baomidou.mybatisplus.extension.service.IService;
5 import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader; 4 import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader;
6 -import com.huaheng.pc.inventory.adjustHeader.mapper.AdjustHeaderMapper;  
7 -@Service  
8 -public class AdjustHeaderService extends ServiceImpl<AdjustHeaderMapper, AdjustHeader> { 5 +import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader;
  6 +
  7 +
  8 +public interface AdjustHeaderService extends IService<AdjustHeader> {
  9 +
  10 +
  11 + String createCode();
  12 +
  13 +
  14 +
9 15
10 } 16 }
  17 +
  18 +
src/main/java/com/huaheng/pc/inventory/adjustHeader/service/AdjustHeaderServiceImpl.java 0 → 100644
  1 +package com.huaheng.pc.inventory.adjustHeader.service;
  2 +
  3 +import org.springframework.stereotype.Service;
  4 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5 +import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader;
  6 +import com.huaheng.pc.inventory.adjustHeader.mapper.AdjustHeaderMapper;
  7 +
  8 +import javax.annotation.Resource;
  9 +import java.text.SimpleDateFormat;
  10 +import java.util.Date;
  11 +
  12 +@Service
  13 +public class AdjustHeaderServiceImpl extends ServiceImpl<AdjustHeaderMapper, AdjustHeader> implements AdjustHeaderService {
  14 +
  15 +
  16 + @Resource
  17 + private AdjustHeaderMapper adjustHeaderMapper;
  18 +
  19 +
  20 +
  21 +
  22 +
  23 +
  24 + //生成差异单号
  25 + @Override
  26 + public String createCode() {
  27 + String code;
  28 + Date now = new Date();
  29 + SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");
  30 + String maxCode = adjustHeaderMapper.getLastCode();;
  31 + //如果指定类型的最后的code存在,并且日期一致。那么 code = 单类型 + 年月日 + (排序号 + 1)
  32 + if (maxCode != null && maxCode.substring(maxCode.length() - 13, maxCode.length() - 5).equals(df.format(now)))
  33 + {
  34 + Integer Count = Integer.valueOf(maxCode.substring(maxCode.length() - 5, maxCode.length()));
  35 + code = "CY" + df.format(now) + String.format("%05d", Count + 1);
  36 + }
  37 + else
  38 + {
  39 + code = "CY" + df.format(now) + "00001";
  40 + }
  41 + return code;
  42 + }
  43 +
  44 +
  45 +
  46 +
  47 +
  48 +
  49 +}
src/main/java/com/huaheng/pc/inventory/cycleCountDetail/controller/CycleCountDetailController.java
@@ -14,8 +14,9 @@ import com.huaheng.framework.web.page.TableDataInfo; @@ -14,8 +14,9 @@ import com.huaheng.framework.web.page.TableDataInfo;
14 import com.huaheng.framework.web.page.TableSupport; 14 import com.huaheng.framework.web.page.TableSupport;
15 import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail; 15 import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail;
16 import com.huaheng.pc.inventory.cycleCountDetail.service.CycleCountDetailService; 16 import com.huaheng.pc.inventory.cycleCountDetail.service.CycleCountDetailService;
17 -import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader; 17 +import com.huaheng.pc.inventory.cycleCountDetail.service.CycleCountDetailServiceImpl;
18 import com.huaheng.pc.inventory.cycleCountHeader.service.CycleCountHeaderService; 18 import com.huaheng.pc.inventory.cycleCountHeader.service.CycleCountHeaderService;
  19 +import com.huaheng.pc.inventory.cycleCountHeader.service.CycleCountHeaderServiceImpl;
19 import org.springframework.stereotype.Controller; 20 import org.springframework.stereotype.Controller;
20 import org.springframework.web.bind.annotation.GetMapping; 21 import org.springframework.web.bind.annotation.GetMapping;
21 import org.springframework.web.bind.annotation.PostMapping; 22 import org.springframework.web.bind.annotation.PostMapping;
@@ -23,7 +24,6 @@ import org.springframework.web.bind.annotation.RequestMapping; @@ -23,7 +24,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
23 import org.springframework.web.bind.annotation.ResponseBody; 24 import org.springframework.web.bind.annotation.ResponseBody;
24 25
25 import javax.annotation.Resource; 26 import javax.annotation.Resource;
26 -import java.util.Collections;  
27 import java.util.List; 27 import java.util.List;
28 28
29 29
@@ -57,7 +57,7 @@ public class CycleCountDetailController extends BaseController { @@ -57,7 +57,7 @@ public class CycleCountDetailController extends BaseController {
57 @PostMapping("/list") 57 @PostMapping("/list")
58 @Log(title = "库存-盘点",operating = "查看盘点明细", action = BusinessType.GRANT) 58 @Log(title = "库存-盘点",operating = "查看盘点明细", action = BusinessType.GRANT)
59 @ResponseBody 59 @ResponseBody
60 - public TableDataInfo list(CycleCountDetail cycleCountDetail, String createdBegin, String createdEnd) { 60 + public TableDataInfo list(CycleCountDetail cycleCountDetail, String createdBegin, String createdEnd) throws IllegalAccessException {
61 61
62 LambdaQueryWrapper<CycleCountDetail> lambdaQueryWrapper = Wrappers.lambdaQuery(); 62 LambdaQueryWrapper<CycleCountDetail> lambdaQueryWrapper = Wrappers.lambdaQuery();
63 PageDomain pageDomain = TableSupport.buildPageRequest(); 63 PageDomain pageDomain = TableSupport.buildPageRequest();
@@ -92,7 +92,7 @@ public class CycleCountDetailController extends BaseController { @@ -92,7 +92,7 @@ public class CycleCountDetailController extends BaseController {
92 IPage<CycleCountDetail> iPage = cycleCountDetailService.page(page, lambdaQueryWrapper); 92 IPage<CycleCountDetail> iPage = cycleCountDetailService.page(page, lambdaQueryWrapper);
93 return getMpDataTable(iPage.getRecords(), iPage.getTotal()); 93 return getMpDataTable(iPage.getRecords(), iPage.getTotal());
94 } else { 94 } else {
95 - List<CycleCountDetail> list = cycleCountDetailService.list(lambdaQueryWrapper); 95 + List<CycleCountDetail> list = cycleCountDetailService.list(lambdaQueryWrapper);
96 return getDataTable(list); 96 return getDataTable(list);
97 } 97 }
98 98
src/main/java/com/huaheng/pc/inventory/cycleCountDetail/domain/CycleCountDetail.java
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName; @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
7 import io.swagger.annotations.ApiModel; 7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty; 8 import io.swagger.annotations.ApiModelProperty;
9 import java.io.Serializable; 9 import java.io.Serializable;
  10 +import java.math.BigDecimal;
10 import java.util.Date; 11 import java.util.Date;
11 12
12 @ApiModel(value="com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail") 13 @ApiModel(value="com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail")
@@ -122,21 +123,21 @@ public class CycleCountDetail implements Serializable { @@ -122,21 +123,21 @@ public class CycleCountDetail implements Serializable {
122 */ 123 */
123 @TableField(value = "systemQty") 124 @TableField(value = "systemQty")
124 @ApiModelProperty(value="系统数量") 125 @ApiModelProperty(value="系统数量")
125 - private Long systemQty; 126 + private BigDecimal systemQty;
126 127
127 /** 128 /**
128 * 实盘数量 129 * 实盘数量
129 */ 130 */
130 @TableField(value = "countedQty") 131 @TableField(value = "countedQty")
131 @ApiModelProperty(value="实盘数量") 132 @ApiModelProperty(value="实盘数量")
132 - private Long countedQty; 133 + private BigDecimal countedQty;
133 134
134 /** 135 /**
135 * 差异数量 136 * 差异数量
136 */ 137 */
137 @TableField(value = "gapQty") 138 @TableField(value = "gapQty")
138 @ApiModelProperty(value="差异数量") 139 @ApiModelProperty(value="差异数量")
139 - private Long gapQty; 140 + private BigDecimal gapQty;
140 141
141 /** 142 /**
142 * 失败原因 143 * 失败原因
@@ -562,52 +563,27 @@ public class CycleCountDetail implements Serializable { @@ -562,52 +563,27 @@ public class CycleCountDetail implements Serializable {
562 this.inventorySts = inventorySts; 563 this.inventorySts = inventorySts;
563 } 564 }
564 565
565 - /**  
566 - * 获取系统数量  
567 - *  
568 - * @return systemQty - 系统数量  
569 - */  
570 - public Long getSystemQty() { 566 + public BigDecimal getSystemQty() {
571 return systemQty; 567 return systemQty;
572 } 568 }
573 569
574 - /**  
575 - * 设置系统数量  
576 - *  
577 - * @param systemQty 系统数量  
578 - */  
579 - public void setSystemQty(Long systemQty) { 570 + public void setSystemQty(BigDecimal systemQty) {
580 this.systemQty = systemQty; 571 this.systemQty = systemQty;
581 } 572 }
582 573
583 - /**  
584 - * 获取实盘数量  
585 - *  
586 - * @return countedQty - 实盘数量  
587 - */  
588 - public Long getCountedQty() { 574 + public BigDecimal getCountedQty() {
589 return countedQty; 575 return countedQty;
590 } 576 }
591 577
592 - /**  
593 - * 设置实盘数量  
594 - *  
595 - * @param countedQty 实盘数量  
596 - */  
597 - public void setCountedQty(Long countedQty) { 578 + public void setCountedQty(BigDecimal countedQty) {
598 this.countedQty = countedQty; 579 this.countedQty = countedQty;
599 } 580 }
600 581
601 - /**  
602 - * 获取调整数量  
603 - *  
604 - * @return gapQty- 调整数量  
605 - */  
606 - public Long getGapQty() { 582 + public BigDecimal getGapQty() {
607 return gapQty; 583 return gapQty;
608 } 584 }
609 585
610 - public void setGapQty(Long gapQty) { 586 + public void setGapQty(BigDecimal gapQty) {
611 this.gapQty = gapQty; 587 this.gapQty = gapQty;
612 } 588 }
613 589
src/main/java/com/huaheng/pc/inventory/cycleCountDetail/service/CycleCountDetailService.java
1 package com.huaheng.pc.inventory.cycleCountDetail.service; 1 package com.huaheng.pc.inventory.cycleCountDetail.service;
2 2
3 -import org.springframework.stereotype.Service;  
4 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
5 -import com.huaheng.pc.inventory.cycleCountDetail.mapper.CycleCountDetailMapper; 3 +import com.baomidou.mybatisplus.extension.service.IService;
6 import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail; 4 import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail;
7 -@Service  
8 -public class CycleCountDetailService extends ServiceImpl<CycleCountDetailMapper, CycleCountDetail> { 5 +import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader;
  6 +
  7 +
  8 +public interface CycleCountDetailService extends IService<CycleCountDetail> {
  9 +
  10 +
9 11
10 } 12 }
  13 +
  14 +
src/main/java/com/huaheng/pc/inventory/cycleCountDetail/service/CycleCountDetailServiceImpl.java 0 → 100644
  1 +package com.huaheng.pc.inventory.cycleCountDetail.service;
  2 +
  3 +import org.springframework.stereotype.Service;
  4 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5 +import com.huaheng.pc.inventory.cycleCountDetail.mapper.CycleCountDetailMapper;
  6 +import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail;
  7 +@Service
  8 +public class CycleCountDetailServiceImpl extends ServiceImpl<CycleCountDetailMapper, CycleCountDetail> implements CycleCountDetailService {
  9 +
  10 +
  11 +
  12 +
  13 +
  14 +
  15 +}
src/main/java/com/huaheng/pc/inventory/cycleCountHeader/controller/CycleCountHeaderController.java
@@ -4,29 +4,32 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -4,29 +4,32 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4 import com.baomidou.mybatisplus.core.metadata.IPage; 4 import com.baomidou.mybatisplus.core.metadata.IPage;
5 import com.baomidou.mybatisplus.core.toolkit.Wrappers; 5 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
6 import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 6 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  7 +import com.huaheng.common.support.Convert;
7 import com.huaheng.common.utils.StringUtils; 8 import com.huaheng.common.utils.StringUtils;
8 import com.huaheng.common.utils.security.ShiroUtils; 9 import com.huaheng.common.utils.security.ShiroUtils;
9 import com.huaheng.framework.aspectj.lang.annotation.Log; 10 import com.huaheng.framework.aspectj.lang.annotation.Log;
10 import com.huaheng.framework.aspectj.lang.constant.BusinessType; 11 import com.huaheng.framework.aspectj.lang.constant.BusinessType;
11 import com.huaheng.framework.web.controller.BaseController; 12 import com.huaheng.framework.web.controller.BaseController;
  13 +import com.huaheng.framework.web.domain.AjaxResult;
12 import com.huaheng.framework.web.page.PageDomain; 14 import com.huaheng.framework.web.page.PageDomain;
13 import com.huaheng.framework.web.page.TableDataInfo; 15 import com.huaheng.framework.web.page.TableDataInfo;
14 import com.huaheng.framework.web.page.TableSupport; 16 import com.huaheng.framework.web.page.TableSupport;
15 -import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader;  
16 import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderService; 17 import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderService;
  18 +import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderServiceImpl;
  19 +import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail;
17 import com.huaheng.pc.inventory.cycleCountDetail.service.CycleCountDetailService; 20 import com.huaheng.pc.inventory.cycleCountDetail.service.CycleCountDetailService;
  21 +import com.huaheng.pc.inventory.cycleCountDetail.service.CycleCountDetailServiceImpl;
18 import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader; 22 import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader;
19 23
20 import com.huaheng.pc.inventory.cycleCountHeader.service.CycleCountHeaderService; 24 import com.huaheng.pc.inventory.cycleCountHeader.service.CycleCountHeaderService;
21 -import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail; 25 +import com.huaheng.pc.inventory.cycleCountHeader.service.CycleCountHeaderServiceImpl;
22 import org.apache.shiro.authz.annotation.RequiresPermissions; 26 import org.apache.shiro.authz.annotation.RequiresPermissions;
23 import org.springframework.stereotype.Controller; 27 import org.springframework.stereotype.Controller;
24 -import org.springframework.web.bind.annotation.GetMapping;  
25 -import org.springframework.web.bind.annotation.PostMapping;  
26 -import org.springframework.web.bind.annotation.RequestMapping;  
27 -import org.springframework.web.bind.annotation.ResponseBody; 28 +import org.springframework.ui.ModelMap;
  29 +import org.springframework.web.bind.annotation.*;
28 30
29 import javax.annotation.Resource; 31 import javax.annotation.Resource;
  32 +import java.util.Date;
30 import java.util.List; 33 import java.util.List;
31 34
32 /** 35 /**
@@ -92,11 +95,114 @@ public class CycleCountHeaderController extends BaseController { @@ -92,11 +95,114 @@ public class CycleCountHeaderController extends BaseController {
92 } 95 }
93 96
94 } 97 }
  98 + /**
  99 + * 新增盘点单主
  100 + */
  101 + @GetMapping("/add")
  102 + public String add()
  103 + {
  104 + return prefix + "/add";
  105 + }
95 106
  107 + /**
  108 + * 新增保存盘点单主
  109 + */
  110 + //@RequiresPermissions("inventory:cycleCount:add")
  111 + @Log(title = "库存-盘点",operating = "新增盘点主单", action = BusinessType.INSERT)
  112 + @PostMapping("/add")
  113 + @ResponseBody
  114 + public AjaxResult addSave(CycleCountHeader cycleCountHeader)
  115 + {
96 116
  117 + cycleCountHeader.setWarehouseCode(ShiroUtils.getWarehouseCode());
  118 + //cycleCountHeader.setCompanyCode(cycleCountHeader.getCompanyCode());
  119 + //cycleCountHeader.setRound(cycleCountHeader.getRound());//盘点轮次
  120 + cycleCountHeader.setCreated(new Date());
  121 + cycleCountHeader.setCreatedBy(ShiroUtils.getLoginName());
  122 + cycleCountHeader.setMasterCode(cycleCountHeaderService.createCode());
  123 + return toAjax(cycleCountHeaderService.save(cycleCountHeader));
  124 + }
97 125
  126 + /**
  127 + * 修改盘点单主
  128 + */
  129 + @GetMapping("/edit/{id}")
  130 + public String edit(@PathVariable("id") Integer id, ModelMap mmap)
  131 + {
  132 + CycleCountHeader cyclecountHeader = cycleCountHeaderService.getById(id);
  133 + mmap.put("cyclecountHeader", cyclecountHeader);
  134 + return prefix + "/edit";
  135 + }
98 136
  137 + /**
  138 + * 修改保存盘点单主
  139 + */
  140 + //@RequiresPermissions("inventory:cycleCount:edit")
  141 + @Log(title = "库存-盘点",operating = "修改盘点主单", action = BusinessType.UPDATE)
  142 + @PostMapping("/edit")
  143 + @ResponseBody
  144 + public AjaxResult editSave(CycleCountHeader cycleCountHeader)
  145 + {
  146 + cycleCountHeader.setLastUpdatedBy(ShiroUtils.getLoginName());
  147 + cycleCountHeader.setLastUpdated(new Date());
  148 + return toAjax(cycleCountHeaderService.saveOrUpdate(cycleCountHeader));
  149 + }
99 150
  151 + /**
  152 + * 删除盘点单主
  153 + */
  154 + //@RequiresPermissions("inventory:cycleCount:remove")
  155 + @Log(title = "库存-盘点",operating = "删除盘点主单", action = BusinessType.DELETE)
  156 + @PostMapping( "/remove")
  157 + @ResponseBody
  158 + public AjaxResult remove(String ids)
  159 + {
  160 + if (StringUtils.isEmpty(ids))
  161 + return AjaxResult.error("id不能为空");
  162 + for (Integer id : Convert.toIntArray(ids))
  163 + {
  164 + AjaxResult result = cycleCountHeaderService.delete(id);
  165 + if(result.code!=200){
  166 + return result;
  167 + }
  168 + }
  169 + return AjaxResult.success("删除成功!");
  170 + }
  171 +
  172 + /**
  173 + *
  174 + * 生成差异调整单
  175 + * */
  176 + //@RequiresPermissions("inventory:cyclecountHead:addAdjust")
  177 + @Log(title = "库存-盘点", operating = "新增盘点差异调整单", action = BusinessType.INSERT)
  178 + @PostMapping("/goAdjust")
  179 + @ResponseBody
  180 + public AjaxResult goAdjust(int id)
  181 + {
  182 + return (cycleCountHeaderService.insertByAdjust(id));
  183 + }
  184 +
  185 +
  186 + /**
  187 + * 盘点单报表打印
  188 + * @return
  189 + */
  190 + //@RequiresPermissions("inventory:cycleCount:report")
  191 + @GetMapping("/report/{id}")
  192 + public String report(@PathVariable("id") Integer id, ModelMap mmap)
  193 + {
  194 + CycleCountHeader cyclecountHeader = cycleCountHeaderService.getById(id);
  195 + mmap.put("cyclecountHeader", cyclecountHeader);
  196 +
  197 + CycleCountDetail condition = new CycleCountDetail();
  198 + condition.setCycleCountHeadId(id);
  199 + condition.setWarehouseCode(ShiroUtils.getWarehouseCode());
  200 + LambdaQueryWrapper lambda = Wrappers.lambdaQuery(condition);
  201 + List<CycleCountDetail> details = cycleCountDetailService.list(lambda);
  202 + mmap.put("details", details);
  203 +
  204 + return prefix + "/report";
  205 + }
100 206
101 207
102 208
src/main/java/com/huaheng/pc/inventory/cycleCountHeader/domain/CycleCountHeader.java
@@ -59,7 +59,7 @@ public class CycleCountHeader implements Serializable { @@ -59,7 +59,7 @@ public class CycleCountHeader implements Serializable {
59 */ 59 */
60 @TableField(value = "countType") 60 @TableField(value = "countType")
61 @ApiModelProperty(value="盘点类型") 61 @ApiModelProperty(value="盘点类型")
62 - private Integer countType; 62 + private String countType;
63 63
64 /** 64 /**
65 * 盘点状态 65 * 盘点状态
@@ -342,21 +342,11 @@ public class CycleCountHeader implements Serializable { @@ -342,21 +342,11 @@ public class CycleCountHeader implements Serializable {
342 this.companyCode = companyCode; 342 this.companyCode = companyCode;
343 } 343 }
344 344
345 - /**  
346 - * 获取盘点类型  
347 - *  
348 - * @return countType - 盘点类型  
349 - */  
350 - public Integer getCountType() { 345 + public String getCountType() {
351 return countType; 346 return countType;
352 } 347 }
353 348
354 - /**  
355 - * 设置盘点类型  
356 - *  
357 - * @param countType 盘点类型  
358 - */  
359 - public void setCountType(Integer countType) { 349 + public void setCountType(String countType) {
360 this.countType = countType; 350 this.countType = countType;
361 } 351 }
362 352
src/main/java/com/huaheng/pc/inventory/cycleCountHeader/mapper/CycleCountHeaderMapper.java
@@ -4,4 +4,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -4,4 +4,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader; 4 import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader;
5 5
6 public interface CycleCountHeaderMapper extends BaseMapper<CycleCountHeader> { 6 public interface CycleCountHeaderMapper extends BaseMapper<CycleCountHeader> {
  7 +
  8 + String getLastCode();
  9 +
  10 +
  11 +
7 } 12 }
8 \ No newline at end of file 13 \ No newline at end of file
src/main/java/com/huaheng/pc/inventory/cycleCountHeader/service/CycleCountHeaderService.java
1 package com.huaheng.pc.inventory.cycleCountHeader.service; 1 package com.huaheng.pc.inventory.cycleCountHeader.service;
2 2
3 -import org.springframework.stereotype.Service;  
4 -import javax.annotation.Resource;  
5 -import java.util.List;  
6 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 3 +import com.baomidou.mybatisplus.extension.service.IService;
  4 +import com.huaheng.framework.web.domain.AjaxResult;
7 import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader; 5 import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader;
8 -import com.huaheng.pc.inventory.cycleCountHeader.mapper.CycleCountHeaderMapper;  
9 -@Service  
10 -public class CycleCountHeaderService extends ServiceImpl<CycleCountHeaderMapper, CycleCountHeader> { 6 +
  7 +
  8 +public interface CycleCountHeaderService extends IService<CycleCountHeader> {
  9 +
  10 +
  11 + String createCode();
  12 + //生成调整单
  13 + AjaxResult insertByAdjust(Integer headId);
  14 +
  15 + AjaxResult delete(Integer id);
  16 +
  17 +
  18 +
  19 +
11 20
12 } 21 }
  22 +
  23 +
src/main/java/com/huaheng/pc/inventory/cycleCountHeader/service/CycleCountHeaderServiceImpl.java 0 → 100644
  1 +package com.huaheng.pc.inventory.cycleCountHeader.service;
  2 +
  3 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4 +import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  5 +import com.huaheng.common.exception.service.ServiceException;
  6 +import com.huaheng.common.utils.security.ShiroUtils;
  7 +import com.huaheng.framework.web.domain.AjaxResult;
  8 +import com.huaheng.pc.config.warehouse.domain.Warehouse;
  9 +import com.huaheng.pc.inventory.adjustDetail.domain.AdjustDetail;
  10 +import com.huaheng.pc.inventory.adjustDetail.service.AdjustDetailService;
  11 +import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader;
  12 +import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderService;
  13 +import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail;
  14 +import com.huaheng.pc.inventory.cycleCountDetail.service.CycleCountDetailService;
  15 +import org.springframework.stereotype.Service;
  16 +import javax.annotation.Resource;
  17 +import java.math.BigDecimal;
  18 +import java.security.SecureRandomSpi;
  19 +import java.text.SimpleDateFormat;
  20 +import java.util.ArrayList;
  21 +import java.util.Date;
  22 +import java.util.List;
  23 +import java.util.WeakHashMap;
  24 +
  25 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  26 +import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader;
  27 +import com.huaheng.pc.inventory.cycleCountHeader.mapper.CycleCountHeaderMapper;
  28 +import org.springframework.transaction.annotation.Transactional;
  29 +
  30 +@Service
  31 +public class CycleCountHeaderServiceImpl extends ServiceImpl<CycleCountHeaderMapper, CycleCountHeader> implements CycleCountHeaderService {
  32 +
  33 +
  34 + @Resource
  35 + private CycleCountHeaderMapper cycleCountHeaderMapper;
  36 + @Resource
  37 + private CycleCountDetailService cycleCountDetailService;
  38 + @Resource
  39 + private AdjustHeaderService adjustHeaderService;
  40 + @Resource
  41 + private AdjustDetailService adjustDetailService;
  42 +
  43 +
  44 +
  45 +
  46 +
  47 +
  48 +
  49 +
  50 + /**
  51 + * 生成盘点单主Code
  52 + * @return
  53 + */
  54 + @Override
  55 + public String createCode() {
  56 + String code;
  57 + Date now = new Date();
  58 + SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");
  59 + String maxCode = cycleCountHeaderMapper.getLastCode();;
  60 + //如果指定类型的最后的code存在,并且日期一致。那么 code = 单类型 + 年月日 + (排序号 + 1)
  61 + if (maxCode != null && maxCode.substring(maxCode.length() - 13, maxCode.length() - 5).equals(df.format(now)))
  62 + {
  63 + Integer Count = Integer.valueOf(maxCode.substring(maxCode.length() - 5));
  64 + code = "PD" + df.format(now) + String.format("%05d", Count + 1);
  65 + }
  66 + else
  67 + {
  68 + code = "PD" + df.format(now) + "00001";
  69 + }
  70 + return code;
  71 + }
  72 +
  73 + /**
  74 + * 删除单据
  75 + * @param id
  76 + * @return
  77 + */
  78 + @Override
  79 + public AjaxResult delete(Integer id) {
  80 +
  81 + CycleCountHeader cyclecountHeader = this.getById(id);
  82 + if(cyclecountHeader==null){
  83 + return AjaxResult.error("id为"+id.toString()+"的盘点单不存在出,操作中止");
  84 + }
  85 + if(cyclecountHeader.getStatusCyc() > 0){
  86 + return AjaxResult.error("盘点单:"+cyclecountHeader.getMasterCode()+"非新建状态,无法删除,操作中止");
  87 + }
  88 + //批量删除子单据
  89 + CycleCountDetail temp = new CycleCountDetail();
  90 + temp.setWarehouseCode(ShiroUtils.getWarehouseCode());
  91 + temp.setCycleCountHeadId(cyclecountHeader.getId());
  92 + LambdaQueryWrapper lm = Wrappers.lambdaQuery(temp);
  93 + cycleCountDetailService.remove(lm);
  94 + cycleCountHeaderMapper.deleteById(id);
  95 + return AjaxResult.success("盘点主单和明细删除成功");
  96 +
  97 + }
  98 +
  99 + /**
  100 + * 新增盘点差异调整单
  101 + * */
  102 + @Transactional
  103 + public AjaxResult insertByAdjust(Integer id) {
  104 +
  105 + /*获取盘点主单ID生成差异调整单,根据主单ID获取明细条目,再根据明细条目差异数量是否为0生成差异调整详单*/
  106 + //1 根据盘点单ID生成差异调整主单,2 下一步根据盘点主单ID查询盘点明细的条目数据,
  107 + //3 for循环明细条目,同时依据差异数据是否为0来决定是否生成差异单,同步写入调整单详细。
  108 +
  109 + //查询该条盘点单头 id
  110 + CycleCountHeader cyclecountHeader = cycleCountHeaderMapper.selectById(id);
  111 +
  112 + if(cyclecountHeader.getStatusCyc() >= 35){
  113 + //查询是否已生成差异单
  114 + throw new ServiceException("该条盘点单无法生成调整单,请检查状态!");
  115 + }
  116 +
  117 + AdjustHeader adjustHeader = new AdjustHeader();
  118 + adjustHeader.setWarehouseCode(ShiroUtils.getWarehouseCode());//仓库
  119 + adjustHeader.setCode(adjustHeaderService.createCode());//生成差异单号
  120 + adjustHeader.setProblemType("盘点调整");
  121 + adjustHeader.setCycleCountCode(cyclecountHeader.getMasterCode());
  122 + adjustHeader.setCompanyCode(cyclecountHeader.getCompanyCode());
  123 + adjustHeader.setCreated(new Date());
  124 + adjustHeader.setCreatedBy(ShiroUtils.getLoginName());
  125 + //adjustHeader.setStatus(10);//新建未上传
  126 + //先创建调整单头
  127 + adjustHeaderService.save(adjustHeader);
  128 +
  129 + //根据盘点单查询明细并写入调整单
  130 + CycleCountDetail cycleCountDetail = new CycleCountDetail();
  131 + cycleCountDetail.setCycleCountHeadId(id);
  132 + cycleCountDetail.setWarehouseCode(cyclecountHeader.getWarehouseCode());
  133 + LambdaQueryWrapper lam = Wrappers.lambdaQuery(cycleCountDetail);
  134 + List<CycleCountDetail> cycleCountDetailList = cycleCountDetailService.list(lam);
  135 + //找到刚刚生成的调整主单
  136 + //AdjustHeader adjust = adjustHeaderService.getById(adjustHeader.getId());
  137 + //循环明细条目,查找符合条件的数据写入调整单明细
  138 + AdjustDetail adjustDetail = new AdjustDetail();
  139 + for(CycleCountDetail item:cycleCountDetailList){
  140 + //BigDecimal的比较 .compareTo(BigDecimal.ZERO) != 0
  141 + if(item.getGapQty().compareTo(BigDecimal.ZERO) != 0){
  142 + //比较差异数量不为0的就生成差异单
  143 + adjustDetail.setAdjustCode(adjustHeader.getCode());
  144 + adjustDetail.setWarehouseCode(adjustHeader.getWarehouseCode());
  145 + adjustDetail.setCompanyCode(adjustHeader.getCompanyCode());
  146 + adjustDetail.setLocationCode(item.getLocationCode());
  147 + adjustDetail.setContainerCode(item.getContainerCode());
  148 + adjustDetail.setCycleCountCode(cyclecountHeader.getMasterCode());
  149 + adjustDetail.setMaterialCode(item.getMaterialCode());
  150 + adjustDetail.setMaterialName(item.getMaterialName());
  151 + adjustDetail.setMaterialSpec(item.getMaterialSpec());
  152 + adjustDetail.setMaterialUnit(item.getMaterialUnit());
  153 + adjustDetail.setCycleDetailId(item.getId());
  154 + adjustDetail.setProblemType("盘点调整");
  155 + adjustDetail.setToInventorySts(item.getInventorySts());//盘点不涉及属性
  156 + adjustDetail.setFromInventorySts(item.getInventorySts());
  157 + adjustDetail.setFromQty(item.getSystemQty());//调整前数量
  158 + adjustDetail.setToQty(null);//调整后数量
  159 + adjustDetail.setGapQty(item.getGapQty());//调整数量
  160 + adjustDetail.setCreated(new Date());
  161 + adjustDetail.setCreatedBy(ShiroUtils.getLoginName());
  162 + //adjustDetail.setStatus(0);//状态
  163 +
  164 + adjustDetailService.save(adjustDetail);
  165 + }
  166 +
  167 + }
  168 +
  169 + //修改盘点主单状态为已生成差异单
  170 +
  171 + cyclecountHeader.setStatusCyc(35);
  172 + this.saveOrUpdate(cyclecountHeader);
  173 +
  174 + return AjaxResult.success("差异调整及明细单生成完毕!");
  175 + }
  176 +
  177 +
  178 +
  179 +
  180 +
  181 +
  182 +
  183 +
  184 +}
src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailService.java
@@ -3,6 +3,7 @@ package com.huaheng.pc.inventory.inventoryDetail.service; @@ -3,6 +3,7 @@ package com.huaheng.pc.inventory.inventoryDetail.service;
3 import com.baomidou.mybatisplus.extension.service.IService; 3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.huaheng.framework.web.domain.AjaxResult; 4 import com.huaheng.framework.web.domain.AjaxResult;
5 import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail; 5 import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail;
  6 +import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail;
6 7
7 import java.util.List; 8 import java.util.List;
8 9
@@ -11,7 +12,7 @@ public interface InventoryDetailService extends IService&lt;InventoryDetail&gt; { @@ -11,7 +12,7 @@ public interface InventoryDetailService extends IService&lt;InventoryDetail&gt; {
11 12
12 AjaxResult detailcreateCheckOutTask (Integer id); 13 AjaxResult detailcreateCheckOutTask (Integer id);
13 14
14 - List<InventoryDetail> selectBysql(String sql); 15 + List<InventoryDetail> selectBysql(String sql, ShipmentDetail shipmentDetail);
15 16
16 } 17 }
17 18
src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailServiceImpl.java
@@ -9,6 +9,7 @@ import com.huaheng.framework.web.domain.AjaxResult; @@ -9,6 +9,7 @@ import com.huaheng.framework.web.domain.AjaxResult;
9 import com.huaheng.pc.config.location.domain.Location; 9 import com.huaheng.pc.config.location.domain.Location;
10 import com.huaheng.pc.config.location.service.LocationService; 10 import com.huaheng.pc.config.location.service.LocationService;
11 import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail; 11 import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail;
  12 +import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail;
12 import com.huaheng.pc.task.taskDetail.domain.TaskDetail; 13 import com.huaheng.pc.task.taskDetail.domain.TaskDetail;
13 import com.huaheng.pc.task.taskDetail.service.TaskDetailService; 14 import com.huaheng.pc.task.taskDetail.service.TaskDetailService;
14 import com.huaheng.pc.task.taskHeader.domain.TaskHeader; 15 import com.huaheng.pc.task.taskHeader.domain.TaskHeader;
@@ -103,7 +104,11 @@ public class InventoryDetailServiceImpl extends ServiceImpl&lt;InventoryDetailMappe @@ -103,7 +104,11 @@ public class InventoryDetailServiceImpl extends ServiceImpl&lt;InventoryDetailMappe
103 } 104 }
104 105
105 @Override 106 @Override
106 - public List<InventoryDetail> selectBysql(String sql) { 107 + public List<InventoryDetail> selectBysql(String sql, ShipmentDetail shipmentDetail) {
  108 + sql=sql+" \n" +"and warehouseCode='" + shipmentDetail.getWarehouseCode()+"' \n" +
  109 + "and companyCode='" + shipmentDetail.getCompanyCode()+"' \n" +
  110 + "and materialCode='" + shipmentDetail.getMaterialCode() +"' \n" +
  111 + "and inventorySts='" + shipmentDetail.getInventorySts() + "'";
107 return inventoryDetailMapper.selectBysql(sql); 112 return inventoryDetailMapper.selectBysql(sql);
108 } 113 }
109 114
src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java
@@ -21,7 +21,10 @@ import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader; @@ -21,7 +21,10 @@ import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader;
21 import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService; 21 import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService;
22 import com.huaheng.pc.shipment.shippingCombination.domain.ShippingSearch; 22 import com.huaheng.pc.shipment.shippingCombination.domain.ShippingSearch;
23 import com.huaheng.pc.shipment.shippingCombination.service.ShippingCombinationService; 23 import com.huaheng.pc.shipment.shippingCombination.service.ShippingCombinationService;
  24 +import com.huaheng.pc.task.taskDetail.domain.TaskDetail;
  25 +import com.huaheng.pc.task.taskDetail.service.TaskDetailService;
24 import com.huaheng.pc.task.taskHeader.domain.ShipmentTaskCreateModel; 26 import com.huaheng.pc.task.taskHeader.domain.ShipmentTaskCreateModel;
  27 +import com.huaheng.pc.task.taskHeader.domain.TaskHeader;
25 import com.huaheng.pc.task.taskHeader.service.TaskHeaderService; 28 import com.huaheng.pc.task.taskHeader.service.TaskHeaderService;
26 import org.springframework.beans.factory.annotation.Autowired; 29 import org.springframework.beans.factory.annotation.Autowired;
27 import org.springframework.stereotype.Service; 30 import org.springframework.stereotype.Service;
@@ -58,6 +61,8 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont @@ -58,6 +61,8 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
58 private ShippingCombinationService shippingCombinationService; 61 private ShippingCombinationService shippingCombinationService;
59 @Autowired 62 @Autowired
60 private TaskHeaderService taskHeaderService; 63 private TaskHeaderService taskHeaderService;
  64 + @Autowired
  65 + private TaskDetailService taskDetailService;
61 66
62 67
63 @Override 68 @Override
@@ -106,24 +111,26 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont @@ -106,24 +111,26 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
106 Location location = locationService.getOne(lambdaQueryWrapper); 111 Location location = locationService.getOne(lambdaQueryWrapper);
107 if (location == null) 112 if (location == null)
108 throw new ServiceException("库位 "+ inventoryDetail.getLocationCode() +" 不存在"); 113 throw new ServiceException("库位 "+ inventoryDetail.getLocationCode() +" 不存在");
109 - if (location.getStatus().equals("lock")) {  
110 - //如果库位状态是锁定的话,就查找出库组盘表,如果存在未下发  
111 - LambdaQueryWrapper<ShipmentContainerHeader> lam=Wrappers.lambdaQuery();  
112 - lam.eq(ShipmentContainerHeader::getWarehouseCode,ShiroUtils.getWarehouseCode())  
113 - .eq(ShipmentContainerHeader::getContainerCode,location.getContainerCode())  
114 - .eq(ShipmentContainerHeader::getTaskCreated,0);  
115 - ShipmentContainerHeader shipmentContainerHeader = this.getOne(lam);  
116 - if (shipmentContainerHeader == null) {  
117 - throw new ServiceException("库位已经锁定不能使用");  
118 - }  
119 - } 114 +// if (location.getStatus().equals("lock")) {
  115 +// //如果库位状态是锁定的话,就查找出库组盘表,如果存在未下发
  116 +// LambdaQueryWrapper<ShipmentContainerHeader> lam=Wrappers.lambdaQuery();
  117 +// lam.eq(ShipmentContainerHeader::getWarehouseCode,ShiroUtils.getWarehouseCode())
  118 +// .eq(ShipmentContainerHeader::getContainerCode,location.getContainerCode())
  119 +// .eq(ShipmentContainerHeader::getTaskCreated,0);
  120 +// ShipmentContainerHeader shipmentContainerHeader = this.getOne(lam);
  121 +// if (shipmentContainerHeader == null) {
  122 +// throw new ServiceException("库位已经锁定不能使用");
  123 +// }
  124 +// }
120 125
121 //更新库存分配数 126 //更新库存分配数
122 inventoryDetail.setTaskQty(inventoryDetail.getTaskQty().add(shipmentCombinationModel.getShipQty())); 127 inventoryDetail.setTaskQty(inventoryDetail.getTaskQty().add(shipmentCombinationModel.getShipQty()));
123 inventoryDetailService.saveOrUpdate(inventoryDetail); 128 inventoryDetailService.saveOrUpdate(inventoryDetail);
124 //获取库位,然后锁定 129 //获取库位,然后锁定
125 - location.setStatus("lock");  
126 - locationService.saveOrUpdate(location); 130 + if(location.getStatus().equals("empty")) {
  131 + location.setStatus("lock");
  132 + locationService.saveOrUpdate(location);
  133 + }
127 //更新单据明细的已出库数量 134 //更新单据明细的已出库数量
128 shipmentDetail.setRequestQty(shipmentDetail.getRequestQty().add(shipmentCombinationModel.getShipQty())); 135 shipmentDetail.setRequestQty(shipmentDetail.getRequestQty().add(shipmentCombinationModel.getShipQty()));
129 int i = shipmentDetail.getShipQty().compareTo(shipmentDetail.getRequestQty()); 136 int i = shipmentDetail.getShipQty().compareTo(shipmentDetail.getRequestQty());
@@ -166,20 +173,19 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont @@ -166,20 +173,19 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
166 LambdaQueryWrapper<ShipmentContainerHeader> lambdaQueryWrapper=Wrappers.lambdaQuery(); 173 LambdaQueryWrapper<ShipmentContainerHeader> lambdaQueryWrapper=Wrappers.lambdaQuery();
167 lambdaQueryWrapper.eq(ShipmentContainerHeader::getContainerCode,location.getContainerCode()) 174 lambdaQueryWrapper.eq(ShipmentContainerHeader::getContainerCode,location.getContainerCode())
168 .eq(ShipmentContainerHeader::getWarehouseCode,ShiroUtils.getWarehouseCode()) 175 .eq(ShipmentContainerHeader::getWarehouseCode,ShiroUtils.getWarehouseCode())
169 - .eq(ShipmentContainerHeader::getTaskCreated,1)  
170 - .eq(ShipmentContainerHeader::getStatus,10); 176 + .le(ShipmentContainerHeader::getStatus,20);
171 ShipmentContainerHeader shipmentContainerHeader = this.getOne(lambdaQueryWrapper); 177 ShipmentContainerHeader shipmentContainerHeader = this.getOne(lambdaQueryWrapper);
172 if(shipmentContainerHeader != null) { 178 if(shipmentContainerHeader != null) {
173 - throw new ServiceException("容器"+location.getContainerCode()+"已经生成任务,不能再添加明细;操作中止;"); 179 + return shipmentContainerHeader;
174 } 180 }
175 else { 181 else {
176 - LambdaQueryWrapper<ShipmentContainerHeader> lam=Wrappers.lambdaQuery();  
177 - lam.eq(ShipmentContainerHeader::getContainerCode,location.getContainerCode())  
178 - .eq(ShipmentContainerHeader::getWarehouseCode,ShiroUtils.getWarehouseCode())  
179 - .eq(ShipmentContainerHeader::getTaskCreated,0)  
180 - .eq(ShipmentContainerHeader::getStatus,0);  
181 - shipmentContainerHeader = this.getOne(lam);  
182 - if (shipmentContainerHeader == null) { 182 +// LambdaQueryWrapper<ShipmentContainerHeader> lam=Wrappers.lambdaQuery();
  183 +// lam.eq(ShipmentContainerHeader::getContainerCode,location.getContainerCode())
  184 +// .eq(ShipmentContainerHeader::getWarehouseCode,ShiroUtils.getWarehouseCode())
  185 +// .eq(ShipmentContainerHeader::getTaskCreated,0)
  186 +// .eq(ShipmentContainerHeader::getStatus,0);
  187 +// shipmentContainerHeader = this.getOne(lam);
  188 +// if (shipmentContainerHeader == null) {
183 shipmentContainerHeader = new ShipmentContainerHeader(); 189 shipmentContainerHeader = new ShipmentContainerHeader();
184 shipmentContainerHeader.setContainerCode(location.getContainerCode()); 190 shipmentContainerHeader.setContainerCode(location.getContainerCode());
185 shipmentContainerHeader.setLocationCode(location.getCode()); 191 shipmentContainerHeader.setLocationCode(location.getCode());
@@ -194,9 +200,9 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont @@ -194,9 +200,9 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
194 // material.setCode(shipmentDetail.getMaterialCode()); 200 // material.setCode(shipmentDetail.getMaterialCode());
195 // shipmentContainerHeader.setZoneCode(materialService.selectFirstEntity(material).getZoneCode()); 201 // shipmentContainerHeader.setZoneCode(materialService.selectFirstEntity(material).getZoneCode());
196 this.save(shipmentContainerHeader); 202 this.save(shipmentContainerHeader);
  203 + return shipmentContainerHeader;
197 } 204 }
198 - }  
199 - return shipmentContainerHeader; 205 +// }
200 } 206 }
201 207
202 /** 208 /**
@@ -246,6 +252,45 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont @@ -246,6 +252,45 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
246 shipmentContainerDetail.setCreatedBy(ShiroUtils.getLoginName()); 252 shipmentContainerDetail.setCreatedBy(ShiroUtils.getLoginName());
247 shipmentContainerDetailService.save(shipmentContainerDetail); 253 shipmentContainerDetailService.save(shipmentContainerDetail);
248 } 254 }
  255 +
  256 + //
  257 + if(shipmentContainerHeader.getStatus()<=10){
  258 + LambdaQueryWrapper<TaskHeader> taskHeaderLambdaQueryWrapper=Wrappers.lambdaQuery();
  259 + taskHeaderLambdaQueryWrapper.eq(TaskHeader::getWarehouseCode,shipmentContainerHeader.getWarehouseCode())
  260 + .eq(TaskHeader::getInternalTaskType,200)
  261 + .eq(TaskHeader::getAllocationHeadId,shipmentContainerHeader.getId());
  262 + TaskHeader taskHeader=taskHeaderService.getOne(taskHeaderLambdaQueryWrapper);
  263 + if(taskHeader==null){
  264 + throw new ServiceException("找不到相应的任务头");
  265 + }
  266 + TaskDetail taskDetail = new TaskDetail();
  267 + taskDetail.setTaskId(taskHeader.getId());
  268 + taskDetail.setInternalTaskType(taskHeader.getInternalTaskType());
  269 + taskDetail.setWarehouseCode(taskHeader.getWarehouseCode());
  270 + taskDetail.setCompanyCode(taskHeader.getCompanyCode());
  271 + taskDetail.setTaskType(taskHeader.getTaskType());
  272 + taskDetail.setAllocationId(shipmentContainerDetail.getId());
  273 + taskDetail.setBillCode(shipmentContainerDetail.getShipmentCode());
  274 + taskDetail.setBillDetailId(shipmentContainerDetail.getShipmentDetailId());
  275 + taskDetail.setMaterialCode(shipmentContainerDetail.getMaterialCode());
  276 + taskDetail.setMaterialName(shipmentContainerDetail.getMaterialName());
  277 + taskDetail.setMaterialSpec(shipmentContainerDetail.getMaterialSpec());
  278 + taskDetail.setMaterialUnit(shipmentContainerDetail.getMaterialUnit());
  279 + taskDetail.setFromInventoryId(shipmentContainerDetail.getInventoryId());
  280 + taskDetail.setQty(shipmentContainerDetail.getQty());
  281 + taskDetail.setContainerCode(taskHeader.getContainerCode());
  282 + taskDetail.setFromLocation(taskHeader.getFromLocation());
  283 + taskDetail.setToLocation(taskHeader.getToLocation());
  284 + if(shipmentContainerHeader.getStatus()==10) {
  285 + taskDetail.setStatus(0);
  286 + }else {
  287 + taskDetail.setStatus(10);
  288 + }
  289 + taskDetail.setTaskType(taskHeader.getTaskType());
  290 + taskDetail.setLastUpdatedBy(ShiroUtils.getLoginName());
  291 + taskDetail.setLastUpdated(null);
  292 + taskDetailService.save(taskDetail);
  293 + }
249 return shipmentContainerDetail; 294 return shipmentContainerDetail;
250 } 295 }
251 296
@@ -360,13 +405,13 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont @@ -360,13 +405,13 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
360 continue; 405 continue;
361 } 406 }
362 // 根据 仓库编码、货主编码、存货编码,物料状态,项目号来查找可以出库的物料 407 // 根据 仓库编码、货主编码、存货编码,物料状态,项目号来查找可以出库的物料
363 - ShippingSearch search = new ShippingSearch();  
364 - search.setWarehouseCode(ShiroUtils.getWarehouseCode());  
365 - search.setCompanyCode(item.getCompanyCode());  
366 - search.setMaterialCode(item.getMaterialCode());  
367 - search.setInventorySts(item.getInventorySts()); //物料状态 408 +// ShippingSearch search = new ShippingSearch();
  409 +// search.setWarehouseCode(ShiroUtils.getWarehouseCode());
  410 +// search.setCompanyCode(item.getCompanyCode());
  411 +// search.setMaterialCode(item.getMaterialCode());
  412 +// search.setInventorySts(item.getInventorySts()); //物料状态
368 413
369 - List<InventoryDetail> inventoryList = shippingCombinationService.getInventorys(search); 414 + List<InventoryDetail> inventoryList = shippingCombinationService.getInventorys(item);
370 if (inventoryList.size() < 1) { 415 if (inventoryList.size() < 1) {
371 num = num + 1; 416 num = num + 1;
372 } else { 417 } else {
src/main/java/com/huaheng/pc/shipment/shippingCombination/controller/ShippingCombinationController.java
@@ -42,8 +42,7 @@ public class ShippingCombinationController extends BaseController { @@ -42,8 +42,7 @@ public class ShippingCombinationController extends BaseController {
42 42
43 private String prefix = "shipment/shippingCombination"; 43 private String prefix = "shipment/shippingCombination";
44 44
45 - @Autowired  
46 - MaterialServiceImpl materialService; 45 +
47 @Autowired 46 @Autowired
48 ShipmentDetailServiceImpl shipmentDetailService; 47 ShipmentDetailServiceImpl shipmentDetailService;
49 @Autowired 48 @Autowired
@@ -54,14 +53,6 @@ public class ShippingCombinationController extends BaseController { @@ -54,14 +53,6 @@ public class ShippingCombinationController extends BaseController {
54 ShipmentContainerDetailService shipmentContainerDetailService; 53 ShipmentContainerDetailService shipmentContainerDetailService;
55 @Autowired 54 @Autowired
56 ShipmentHeaderService shipmentHeaderService; 55 ShipmentHeaderService shipmentHeaderService;
57 - @Autowired  
58 - InventoryDetailService inventoryDetailService;  
59 - @Autowired  
60 - ConfigValueService configValueService;  
61 - @Autowired  
62 - FilterConfigDetailService filterConfigDetailService;  
63 - @Autowired  
64 - ShipmentPreferenceService shipmentPreferenceService;  
65 56
66 57
67 /** 58 /**
@@ -152,72 +143,8 @@ public class ShippingCombinationController extends BaseController { @@ -152,72 +143,8 @@ public class ShippingCombinationController extends BaseController {
152 throw new ServiceException("找不到子单"); 143 throw new ServiceException("找不到子单");
153 } 144 }
154 145
  146 + List<InventoryDetail> list=shippingCombinationService.getInventorys(shipmentDetail);
155 //查找分配规则 147 //查找分配规则
156 - List<InventoryDetail> list=new ArrayList<>();  
157 - FilterConfigDetail filterConfigDetail=new FilterConfigDetail();  
158 - LambdaQueryWrapper<FilterConfigDetail> filterConfigDetailLambdaQueryWrapper=Wrappers.lambdaQuery();  
159 - filterConfigDetailLambdaQueryWrapper.eq(FilterConfigDetail::getWarehouseCode,shipmentDetail.getWarehouseCode());  
160 -  
161 - //出库子单的分配规则有时,优先出库子单的分配规则  
162 - if(StringUtils.isNotEmpty(shipmentDetail.getAllocationRule())){  
163 - filterConfigDetailLambdaQueryWrapper.eq(FilterConfigDetail::getCode,shipmentDetail.getAllocationRule());  
164 - filterConfigDetail=filterConfigDetailService.getOne(filterConfigDetailLambdaQueryWrapper);  
165 - if(filterConfigDetail==null){  
166 - throw new ServiceException("出库子单出库规则配置不存在");  
167 - }  
168 -  
169 - //根据sql查库存  
170 - try {  
171 - list = inventoryDetailService.selectBysql(filterConfigDetail.getStatement());  
172 - }catch (Exception e){  
173 - throw new ServiceException("sql错误");  
174 - }  
175 - return getDataTable(list);  
176 - }  
177 -  
178 - //出库子单的分配规则没有时,优先物料的分配规则  
179 - LambdaQueryWrapper<Material> materialLambdaQueryWrapper=Wrappers.lambdaQuery();  
180 - materialLambdaQueryWrapper.eq(Material::getCode,shipmentDetail.getMaterialCode())  
181 - .eq(Material::getWarehouseCode,shipmentDetail.getWarehouseCode());  
182 - Material material=materialService.getOne(materialLambdaQueryWrapper);  
183 - if(StringUtils.isNotEmpty(material.getAllocationRule())){  
184 - filterConfigDetailLambdaQueryWrapper.eq(FilterConfigDetail::getCode,material.getAllocationRule());  
185 - filterConfigDetail=filterConfigDetailService.getOne(filterConfigDetailLambdaQueryWrapper);  
186 - if(filterConfigDetail==null){  
187 - throw new ServiceException("物料出库规则配置不存在");  
188 - }  
189 -  
190 - //根据sql查库存  
191 - list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement());  
192 - return getDataTable(list);  
193 - }  
194 -  
195 - //都没有时,默认仓库的分配规则  
196 - LambdaQueryWrapper<ConfigValue> configValueLambdaQueryWrapper=Wrappers.lambdaQuery();  
197 - configValueLambdaQueryWrapper.eq(ConfigValue::getModuleType,"shipment")  
198 - .eq(ConfigValue::getWarehouseCode,shipmentDetail.getWarehouseCode());  
199 - ConfigValue configValue=configValueService.getOne(configValueLambdaQueryWrapper);  
200 - if(configValue==null){  
201 - throw new ServiceException("仓库的出库配置不存在");  
202 - }  
203 -  
204 - //查找出库首选项  
205 - LambdaQueryWrapper<ShipmentPreference> slam=Wrappers.lambdaQuery();  
206 - slam.eq(ShipmentPreference::getCode,configValue.getIdentifier())  
207 - .eq(ShipmentPreference::getWarehouseCode,configValue.getWarehouseCode());  
208 - ShipmentPreference shipmentPreference=shipmentPreferenceService.getOne(slam);  
209 - if(shipmentPreference==null){  
210 - throw new ServiceException("仓库的出库配置中出库首选项不存在");  
211 - }  
212 - //查找分配规则  
213 - filterConfigDetailLambdaQueryWrapper.eq(FilterConfigDetail::getCode,shipmentPreference.getAllocationRule());  
214 - filterConfigDetail=filterConfigDetailService.getOne(filterConfigDetailLambdaQueryWrapper);  
215 - if(filterConfigDetail==null){  
216 - throw new ServiceException("出库首选项中出库规则配置不存在");  
217 - }  
218 -  
219 - //根据sql查库存  
220 - list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement());  
221 return getDataTable(list); 148 return getDataTable(list);
222 } 149 }
223 150
src/main/java/com/huaheng/pc/shipment/shippingCombination/service/ShippingCombinationService.java
1 package com.huaheng.pc.shipment.shippingCombination.service; 1 package com.huaheng.pc.shipment.shippingCombination.service;
2 2
3 3
  4 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  5 +import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  6 +import com.huaheng.common.exception.service.ServiceException;
  7 +import com.huaheng.common.utils.StringUtils;
  8 +import com.huaheng.pc.config.FilterConfigDetail.domain.FilterConfigDetail;
  9 +import com.huaheng.pc.config.FilterConfigDetail.service.FilterConfigDetailService;
  10 +import com.huaheng.pc.config.configValue.domain.ConfigValue;
  11 +import com.huaheng.pc.config.configValue.service.ConfigValueService;
  12 +import com.huaheng.pc.config.material.domain.Material;
  13 +import com.huaheng.pc.config.material.service.MaterialServiceImpl;
  14 +import com.huaheng.pc.config.shipmentPreference.domain.ShipmentPreference;
  15 +import com.huaheng.pc.config.shipmentPreference.service.ShipmentPreferenceService;
4 import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail; 16 import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail;
  17 +import com.huaheng.pc.inventory.inventoryDetail.service.InventoryDetailService;
  18 +import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail;
5 import com.huaheng.pc.shipment.shippingCombination.domain.ShippingSearch; 19 import com.huaheng.pc.shipment.shippingCombination.domain.ShippingSearch;
6 import com.huaheng.pc.shipment.shippingCombination.mapper.ShippingCombinationMapper; 20 import com.huaheng.pc.shipment.shippingCombination.mapper.ShippingCombinationMapper;
  21 +import org.springframework.beans.factory.annotation.Autowired;
7 import org.springframework.stereotype.Service; 22 import org.springframework.stereotype.Service;
8 23
9 import javax.annotation.Resource; 24 import javax.annotation.Resource;
  25 +import java.util.ArrayList;
10 import java.util.List; 26 import java.util.List;
11 27
12 28
@@ -15,10 +31,86 @@ public class ShippingCombinationService { @@ -15,10 +31,86 @@ public class ShippingCombinationService {
15 31
16 @Resource 32 @Resource
17 private ShippingCombinationMapper shippingCombinationMapper; 33 private ShippingCombinationMapper shippingCombinationMapper;
  34 + @Autowired
  35 + InventoryDetailService inventoryDetailService;
  36 + @Autowired
  37 + ConfigValueService configValueService;
  38 + @Autowired
  39 + FilterConfigDetailService filterConfigDetailService;
  40 + @Autowired
  41 + ShipmentPreferenceService shipmentPreferenceService;
  42 + @Autowired
  43 + MaterialServiceImpl materialService;
18 44
19 45
20 - public List<InventoryDetail> getInventorys(ShippingSearch search) {  
21 - List<InventoryDetail> list = shippingCombinationMapper.getInventorys(search); 46 +
  47 + //根据分配规则查找库存
  48 + public List<InventoryDetail> getInventorys(ShipmentDetail shipmentDetail) {
  49 + List<InventoryDetail> list=new ArrayList<>();
  50 + FilterConfigDetail filterConfigDetail=new FilterConfigDetail();
  51 + LambdaQueryWrapper<FilterConfigDetail> filterConfigDetailLambdaQueryWrapper= Wrappers.lambdaQuery();
  52 + filterConfigDetailLambdaQueryWrapper.eq(FilterConfigDetail::getWarehouseCode,shipmentDetail.getWarehouseCode());
  53 +
  54 + //出库子单的分配规则有时,优先出库子单的分配规则
  55 + if(StringUtils.isNotEmpty(shipmentDetail.getAllocationRule())){
  56 + filterConfigDetailLambdaQueryWrapper.eq(FilterConfigDetail::getCode,shipmentDetail.getAllocationRule());
  57 + filterConfigDetail=filterConfigDetailService.getOne(filterConfigDetailLambdaQueryWrapper);
  58 + if(filterConfigDetail==null){
  59 + throw new ServiceException("出库子单出库规则配置不存在");
  60 + }
  61 +
  62 + //根据sql查库存
  63 + try {
  64 + list = inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail);
  65 + }catch (Exception e){
  66 + throw new ServiceException("sql错误");
  67 + }
  68 + return list;
  69 + }
  70 +
  71 + //出库子单的分配规则没有时,优先物料的分配规则
  72 + LambdaQueryWrapper<Material> materialLambdaQueryWrapper=Wrappers.lambdaQuery();
  73 + materialLambdaQueryWrapper.eq(Material::getCode,shipmentDetail.getMaterialCode())
  74 + .eq(Material::getWarehouseCode,shipmentDetail.getWarehouseCode());
  75 + Material material=materialService.getOne(materialLambdaQueryWrapper);
  76 + if(StringUtils.isNotEmpty(material.getAllocationRule())){
  77 + filterConfigDetailLambdaQueryWrapper.eq(FilterConfigDetail::getCode,material.getAllocationRule());
  78 + filterConfigDetail=filterConfigDetailService.getOne(filterConfigDetailLambdaQueryWrapper);
  79 + if(filterConfigDetail==null){
  80 + throw new ServiceException("物料出库规则配置不存在");
  81 + }
  82 +
  83 + //根据sql查库存
  84 + list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail);
  85 + return list;
  86 + }
  87 +
  88 + //都没有时,默认仓库的分配规则
  89 + LambdaQueryWrapper<ConfigValue> configValueLambdaQueryWrapper=Wrappers.lambdaQuery();
  90 + configValueLambdaQueryWrapper.eq(ConfigValue::getModuleType,"shipment")
  91 + .eq(ConfigValue::getWarehouseCode,shipmentDetail.getWarehouseCode());
  92 + ConfigValue configValue=configValueService.getOne(configValueLambdaQueryWrapper);
  93 + if(configValue==null){
  94 + throw new ServiceException("仓库的出库配置不存在");
  95 + }
  96 +
  97 + //查找出库首选项
  98 + LambdaQueryWrapper<ShipmentPreference> slam=Wrappers.lambdaQuery();
  99 + slam.eq(ShipmentPreference::getCode,configValue.getIdentifier())
  100 + .eq(ShipmentPreference::getWarehouseCode,configValue.getWarehouseCode());
  101 + ShipmentPreference shipmentPreference=shipmentPreferenceService.getOne(slam);
  102 + if(shipmentPreference==null){
  103 + throw new ServiceException("仓库的出库配置中出库首选项不存在");
  104 + }
  105 + //查找分配规则
  106 + filterConfigDetailLambdaQueryWrapper.eq(FilterConfigDetail::getCode,shipmentPreference.getAllocationRule());
  107 + filterConfigDetail=filterConfigDetailService.getOne(filterConfigDetailLambdaQueryWrapper);
  108 + if(filterConfigDetail==null){
  109 + throw new ServiceException("出库首选项中出库规则配置不存在");
  110 + }
  111 +
  112 + //根据sql查库存
  113 + list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail);
22 return list; 114 return list;
23 } 115 }
24 116
src/main/java/com/huaheng/pc/task/taskDetail/domain/TaskDetail.java
@@ -57,6 +57,14 @@ public class TaskDetail implements Serializable { @@ -57,6 +57,14 @@ public class TaskDetail implements Serializable {
57 @ApiModelProperty(value="货主") 57 @ApiModelProperty(value="货主")
58 private String companyCode; 58 private String companyCode;
59 59
  60 +
  61 + /**
  62 + * 组盘子id
  63 + */
  64 + @TableField(value = "allocationId")
  65 + @ApiModelProperty(value="组盘子id")
  66 + private Integer allocationId;
  67 +
60 /** 68 /**
61 * 单据编码 69 * 单据编码
62 */ 70 */
@@ -162,12 +170,6 @@ public class TaskDetail implements Serializable { @@ -162,12 +170,6 @@ public class TaskDetail implements Serializable {
162 @ApiModelProperty(value="参考单号") 170 @ApiModelProperty(value="参考单号")
163 private String referenceCode; 171 private String referenceCode;
164 172
165 - /**  
166 - * 参考内部号  
167 - */  
168 - @TableField(value = "referenceId")  
169 - @ApiModelProperty(value="参考内部号")  
170 - private Integer referenceId;  
171 173
172 /** 174 /**
173 * 参考内部行号 175 * 参考内部行号
@@ -379,6 +381,8 @@ public class TaskDetail implements Serializable { @@ -379,6 +381,8 @@ public class TaskDetail implements Serializable {
379 381
380 public static final String COL_COMPANYCODE = "companyCode"; 382 public static final String COL_COMPANYCODE = "companyCode";
381 383
  384 + public static final String COL_ALLOCATIONID= "allocationId";
  385 +
382 public static final String COL_BILLCODE= "billCode"; 386 public static final String COL_BILLCODE= "billCode";
383 387
384 public static final String COL_BILLDETAILID= "billDetailId"; 388 public static final String COL_BILLDETAILID= "billDetailId";
src/main/java/com/huaheng/pc/task/taskHeader/domain/TaskHeader.java
@@ -43,6 +43,13 @@ public class TaskHeader implements Serializable { @@ -43,6 +43,13 @@ public class TaskHeader implements Serializable {
43 private Integer taskType; 43 private Integer taskType;
44 44
45 /** 45 /**
  46 + * 入库或出库组盘头ID
  47 + */
  48 + @TableField(value = "allocationHeadId")
  49 + @ApiModelProperty(value="入库或出库组盘头ID")
  50 + private Integer allocationHeadId;
  51 +
  52 + /**
46 * 内部类型 53 * 内部类型
47 */ 54 */
48 @TableField(value = "internalTaskType") 55 @TableField(value = "internalTaskType")
src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java
@@ -31,6 +31,8 @@ public interface TaskHeaderService extends IService&lt;TaskHeader&gt;{ @@ -31,6 +31,8 @@ public interface TaskHeaderService extends IService&lt;TaskHeader&gt;{
31 31
32 AjaxResult createReceiptTask(List<Integer> ids); 32 AjaxResult createReceiptTask(List<Integer> ids);
33 33
  34 + void completeShipmentTask(TaskHeader task) ;
  35 +
34 Integer UncompleteCount(String containerCode); 36 Integer UncompleteCount(String containerCode);
35 37
36 38
src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java
@@ -30,12 +30,21 @@ import com.huaheng.pc.shipment.shipmentContainerDetail.domain.ShipmentContainerD @@ -30,12 +30,21 @@ import com.huaheng.pc.shipment.shipmentContainerDetail.domain.ShipmentContainerD
30 import com.huaheng.pc.shipment.shipmentContainerDetail.service.ShipmentContainerDetailService; 30 import com.huaheng.pc.shipment.shipmentContainerDetail.service.ShipmentContainerDetailService;
31 import com.huaheng.pc.shipment.shipmentContainerHeader.domain.ShipmentContainerHeader; 31 import com.huaheng.pc.shipment.shipmentContainerHeader.domain.ShipmentContainerHeader;
32 import com.huaheng.pc.shipment.shipmentContainerHeader.service.ShipmentContainerHeaderService; 32 import com.huaheng.pc.shipment.shipmentContainerHeader.service.ShipmentContainerHeaderService;
  33 +import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail;
  34 +import com.huaheng.pc.shipment.shipmentDetail.service.ShipmentDetailService;
33 import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader; 35 import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader;
  36 +import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService;
34 import com.huaheng.pc.task.taskDetail.domain.TaskDetail; 37 import com.huaheng.pc.task.taskDetail.domain.TaskDetail;
35 import com.huaheng.pc.task.taskDetail.service.TaskDetailService; 38 import com.huaheng.pc.task.taskDetail.service.TaskDetailService;
36 import com.huaheng.pc.task.taskHeader.domain.ShipmentTaskCreateModel; 39 import com.huaheng.pc.task.taskHeader.domain.ShipmentTaskCreateModel;
  40 +import org.jsoup.helper.DataUtil;
37 import org.springframework.stereotype.Service; 41 import org.springframework.stereotype.Service;
38 import java.math.BigDecimal; 42 import java.math.BigDecimal;
  43 +import java.text.SimpleDateFormat;
  44 +import java.util.ArrayList;
  45 +import java.util.Date;
  46 +import java.util.List;
  47 +import java.util.Map;
39 import java.util.*; 48 import java.util.*;
40 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 49 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
41 import com.huaheng.pc.task.taskHeader.domain.TaskHeader; 50 import com.huaheng.pc.task.taskHeader.domain.TaskHeader;
@@ -74,6 +83,13 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -74,6 +83,13 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
74 @Resource 83 @Resource
75 private ReceiptContainerDetailService receiptContainerDetailService; 84 private ReceiptContainerDetailService receiptContainerDetailService;
76 @Resource 85 @Resource
  86 + private ShipmentHeaderService shipmentHeaderService;
  87 + @Resource
  88 + private ShipmentDetailService shipmentDetailService;
  89 +
  90 +
  91 +
  92 + @Resource
77 private ReceiptContainerHeaderService receiptContainerHeaderService; 93 private ReceiptContainerHeaderService receiptContainerHeaderService;
78 @Resource 94 @Resource
79 private TaskHeaderMapper taskHeaderMapper; 95 private TaskHeaderMapper taskHeaderMapper;
@@ -156,12 +172,13 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -156,12 +172,13 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
156 task.setToLocation(""); 172 task.setToLocation("");
157 } 173 }
158 } 174 }
  175 + task.setInternalTaskType(200);
  176 + task.setAllocationHeadId(shipmentContainerHeader.getId());
159 task.setWarehouseCode(shipmentContainerHeader.getWarehouseCode()); 177 task.setWarehouseCode(shipmentContainerHeader.getWarehouseCode());
160 task.setCompanyCode(shipmentContainerHeader.getCompanyCode()); 178 task.setCompanyCode(shipmentContainerHeader.getCompanyCode());
161 - task.setInternalTaskType(null);  
162 task.setAssignedUser(ShiroUtils.getLoginName()); 179 task.setAssignedUser(ShiroUtils.getLoginName());
163 task.setConfirmedBy(ShiroUtils.getLoginName()); 180 task.setConfirmedBy(ShiroUtils.getLoginName());
164 - task.setStatus(1); 181 + task.setStatus(0);
165 task.setContainerCode(shipmentContainerHeader.getContainerCode()); 182 task.setContainerCode(shipmentContainerHeader.getContainerCode());
166 task.setCreatedBy(ShiroUtils.getLoginName()); 183 task.setCreatedBy(ShiroUtils.getLoginName());
167 task.setCreated(new Date()); 184 task.setCreated(new Date());
@@ -172,9 +189,11 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -172,9 +189,11 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
172 for (ShipmentContainerDetail shipmentContainerDetail : shipmentContainerDetails) { 189 for (ShipmentContainerDetail shipmentContainerDetail : shipmentContainerDetails) {
173 TaskDetail taskDetail = new TaskDetail(); 190 TaskDetail taskDetail = new TaskDetail();
174 taskDetail.setTaskId(task.getId()); 191 taskDetail.setTaskId(task.getId());
  192 + taskDetail.setInternalTaskType(task.getInternalTaskType());
175 taskDetail.setWarehouseCode(task.getWarehouseCode()); 193 taskDetail.setWarehouseCode(task.getWarehouseCode());
176 taskDetail.setCompanyCode(task.getCompanyCode()); 194 taskDetail.setCompanyCode(task.getCompanyCode());
177 taskDetail.setTaskType(task.getTaskType()); 195 taskDetail.setTaskType(task.getTaskType());
  196 + taskDetail.setAllocationId(shipmentContainerDetail.getId());
178 taskDetail.setBillCode(shipmentContainerDetail.getShipmentCode()); 197 taskDetail.setBillCode(shipmentContainerDetail.getShipmentCode());
179 taskDetail.setBillDetailId(shipmentContainerDetail.getShipmentDetailId()); 198 taskDetail.setBillDetailId(shipmentContainerDetail.getShipmentDetailId());
180 taskDetail.setMaterialCode(shipmentContainerDetail.getMaterialCode()); 199 taskDetail.setMaterialCode(shipmentContainerDetail.getMaterialCode());
@@ -186,7 +205,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -186,7 +205,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
186 taskDetail.setContainerCode(task.getContainerCode()); 205 taskDetail.setContainerCode(task.getContainerCode());
187 taskDetail.setFromLocation(task.getFromLocation()); 206 taskDetail.setFromLocation(task.getFromLocation());
188 taskDetail.setToLocation(task.getToLocation()); 207 taskDetail.setToLocation(task.getToLocation());
189 - taskDetail.setStatus(1); 208 + taskDetail.setStatus(0);
190 taskDetail.setTaskType(task.getTaskType()); 209 taskDetail.setTaskType(task.getTaskType());
191 taskDetail.setLastUpdatedBy(ShiroUtils.getLoginName()); 210 taskDetail.setLastUpdatedBy(ShiroUtils.getLoginName());
192 taskDetail.setLastUpdated(null); 211 taskDetail.setLastUpdated(null);
@@ -205,7 +224,12 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -205,7 +224,12 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
205 /** 224 /**
206 * 下发WCS执行任务 225 * 下发WCS执行任务
207 */ 226 */
  227 + /**
  228 + *
  229 + * 执行任务
  230 + * */
208 @Override 231 @Override
  232 + @Transactional
209 public AjaxResult<TaskHeader> sendTaskToWcs(Integer[] taskIds) { 233 public AjaxResult<TaskHeader> sendTaskToWcs(Integer[] taskIds) {
210 TaskHeader task = null; 234 TaskHeader task = null;
211 for (Integer taskId : taskIds) { 235 for (Integer taskId : taskIds) {
@@ -220,7 +244,8 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -220,7 +244,8 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
220 task.setLastUpdatedBy(ShiroUtils.getLoginName()); 244 task.setLastUpdatedBy(ShiroUtils.getLoginName());
221 LambdaUpdateWrapper<TaskHeader> HeaderUpdateWrapper = Wrappers.lambdaUpdate(); 245 LambdaUpdateWrapper<TaskHeader> HeaderUpdateWrapper = Wrappers.lambdaUpdate();
222 HeaderUpdateWrapper.eq(TaskHeader::getId, taskId); 246 HeaderUpdateWrapper.eq(TaskHeader::getId, taskId);
223 - taskHeaderService.update(task, HeaderUpdateWrapper); 247 + if (!taskHeaderService.update(task, HeaderUpdateWrapper))
  248 + throw new ServiceException("更新任务头失败");
224 //修改任务明细状态 249 //修改任务明细状态
225 TaskDetail record = new TaskDetail(); 250 TaskDetail record = new TaskDetail();
226 record.setStatus(10); 251 record.setStatus(10);
@@ -228,38 +253,24 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -228,38 +253,24 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
228 record.setLastUpdatedBy(ShiroUtils.getLoginName()); 253 record.setLastUpdatedBy(ShiroUtils.getLoginName());
229 LambdaUpdateWrapper<TaskDetail> lambdaUpdateWrapper = Wrappers.lambdaUpdate(); 254 LambdaUpdateWrapper<TaskDetail> lambdaUpdateWrapper = Wrappers.lambdaUpdate();
230 lambdaUpdateWrapper.eq(TaskDetail::getTaskId, task.getId()); 255 lambdaUpdateWrapper.eq(TaskDetail::getTaskId, task.getId());
231 - taskDetailService.update(record, lambdaUpdateWrapper);  
232 -  
233 -  
234 -// if (task.getInternalTaskType().equals("100"))  
235 -// {  
236 -// List<Map<String, Object>> maps = taskDetailService.selectListMapByEqual("billId, billDetailId", condition);  
237 -// for (Map<String, Object> item : maps){  
238 -// Integer billDetailId = DataUtils.getInteger(item.get("billDetailId"));  
239 -// receiptHeaderService.updateDetailStatus(billDetailId, (short)300);  
240 -// }  
241 -// maps.stream().map(X -> X.get("billId")).distinct().forEach(X -> receiptHeaderService.receiptStatusUpdate(DataUtils.getInteger(X), (short)300));  
242 -// }  
243 -// //盘点单执行  
244 -// if(task.getType() == 700){  
245 -// CyclecountDetail cyclecountDetai = cyclecountDetailService.selectEntityById(  
246 -// task.getAllocationHeadId());  
247 -// cyclecountDetai.setStatus(10);  
248 -// cyclecountDetailService.updateByModel(cyclecountDetai);  
249 -// }  
250 -//// //如果是单排人工库,那么出入库都是先完成,在下发AGV任务  
251 -//// if (task.getType().intValue() == 300 || task.getType().intValue() == 600) {  
252 -//// if (task.getSourceLocation().startsWith("L03") == false ) {  
253 -//// taskAgvService.createTaskAgv(task);  
254 -//// }  
255 -//// }  
256 -//// else {  
257 -//// taskAgvService.createTaskAgv(task);  
258 -//// }  
259 -// //任务类型是出库,那就完成任务在叫agv  
260 -// if (task.getType().intValue() == 100 || task.getType().intValue() == 500) {  
261 -// taskAgvService.createTaskAgv(task);  
262 -// } 256 + if (!taskDetailService.update(record, lambdaUpdateWrapper)){
  257 + throw new ServiceException("更新任务明细失败");
  258 + }
  259 + //修改入库明细
  260 + ReceiptDetail receiptDetail = receiptDetailService.queryflow(receiptDetailService.getById(record.getId()));
  261 + if (!receiptDetailService.updateById(receiptDetail)){
  262 + throw new ServiceException("更新状态失败");
  263 + }
  264 + receiptDetailService.updateReceiptHeaderLastStatus(receiptDetail.getReceiptId());
  265 + //修改组盘表状态为20
  266 + ReceiptContainerDetail receiptContainerDetail = new ReceiptContainerDetail();
  267 + receiptContainerDetail.setStatus(20);
  268 + receiptContainerDetail.setLastUpdated(new Date());
  269 + receiptContainerDetail.setLastUpdatedBy(ShiroUtils.getLoginName());
  270 + LambdaUpdateWrapper<ReceiptContainerDetail> receiptContainerDetailLambdaUpdateWrapper = Wrappers.lambdaUpdate();
  271 + receiptContainerDetailLambdaUpdateWrapper.eq(ReceiptContainerDetail::getReceiptId,receiptDetail.getReceiptId());
  272 + if (! receiptContainerDetailService.update(receiptContainerDetail, receiptContainerDetailLambdaUpdateWrapper))
  273 + throw new ServiceException("更新组盘状态失败");
263 } 274 }
264 return AjaxResult.success("下发任务成功", task); 275 return AjaxResult.success("下发任务成功", task);
265 } 276 }
@@ -293,13 +304,13 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -293,13 +304,13 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
293 */ 304 */
294 public void completeTask(TaskHeader task) throws Exception { 305 public void completeTask(TaskHeader task) throws Exception {
295 //区分任务类型 306 //区分任务类型
296 - if (task.getInternalTaskType() == 100 || task.getInternalTaskType() == 200) { 307 + if (task.getInternalTaskType() == 100) {
297 //入库任务 308 //入库任务
298 completeReceiptTask(task); 309 completeReceiptTask(task);
299 } 310 }
300 - if (task.getInternalTaskType() == 300 || task.getInternalTaskType() == 400) {  
301 -// //出库任务  
302 -// completeShipmentTask(task); 311 + if (task.getInternalTaskType() == 200) {
  312 +// 出库任务
  313 + completeShipmentTask(task);
303 } 314 }
304 // 700 盘点 900 出库查看,包过空托出库查看 315 // 700 盘点 900 出库查看,包过空托出库查看
305 if (task.getInternalTaskType() == 700 || task.getInternalTaskType() == 900) { 316 if (task.getInternalTaskType() == 700 || task.getInternalTaskType() == 900) {
@@ -321,9 +332,10 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -321,9 +332,10 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
321 332
322 333
323 /** 334 /**
324 - * 335 + *完成任务
325 */ 336 */
326 @Override 337 @Override
  338 + @Transactional
327 public AjaxResult completeReceiptTask(TaskHeader task) throws Exception { 339 public AjaxResult completeReceiptTask(TaskHeader task) throws Exception {
328 List<Map<String, Object>> taskReceiptContainerDetail = taskHeaderMapper.getReceiptTask(task.getId()); 340 List<Map<String, Object>> taskReceiptContainerDetail = taskHeaderMapper.getReceiptTask(task.getId());
329 if (taskReceiptContainerDetail.size() < 1) { 341 if (taskReceiptContainerDetail.size() < 1) {
@@ -344,13 +356,16 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -344,13 +356,16 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
344 header.setWarehouseCode(DataUtils.getString(map.get("warehouseCode")));//仓库 356 header.setWarehouseCode(DataUtils.getString(map.get("warehouseCode")));//仓库
345 header.setCompanyCode(task.getCompanyCode());//货主 357 header.setCompanyCode(task.getCompanyCode());//货主
346 header.setContainerCode(DataUtils.getString(map.get("containerCode")));//容器号 358 header.setContainerCode(DataUtils.getString(map.get("containerCode")));//容器号
  359 + header.setLocationCode(task.getToLocation());
347 header.setTotalQty(DataUtils.getInteger(map.get("totalQty")));//总数量 360 header.setTotalQty(DataUtils.getInteger(map.get("totalQty")));//总数量
348 header.setLocking(1); 361 header.setLocking(1);
349 header.setEnable(1); 362 header.setEnable(1);
350 header.setCreatedBy(ShiroUtils.getLoginName()); 363 header.setCreatedBy(ShiroUtils.getLoginName());
351 header.setCreated(new Date()); 364 header.setCreated(new Date());
352 header.setLastUpdated(new Date()); 365 header.setLastUpdated(new Date());
353 - inventoryHeaderService.save(header); 366 + if (!inventoryHeaderService.save(header))
  367 + throw new ServiceException("添加库存单失败");
  368 +
354 //库存明细添加 369 //库存明细添加
355 detail = new InventoryDetail(); 370 detail = new InventoryDetail();
356 detail.setInventoryHeaderId(header.getId());//库存头ID 371 detail.setInventoryHeaderId(header.getId());//库存头ID
@@ -366,19 +381,23 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -366,19 +381,23 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
366 detail.setBatch(DataUtils.getString(map.get("batch")));//批次 381 detail.setBatch(DataUtils.getString(map.get("batch")));//批次
367 detail.setLot(DataUtils.getString(map.get("lot")));//批号 382 detail.setLot(DataUtils.getString(map.get("lot")));//批号
368 detail.setInventorySts(DataUtils.getString(map.get("inventorySts")));//库存状态 383 detail.setInventorySts(DataUtils.getString(map.get("inventorySts")));//库存状态
369 - detail.setManufactureDate(DataUtils.getDateTime(map.get("manufactureDate")));//生产日期  
370 - detail.setExpirationDate(DataUtils.getDateTime(map.get("expirationDate")));//失效日期 384 + detail.setManufactureDate(new SimpleDateFormat("yyyy-MM-dd").parse(map.get("manufactureDate").toString()));//生产日期
  385 +// detail.setExpirationDate(new SimpleDateFormat("yyyy-MM-dd").parse(map.get("expirationDate").toString()));//失效日期
371 detail.setQty(DataUtils.getBigDecimal(map.get("qty")));//数量 386 detail.setQty(DataUtils.getBigDecimal(map.get("qty")));//数量
372 detail.setTaskQty(DataUtils.getBigDecimal(map.get("qty"))); 387 detail.setTaskQty(DataUtils.getBigDecimal(map.get("qty")));
373 detail.setCreatedBy(ShiroUtils.getLoginName());//创建人 388 detail.setCreatedBy(ShiroUtils.getLoginName());//创建人
374 detail.setLastUpdatedBy(ShiroUtils.getLoginName());//创建时间 389 detail.setLastUpdatedBy(ShiroUtils.getLoginName());//创建时间
375 - inventoryDetailService.save(detail);  
376 - } else { 390 + if (!inventoryDetailService.save(detail))
  391 + throw new ServiceException("添加库存明细失败");
  392 + }
  393 + else {
377 detail.setQty(detail.getQty().add(DataUtils.getBigDecimal(map.get("qty")))); 394 detail.setQty(detail.getQty().add(DataUtils.getBigDecimal(map.get("qty"))));
378 detail.setLastUpdatedBy(ShiroUtils.getLoginName()); 395 detail.setLastUpdatedBy(ShiroUtils.getLoginName());
379 LambdaUpdateWrapper<InventoryDetail> lambdaUpdateWrapper = Wrappers.lambdaUpdate(); 396 LambdaUpdateWrapper<InventoryDetail> lambdaUpdateWrapper = Wrappers.lambdaUpdate();
380 - lambdaUpdateWrapper.eq(InventoryDetail::getId, DataUtils.getInteger(map.get("receiptDetailId")));  
381 - inventoryDetailService.update(detail, lambdaUpdateWrapper); 397 + lambdaUpdateWrapper.eq(InventoryDetail::getId,DataUtils.getInteger(map.get("receiptDetailId")));
  398 + if (!inventoryDetailService.update(detail, lambdaUpdateWrapper))
  399 + throw new ServiceException("更新入库单明细失败");
  400 +
382 } 401 }
383 //记录库存交易记录 402 //记录库存交易记录
384 InventoryTransaction inventoryTransaction = new InventoryTransaction(); 403 InventoryTransaction inventoryTransaction = new InventoryTransaction();
@@ -393,28 +412,49 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -393,28 +412,49 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
393 inventoryTransaction.setBillDetailId(DataUtils.getInteger(map.get("receiptDetailId"))); 412 inventoryTransaction.setBillDetailId(DataUtils.getInteger(map.get("receiptDetailId")));
394 inventoryTransaction.setBatch(DataUtils.getString(map.get("batch"))); 413 inventoryTransaction.setBatch(DataUtils.getString(map.get("batch")));
395 inventoryTransaction.setLot(DataUtils.getString(map.get("lot"))); 414 inventoryTransaction.setLot(DataUtils.getString(map.get("lot")));
396 - inventoryTransaction.setManufactureDate(DataUtils.getDateTime(map.get("manufactureDate")));  
397 - inventoryTransaction.setExpirationDate(DataUtils.getDateTime(map.get("expirationDate"))); 415 + inventoryTransaction.setManufactureDate(new SimpleDateFormat("yyyy-MM-dd").parse(map.get("manufactureDate").toString()));//生产日期
  416 +// inventoryTransaction.setExpirationDate(DataUtils.getDateTime(map.get("expirationDate")));
398 inventoryTransaction.setInventorySts(DataUtils.getString((map.get("inventorySts")))); 417 inventoryTransaction.setInventorySts(DataUtils.getString((map.get("inventorySts"))));
399 inventoryTransaction.setTaskQty(DataUtils.getInteger(map.get("qty"))); 418 inventoryTransaction.setTaskQty(DataUtils.getInteger(map.get("qty")));
400 inventoryTransaction.setCreated(new Date()); 419 inventoryTransaction.setCreated(new Date());
401 inventoryTransaction.setCreatedBy(ShiroUtils.getLoginName()); 420 inventoryTransaction.setCreatedBy(ShiroUtils.getLoginName());
402 - inventoryTransactionService.save(inventoryTransaction); 421 + if (!inventoryTransactionService.save(inventoryTransaction))
  422 + throw new ServiceException("新增库存记录失败");
403 //修改任务明细的状态为完成 423 //修改任务明细的状态为完成
404 TaskDetail taskDetail = new TaskDetail(); 424 TaskDetail taskDetail = new TaskDetail();
405 taskDetail.setStatus(100); 425 taskDetail.setStatus(100);
406 taskDetail.setLastUpdatedBy(ShiroUtils.getLoginName()); 426 taskDetail.setLastUpdatedBy(ShiroUtils.getLoginName());
407 taskDetail.setAgingDate(new Date()); //入库时间 427 taskDetail.setAgingDate(new Date()); //入库时间
408 LambdaUpdateWrapper<TaskDetail> lambdaUpdateWrapper = Wrappers.lambdaUpdate(); 428 LambdaUpdateWrapper<TaskDetail> lambdaUpdateWrapper = Wrappers.lambdaUpdate();
409 - lambdaUpdateWrapper.eq(TaskDetail::getTaskId, DataUtils.getInteger(map.get("taskDetailId"))); 429 + lambdaUpdateWrapper.eq(TaskDetail::getTaskId,task.getId());
410 taskDetailService.update(taskDetail, lambdaUpdateWrapper); 430 taskDetailService.update(taskDetail, lambdaUpdateWrapper);
411 - //修改入库单的状态  
412 - ReceiptHeader receiptHeader = new ReceiptHeader();  
413 - receiptHeader.setFirstStatus(100);  
414 - receiptHeader.setLastStatus(100);  
415 - LambdaUpdateWrapper<ReceiptHeader> receiptHeaderLambdaUpdateWrapper = Wrappers.lambdaUpdate();  
416 - receiptHeaderLambdaUpdateWrapper.eq(ReceiptHeader::getId, DataUtils.getInteger(map.get("receiptId")));  
417 - receiptHeaderService.update(receiptHeader, receiptHeaderLambdaUpdateWrapper); 431 + if ( !taskDetailService.update(taskDetail, lambdaUpdateWrapper)){
  432 + throw new ServiceException("修改入库单明细失败");
  433 + }
  434 +// //修改入库单的状态
  435 +// ReceiptHeader receiptHeader = new ReceiptHeader();
  436 +// receiptHeader.setFirstStatus(100);
  437 +// receiptHeader.setLastStatus(100);
  438 +// LambdaUpdateWrapper<ReceiptHeader> receiptHeaderLambdaUpdateWrapper = Wrappers.lambdaUpdate();
  439 +// receiptHeaderLambdaUpdateWrapper.eq(ReceiptHeader::getId, DataUtils.getInteger(map.get("receiptId")));
  440 +// if (!receiptHeaderService.update(receiptHeader, receiptHeaderLambdaUpdateWrapper)){
  441 +// throw new ServiceException("修改入库单失败");
  442 +// }
  443 +// //修改任务明细的状态为完成
  444 +// TaskDetail taskDetail = new TaskDetail();
  445 +// taskDetail.setStatus(100);
  446 +// taskDetail.setLastUpdatedBy(ShiroUtils.getLoginName());
  447 +// taskDetail.setAgingDate(new Date()); //入库时间
  448 +// LambdaUpdateWrapper<TaskDetail> lambdaUpdateWrapper = Wrappers.lambdaUpdate();
  449 +// lambdaUpdateWrapper.eq(TaskDetail::getTaskId, DataUtils.getInteger(map.get("taskDetailId")));
  450 +// taskDetailService.update(taskDetail, lambdaUpdateWrapper);
  451 +// //修改入库单的状态
  452 +// ReceiptHeader receiptHeader =new ReceiptHeader();
  453 +// receiptHeader.setFirstStatus(100);
  454 +// receiptHeader.setLastStatus(100);
  455 +// LambdaUpdateWrapper<ReceiptHeader> receiptHeaderLambdaUpdateWrapper = Wrappers.lambdaUpdate();
  456 +// receiptHeaderLambdaUpdateWrapper.eq(ReceiptHeader::getId, DataUtils.getInteger(map.get("receiptId")));
  457 +// receiptHeaderService.update(receiptHeader, receiptHeaderLambdaUpdateWrapper);
418 458
419 //修改任务主表状态,因为立库任务表单头只对应一个货箱,表单详情的任务会同时完成 459 //修改任务主表状态,因为立库任务表单头只对应一个货箱,表单详情的任务会同时完成
420 task.setStatus(100); 460 task.setStatus(100);
@@ -422,25 +462,43 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -422,25 +462,43 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
422 task.setLastUpdated(new Date()); 462 task.setLastUpdated(new Date());
423 LambdaUpdateWrapper<TaskHeader> taskHeaderLambdaUpdateWrapper = Wrappers.lambdaUpdate(); 463 LambdaUpdateWrapper<TaskHeader> taskHeaderLambdaUpdateWrapper = Wrappers.lambdaUpdate();
424 taskHeaderLambdaUpdateWrapper.eq(TaskHeader::getId, task.getId()); 464 taskHeaderLambdaUpdateWrapper.eq(TaskHeader::getId, task.getId());
425 - taskHeaderService.update(task, taskHeaderLambdaUpdateWrapper); 465 + if (!taskHeaderService.update(task, taskHeaderLambdaUpdateWrapper))
  466 + throw new ServiceException("更新任务主表失败");
  467 +
426 //修改库位状态和对应的容器 468 //修改库位状态和对应的容器
427 Location location = new Location(); 469 Location location = new Location();
428 location.setContainerCode(task.getContainerCode()); 470 location.setContainerCode(task.getContainerCode());
429 location.setStatus("empty"); 471 location.setStatus("empty");
430 LambdaUpdateWrapper<Location> locationLambdaUpdateWrapper = Wrappers.lambdaUpdate(); 472 LambdaUpdateWrapper<Location> locationLambdaUpdateWrapper = Wrappers.lambdaUpdate();
431 locationLambdaUpdateWrapper.eq(Location::getCode, task.getToLocation()); 473 locationLambdaUpdateWrapper.eq(Location::getCode, task.getToLocation());
432 - locationService.update(location, locationLambdaUpdateWrapper); 474 + if (!locationService.update(location, locationLambdaUpdateWrapper))
  475 + throw new ServiceException("更新库位失败");
  476 +
433 //修改容器状态和对应的库位 477 //修改容器状态和对应的库位
434 Container container = new Container(); 478 Container container = new Container();
435 container.setLocationCode(task.getToLocation()); 479 container.setLocationCode(task.getToLocation());
436 container.setStatus("some"); 480 container.setStatus("some");
437 - //修改组盘表状态为20 481 + if (!containerService.save(container)){
  482 + throw new ServiceException("更新容器失败");
  483 + }
  484 + //修改组盘表状态为20
438 ReceiptContainerDetail receiptContainerDetail = new ReceiptContainerDetail(); 485 ReceiptContainerDetail receiptContainerDetail = new ReceiptContainerDetail();
439 receiptContainerDetail.setStatus(20); 486 receiptContainerDetail.setStatus(20);
  487 + receiptContainerDetail.setProcessStamp("0");
  488 + receiptContainerDetail.setLastUpdated(new Date());
  489 + receiptContainerDetail.setLastUpdatedBy(ShiroUtils.getLoginName());
440 LambdaUpdateWrapper<ReceiptContainerDetail> receiptContainerDetailLambdaUpdateWrapper = Wrappers.lambdaUpdate(); 490 LambdaUpdateWrapper<ReceiptContainerDetail> receiptContainerDetailLambdaUpdateWrapper = Wrappers.lambdaUpdate();
441 receiptContainerDetailLambdaUpdateWrapper.eq(ReceiptContainerDetail::getReceiptId, DataUtils.getInteger(map.get("receiptId"))); 491 receiptContainerDetailLambdaUpdateWrapper.eq(ReceiptContainerDetail::getReceiptId, DataUtils.getInteger(map.get("receiptId")));
442 - receiptContainerDetailService.update(receiptContainerDetail, receiptContainerDetailLambdaUpdateWrapper); 492 + if (! receiptContainerDetailService.update(receiptContainerDetail, receiptContainerDetailLambdaUpdateWrapper))
  493 + throw new ServiceException("更新组盘状态失败");
  494 + //修改入库明细
  495 + ReceiptDetail receiptDetail = receiptDetailService.queryflow(receiptDetailService.getById(DataUtils.getInteger(map.get("receiptDetailId"))));
  496 + if (!receiptDetailService.updateById(receiptDetail)){
  497 + throw new ServiceException("更新状态失败");
  498 + }
  499 + receiptDetailService.updateReceiptHeaderLastStatus(receiptDetail.getReceiptId());
443 } 500 }
  501 +
444 } 502 }
445 return AjaxResult.success("完成入库任务"); 503 return AjaxResult.success("完成入库任务");
446 } 504 }
@@ -847,7 +905,6 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -847,7 +905,6 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
847 905
848 /** 906 /**
849 * 创建上架任务 907 * 创建上架任务
850 - *  
851 * @param ids 908 * @param ids
852 * @return 909 * @return
853 */ 910 */
@@ -932,5 +989,115 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea @@ -932,5 +989,115 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
932 989
933 990
934 991
  992 + /**
  993 + *
  994 + * 完成出库任务
  995 + * */
  996 + @Override
  997 + public void completeShipmentTask(TaskHeader task) {
  998 + //获取所有子任务
  999 + TaskDetail condition = new TaskDetail();
  1000 + condition.setTaskId(task.getId());
  1001 + LambdaQueryWrapper<TaskDetail> lambdaQueryWrapper = Wrappers.lambdaQuery(condition);
  1002 + List<TaskDetail> taskDetails = taskDetailService.list(lambdaQueryWrapper);
  1003 + List<Integer> shipmentHeadIds = new ArrayList<>();
  1004 + for(TaskDetail taskDetail : taskDetails){
  1005 + if(taskDetail.getStatus()<20){
  1006 + //获取出库子货箱
  1007 + ShipmentContainerDetail shipmentContainerDetail = shipmentContainerDetailService.getById(taskDetail.getAllocationId());
  1008 + //取出子单据
  1009 + ShipmentDetail shipmentDetail = shipmentDetailService.getById(taskDetail.getBillDetailId());
  1010 + //暂存id,为更新单据状态准备
  1011 + shipmentHeadIds.add(shipmentDetail.getShipmentId());
  1012 + //获取对应库存记录
  1013 + InventoryDetail inventoryDetail = inventoryDetailService.getById(taskDetail.getToInventoryId());
  1014 + if (inventoryDetail == null) {
  1015 + throw new ServiceException("任务明细对应的库存ID【" + taskDetail.getToInventoryId().toString() + "】不存在!");
  1016 + }
  1017 + BigDecimal orignalQty = inventoryDetail.getQty();
  1018 + //扣减库存
  1019 + inventoryDetail.setTaskQty(inventoryDetail.getTaskQty().subtract(taskDetail.getQty()));
  1020 + inventoryDetail.setQty(inventoryDetail.getQty().subtract(taskDetail.getQty()));
  1021 + if(inventoryDetail.getQty().compareTo(new BigDecimal("0"))==0 && inventoryDetail.getTaskQty().compareTo(new BigDecimal("0"))==0){
  1022 + //如果库存没有了,就删除这个库存
  1023 + inventoryDetailService.removeById(inventoryDetail.getId());
  1024 + }else {
  1025 + //否则更新这个库存
  1026 + inventoryDetailService.updateById(inventoryDetail);
  1027 + }
  1028 + //设置子任务状态为已执行
  1029 + taskDetail.setStatus(100);
  1030 + taskDetail.setLastUpdatedBy(ShiroUtils.getLoginName());
  1031 + taskDetail.setLastUpdated(new Date()); //完成时间
  1032 + taskDetailService.updateById(taskDetail);
  1033 + //记录库存交易记录
  1034 + InventoryTransaction inventoryTransaction = new InventoryTransaction();
  1035 + inventoryTransaction.setWarehouseCode(task.getWarehouseCode());
  1036 + inventoryTransaction.setCompanyCode(shipmentDetail.getCompanyCode());
  1037 + inventoryTransaction.setLocationCode(inventoryDetail.getLocationCode());
  1038 + inventoryTransaction.setContainerCode(inventoryDetail.getContainerCode());
  1039 + inventoryTransaction.setTransactionType(20);
  1040 + inventoryTransaction.setMaterialCode(shipmentDetail.getMaterialCode());
  1041 + //inventory.setMaterialName(DataUtils.getString(taskDetail.getMaterialName()));//物料名称
  1042 + inventoryTransaction.setBillCode(taskDetail.getBillCode());
  1043 + inventoryTransaction.setBillDetailId(shipmentDetail.getId());
  1044 + inventoryTransaction.setBatch(shipmentDetail.getBatch());
  1045 + inventoryTransaction.setLot(shipmentDetail.getLot());
  1046 + inventoryTransaction.setManufactureDate(shipmentDetail.getManufactureDate());
  1047 + inventoryTransaction.setExpirationDate(shipmentDetail.getExpirationDate());
  1048 + inventoryTransaction.setInventorySts(inventoryDetail.getInventorySts());
  1049 + //这里取反,更符合出库的语义,同时方便对记录进行统计
  1050 + inventoryTransaction.setTaskQty(taskDetail.getQty().intValue());
  1051 +// inventoryTransaction.setCostPrice(shipmentDetail.);
  1052 + inventoryTransaction.setCreated(null);
  1053 + inventoryTransaction.setCreatedBy(ShiroUtils.getLoginName());
  1054 + inventoryTransactionService.save(inventoryTransaction);
  1055 +// //更新单据状态
  1056 +// shipmentHeaderService.updateShipmentStatus(shipmentHeader.getId());
  1057 + }
  1058 + }
  1059 + //设置主任务为已执行
  1060 + task.setStatus(100);
  1061 + task.setLastUpdatedBy(ShiroUtils.getLoginName());
  1062 + task.setLastUpdated(new Date());
  1063 + taskHeaderService.updateById(task);
  1064 + //将库位状态改为空闲,如果是整出的对应的容器也清空
  1065 + Location locationRecord = new Location();
  1066 + locationRecord.setStatus("empty");
  1067 + if(task.getTaskType()==300) {
  1068 + locationRecord.setContainerCode("");
  1069 + }
  1070 + LambdaUpdateWrapper<Location> locationLambdaUpdateWrapper = Wrappers.lambdaUpdate();
  1071 + locationLambdaUpdateWrapper.eq(Location::getCode,task.getToLocation());
  1072 + locationService.update(locationLambdaUpdateWrapper);
  1073 + //如果是整出,删掉这个库位上的这个托盘,否则更改托盘状态
  1074 + Container containerRecord = new Container();
  1075 + if(task.getTaskType()==300) {
  1076 + containerService.updateLocationCodeAndStatus(task.getContainerCode(),"","empty");
  1077 + }
  1078 + else{
  1079 + //查询是否存在关联的库存,入如果没有就修改容器状态为empty
  1080 + InventoryDetail inventoryCondition = new InventoryDetail();
  1081 + inventoryCondition.setLocationCode(task.getToLocation());
  1082 + LambdaQueryWrapper<InventoryDetail> inventoryDetaillambdaQueryWrapper = Wrappers.lambdaQuery();
  1083 + inventoryDetaillambdaQueryWrapper.eq(InventoryDetail::getLocationCode,task.getToLocation());
  1084 + List<InventoryDetail> detailList= inventoryDetailService.list();
  1085 + //库存查询不到该容器就把容器状态改为可用
  1086 + if (detailList.size()<1) {
  1087 + Container container =new Container();
  1088 + container.setCode(task.getToLocation());
  1089 + condition.setToLocation("");
  1090 + LambdaUpdateWrapper<Container> containerLambdaUpdateWrapper = Wrappers.lambdaUpdate();
  1091 + containerLambdaUpdateWrapper.eq(Container::getCode,task.getToLocation());
  1092 + containerService.update(containerLambdaUpdateWrapper);
  1093 + }
  1094 + }
  1095 +// //设置出库货箱状态为拣货任务完成
  1096 +// shipmentContainerHeaderService.resetStatusShipmentContainer(task.getAllocationHeadId(),(short)20);
  1097 + // 最后更新单据状态
  1098 + shipmentHeadIds.stream().distinct().forEach(t->shipmentHeaderService.updateShipmentStatus(t));
  1099 +
  1100 + }
  1101 +
935 1102
936 } 1103 }
src/main/resources/mybatis/inventory/AdjustHeaderMapper.xml
@@ -25,4 +25,12 @@ @@ -25,4 +25,12 @@
25 id, code, warehouseCode, companyCode, problemType, cycleCountCode, checkCode, 25 id, code, warehouseCode, companyCode, problemType, cycleCountCode, checkCode,
26 referCode, referReason, createdBy, created, version, userDef1, userDef2, userDef3, processStamp 26 referCode, referReason, createdBy, created, version, userDef1, userDef2, userDef3, processStamp
27 </sql> 27 </sql>
  28 +
  29 + <select id="getLastCode" resultType="java.lang.String">
  30 + SELECT code FROM adjust_header ORDER BY id DESC LIMIT 1
  31 + </select>
  32 +
  33 +
  34 +
  35 +
28 </mapper> 36 </mapper>
29 \ No newline at end of file 37 \ No newline at end of file
src/main/resources/mybatis/inventory/CycleCountHeaderMapper.xml
@@ -9,7 +9,7 @@ @@ -9,7 +9,7 @@
9 <result column="masterCode" jdbcType="VARCHAR" property="masterCode" /> 9 <result column="masterCode" jdbcType="VARCHAR" property="masterCode" />
10 <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" /> 10 <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" />
11 <result column="companyCode" jdbcType="VARCHAR" property="companyCode" /> 11 <result column="companyCode" jdbcType="VARCHAR" property="companyCode" />
12 - <result column="countType" jdbcType="INTEGER" property="countType" /> 12 + <result column="countType" jdbcType="VARCHAR" property="countType" />
13 <result column="statusCyc" jdbcType="INTEGER" property="statusCyc" /> 13 <result column="statusCyc" jdbcType="INTEGER" property="statusCyc" />
14 <result column="countAttribute" jdbcType="INTEGER" property="countAttribute" /> 14 <result column="countAttribute" jdbcType="INTEGER" property="countAttribute" />
15 <result column="remark" jdbcType="VARCHAR" property="remark" /> 15 <result column="remark" jdbcType="VARCHAR" property="remark" />
@@ -41,4 +41,11 @@ @@ -41,4 +41,11 @@
41 releasedAt, closedBy, closedAt, created, createdBy, lastUpdated, lastUpdatedBy, version, 41 releasedAt, closedBy, closedAt, created, createdBy, lastUpdated, lastUpdatedBy, version,
42 userDef1, userDef2, userDef3, verifyBy, sourceCode, uploadTime, uploadStatus 42 userDef1, userDef2, userDef3, verifyBy, sourceCode, uploadTime, uploadStatus
43 </sql> 43 </sql>
  44 +
  45 + <select id="getLastCode" resultType="java.lang.String">
  46 + SELECT masterCode FROM cycle_count_header ORDER BY id DESC LIMIT 1
  47 + </select>
  48 +
  49 +
  50 +
44 </mapper> 51 </mapper>
45 \ No newline at end of file 52 \ No newline at end of file
src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html
@@ -116,7 +116,7 @@ @@ -116,7 +116,7 @@
116 var prefix = ctx + "inventory/cycleCountDetail"; 116 var prefix = ctx + "inventory/cycleCountDetail";
117 var prefix_head = ctx + "inventory/cycleCountHeader"; 117 var prefix_head = ctx + "inventory/cycleCountHeader";
118 var remove_url= prefix + "/remove"; 118 var remove_url= prefix + "/remove";
119 - var datas = [[${@dict.getType('cyclecountStatus')}]]; 119 + var cyclecountStatus = [[${@dict.getType('cyclecountStatus')}]];
120 var inventoryStatus=[[${@dict.getType('inventoryStatus')}]]; 120 var inventoryStatus=[[${@dict.getType('inventoryStatus')}]];
121 var created ; 121 var created ;
122 122
@@ -287,9 +287,9 @@ @@ -287,9 +287,9 @@
287 field: 'enableStatus', 287 field: 'enableStatus',
288 title: '盘点明细状态', 288 title: '盘点明细状态',
289 formatter: function(value, row, index) { 289 formatter: function(value, row, index) {
290 - return $.table.selectDictLabel(datas, value); 290 + return $.table.selectDictLabel(cyclecountStatus, value);
291 }, 291 },
292 - sortable:true 292 + visible: true
293 }, 293 },
294 { 294 {
295 field: 'processStamp', 295 field: 'processStamp',
src/main/resources/templates/inventory/cycleCountHeader/add.html
@@ -4,34 +4,82 @@ @@ -4,34 +4,82 @@
4 <head th:include="include :: header"></head> 4 <head th:include="include :: header"></head>
5 <body class="white-bg"> 5 <body class="white-bg">
6 <div class="wrapper wrapper-content animated fadeInRight ibox-content"> 6 <div class="wrapper wrapper-content animated fadeInRight ibox-content">
7 - <form class="form-horizontal m" id="form-cyclecountHeader-add"> 7 + <form class="form-horizontal m" id="form-cycleCountHeader-add">
8 <div class="form-group"> 8 <div class="form-group">
9 <label class="col-sm-3 control-label">盘点类型:</label> 9 <label class="col-sm-3 control-label">盘点类型:</label>
10 <div class="col-sm-8"> 10 <div class="col-sm-8">
11 - <select name="type" id="type" class="form-control m-b" th:with="firstStatus=${@dict.getType('cyclecountType')}"> 11 + <select name="countType" id="countType" class="form-control m-b" th:with="firstStatus=${@dict.getType('cyclecountType')}">
12 <option th:each="e : ${firstStatus}" th:text="${e['dictLabel']}" 12 <option th:each="e : ${firstStatus}" th:text="${e['dictLabel']}"
13 th:value="${e['dictValue']}"></option> 13 th:value="${e['dictValue']}"></option>
14 </select> 14 </select>
15 </div> 15 </div>
16 </div> 16 </div>
17 <div class="form-group"> 17 <div class="form-group">
18 - <label class="col-sm-3 control-label">货主:</label>  
19 - <div class="col-sm-8">  
20 - <select id="company" name="company" class="form-control m-b" th:with="list=${@company.selectCompanyByCurrentUserId()}">  
21 - <option th:each="item : ${list}" th:text="${item['name']}" th:value="${item['id']}" th:attr = " code = ${item['code']}"></option>  
22 - </select>  
23 - </div> 18 + <label class="col-sm-3 control-label">原始盘点内部号:</label>
  19 + <div class="col-sm-8">
  20 + <input id="countOrderId" name="countOrderId" class="form-control" type="text">
  21 + </div>
24 </div> 22 </div>
25 <div class="form-group"> 23 <div class="form-group">
26 - <label class="col-sm-3 control-label">备注:</label> 24 + <label class="col-sm-3 control-label">盘点轮次:</label>
27 <div class="col-sm-8"> 25 <div class="col-sm-8">
28 - <input id="userDef1" name="remark" class="form-control" type="text"> 26 + <input id="round" name="round" class="form-control" type="text">
29 </div> 27 </div>
30 <!--th:checked="true" 状态按钮默认为启用 $("input[name='enable']").is(':checked')--> 28 <!--th:checked="true" 状态按钮默认为启用 $("input[name='enable']").is(':checked')-->
31 <!--<div>--> 29 <!--<div>-->
32 <!--<input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="enable" name="enable">--> 30 <!--<input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="enable" name="enable">-->
33 <!--</div>--> 31 <!--</div>-->
34 </div> 32 </div>
  33 + <div class="form-group">
  34 + <label class="col-sm-3 control-label">货主:</label>
  35 + <div class="col-sm-8">
  36 + <input id="companyCode" name="companyCode" class="form-control" type="text">
  37 + </div>
  38 + </div>
  39 + <div class="form-group">
  40 + <label class="col-sm-3 control-label">总货位数:</label>
  41 + <div class="col-sm-8">
  42 + <input id="totalLocs" name="totalLocs" class="form-control" type="text">
  43 + </div>
  44 + </div>
  45 + <div class="form-group">
  46 + <label class="col-sm-3 control-label">总物料数:</label>
  47 + <div class="col-sm-8">
  48 + <input id="totalItems" name="totalItems" class="form-control" type="text">
  49 + </div>
  50 + </div>
  51 + <div class="form-group">
  52 + <label class="col-sm-3 control-label">指定区域:</label>
  53 + <div class="col-sm-8">
  54 + <input id="zoneCode" name="zoneCode" class="form-control" type="text">
  55 + </div>
  56 + </div>
  57 + <div class="form-group">
  58 + <label class="col-sm-3 control-label">库位条件(模糊):</label>
  59 + <div class="col-sm-8">
  60 + <input id="locationFilter" name="locationFilter" class="form-control" type="text">
  61 + </div>
  62 + </div>
  63 + <div class="form-group">
  64 + <label class="col-sm-3 control-label">源盘点单号:</label>
  65 + <div class="col-sm-8">
  66 + <input id="sourceCode" name="sourceCode" class="form-control" type="text">
  67 + </div>
  68 + </div>
  69 +
  70 + <!--<div class="form-group">
  71 + <label class="col-sm-3 control-label">原始盘点内部号:</label>
  72 + <div class="col-sm-8">
  73 + <input id="countOrderId" name="remark" class="form-control" type="text">
  74 + </div>
  75 + </div>-->
  76 + <div class="form-group">
  77 + <label class="col-sm-3 control-label">备注:</label>
  78 + <div class="col-sm-8">
  79 + <input id="remark" name="remark" class="form-control" type="text">
  80 + </div>
  81 + </div>
  82 +
35 <div class="form-group"> 83 <div class="form-group">
36 <div class="form-control-static col-sm-offset-9"> 84 <div class="form-control-static col-sm-offset-9">
37 <button type="submit" class="btn btn-primary">提交</button> 85 <button type="submit" class="btn btn-primary">提交</button>
@@ -42,21 +90,32 @@ @@ -42,21 +90,32 @@
42 </div> 90 </div>
43 <div th:include="include::footer"></div> 91 <div th:include="include::footer"></div>
44 <script type="text/javascript"> 92 <script type="text/javascript">
45 - var prefix = ctx + "inventory/cyclecountHeader"  
46 - $("#form-cyclecountHeader-add").validate({ 93 + var prefix = ctx + "inventory/cycleCountHeader"
  94 + $("#form-cycleCountHeader-add").validate({
47 rules:{ 95 rules:{
48 - // code:{  
49 - // required:true,  
50 - // },  
51 - type:{ 96 + companyCode:{
  97 + required:true,
  98 + },
  99 + /*countType:{
52 required:true 100 required:true
53 - } 101 + },*/
  102 + totalLocs:{
  103 + required:false,
  104 + digits:true,
  105 + min:0
  106 + },
  107 + totalItems:{
  108 + required:false,
  109 + digits:true,
  110 + min:0
  111 + },
  112 +
54 }, 113 },
55 submitHandler: function(form) { 114 submitHandler: function(form) {
56 - var tableValue = $("#form-cyclecountHeader-add").serialize();  
57 - tableValue = formValueReplace(tableValue, "enable", true);  
58 - tableValue = formValueReplace(tableValue, "companyId", $("#company option:selected").val());  
59 - tableValue = formValueReplace(tableValue, "companyCode", $("#company option:selected").attr("code")); 115 + var tableValue = $("#form-cycleCountHeader-add").serialize();
  116 + // tableValue = formValueReplace(tableValue, "enable", true);
  117 + // tableValue = formValueReplace(tableValue, "companyId", $("#company option:selected").val());
  118 + // tableValue = formValueReplace(tableValue, "companyCode", $("#company option:selected").attr("code"));
60 $.operate.save(prefix + "/add", tableValue); 119 $.operate.save(prefix + "/add", tableValue);
61 } 120 }
62 }); 121 });
src/main/resources/templates/inventory/cycleCountHeader/cycleCountHeader.html
@@ -96,8 +96,8 @@ @@ -96,8 +96,8 @@
96 var prefix = ctx + "inventory/cycleCountHeader"; 96 var prefix = ctx + "inventory/cycleCountHeader";
97 var datas = [[${@dict.getType('sys_normal_disable')}]]; 97 var datas = [[${@dict.getType('sys_normal_disable')}]];
98 var types = [[${@dict.getType('cyclecountType')}]]; 98 var types = [[${@dict.getType('cyclecountType')}]];
99 - var status2 = [[${@dict.getType('cyclecountStatus')}]];  
100 - 99 + var cyclecountStatus = [[${@dict.getType('cyclecountStatus')}]];
  100 + var ifs = [[${@dict.getType('false_and_true')}]];
101 $(function () { 101 $(function () {
102 var options = { 102 var options = {
103 url: prefix + "/list", 103 url: prefix + "/list",
@@ -161,19 +161,23 @@ @@ -161,19 +161,23 @@
161 }, 161 },
162 { 162 {
163 field: 'releasedBy', 163 field: 'releasedBy',
164 - title: '释放人' 164 + title: '释放人',
  165 + visible: false
165 }, 166 },
166 { 167 {
167 field: 'releasedAt', 168 field: 'releasedAt',
168 - title: '释放时间' 169 + title: '释放时间',
  170 + visible: false
169 }, 171 },
170 { 172 {
171 field: 'closedBy', 173 field: 'closedBy',
172 - title: '关闭人' 174 + title: '关闭人',
  175 + visible: false
173 }, 176 },
174 { 177 {
175 field: 'closedAt', 178 field: 'closedAt',
176 - title: '关闭时间' 179 + title: '关闭时间',
  180 + visible: false
177 }, 181 },
178 { 182 {
179 field: 'countType', 183 field: 'countType',
@@ -185,25 +189,29 @@ @@ -185,25 +189,29 @@
185 sortable: true 189 sortable: true
186 }, 190 },
187 { 191 {
188 - field: 'verifyBy',  
189 - title: '审核人'  
190 - },  
191 - {  
192 field: 'statusCyc', 192 field: 'statusCyc',
193 - title: '盘点状态',  
194 - align: 'center',  
195 - formatter: function (value, row, index) {  
196 - return $.table.selectDictLabel(status2, value); 193 + title: '盘点主单状态',
  194 + formatter: function(value, row, index) {
  195 + return $.table.selectDictLabel(cyclecountStatus, value);
197 }, 196 },
198 - sortable: true 197 + visible: true
  198 + },
  199 + {
  200 + field: 'verifyBy',
  201 + title: '审核人'
199 }, 202 },
200 { 203 {
201 field: 'uploadTime', 204 field: 'uploadTime',
202 - title: '上传时间' 205 + title: '上传时间',
  206 + visible: false
203 }, 207 },
204 { 208 {
205 field: 'uploadStatus', 209 field: 'uploadStatus',
206 - title: '上传状态' 210 + title: '上传状态',
  211 + align: 'center',
  212 + formatter: function (value, row, index) {
  213 + return $.table.selectDictLabel(ifs, value);
  214 + }
207 }, 215 },
208 { 216 {
209 field: 'version', 217 field: 'version',
@@ -266,10 +274,9 @@ @@ -266,10 +274,9 @@
266 274
267 actions.push('<a class="btn btn-warning btn-xs " href="#" onclick="goAdjust(\'' + row.id + '\')"><i class="fa fa-gbp"></i>生成差异单</a> '); 275 actions.push('<a class="btn btn-warning btn-xs " href="#" onclick="goAdjust(\'' + row.id + '\')"><i class="fa fa-gbp"></i>生成差异单</a> ');
268 276
269 - actions.push('<a class="btn btn-info btn-xs " href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> '); 277 + //actions.push('<a class="btn btn-info btn-xs " href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
270 actions.push('<a class="btn btn-danger btn-xs " href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a> '); 278 actions.push('<a class="btn btn-danger btn-xs " href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a> ');
271 - //actions.push('<a style="background: #b5bdc0" class="btn btn-default btn-xs " href="#" onclick="detail(\'' + row.code + '\',\'' + row.code + '\')"><i class="fa fa-list-ul"></i>明细</a>');  
272 - return actions.join(''); 279 + return actions.join('');
273 } 280 }
274 }] 281 }]
275 }; 282 };
src/main/resources/templates/task/taskDetail/taskDetail.html
@@ -72,12 +72,12 @@ @@ -72,12 +72,12 @@
72 sortable:true 72 sortable:true
73 }, 73 },
74 { 74 {
75 - field : 'sourceLocation', 75 + field : 'fromLocation',
76 title : '源库位', 76 title : '源库位',
77 sortable:true 77 sortable:true
78 }, 78 },
79 { 79 {
80 - field : 'destinationLocation', 80 + field : 'toLocation',
81 title : '目的库位', 81 title : '目的库位',
82 sortable:true 82 sortable:true
83 }, 83 },
src/main/resources/templates/task/taskHeader/taskHeader.html
@@ -32,7 +32,7 @@ @@ -32,7 +32,7 @@
32 </li> 32 </li>
33 33
34 <li> 34 <li>
35 - 库位编号:<input type="text" name="locationCode"/> 35 + 库位编号:<input type="text" name="toLocation"/>
36 </li> 36 </li>
37 <li class="time" style="height: 30px"> 37 <li class="time" style="height: 30px">
38 <label>创建时间: </label> 38 <label>创建时间: </label>
@@ -171,7 +171,7 @@ @@ -171,7 +171,7 @@
171 171
172 }, 172 },
173 { 173 {
174 - field : 'locationCode', 174 + field : 'toLocation',
175 title : '库位号', 175 title : '库位号',
176 visible:true 176 visible:true
177 }, 177 },
@@ -234,7 +234,7 @@ @@ -234,7 +234,7 @@
234 actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>取消</a> '); 234 actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>取消</a> ');
235 actions.push('<a class="btn btn-primary btn-xs ' + completeFlag + '" href="#" onclick="complete(\'' + row.id + '\')"><i class="fa fa-check"></i>完成</a>'); 235 actions.push('<a class="btn btn-primary btn-xs ' + completeFlag + '" href="#" onclick="complete(\'' + row.id + '\')"><i class="fa fa-check"></i>完成</a>');
236 } 236 }
237 - if (row.status >=10) { 237 + if (row.status >= 10 && row.status < 100) {
238 actions.push('<a class="btn btn-primary btn-xs ' + completeFlag + '" href="#" onclick="complete(\'' + row.id + '\')"><i class="fa fa-check"></i>完成</a>'); 238 actions.push('<a class="btn btn-primary btn-xs ' + completeFlag + '" href="#" onclick="complete(\'' + row.id + '\')"><i class="fa fa-check"></i>完成</a>');
239 } 239 }
240 return actions.join(''); 240 return actions.join('');