Commit f79cc1ac549ae11c0d3a36127793365db30de4c3

Authored by mahuandong
2 parents 5b8e7e50 372cfce7

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

# Conflicts:
#	.idea/workspace.xml
Showing 22 changed files with 815 additions and 151 deletions
.idea/workspace.xml
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <project version="4">
3 3 <component name="ChangeListManager">
4   - <list default="true" id="9ff7b25e-dc1a-4859-8a0c-00039489e359" name="Default Changelist" comment="添加容器导入和导出导入模板">
  4 + <list default="true" id="9ff7b25e-dc1a-4859-8a0c-00039489e359" name="Default Changelist" comment="">
5 5 <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
6   - <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/general/container/controller/ContainerController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/general/container/controller/ContainerController.java" afterDir="false" />
7   - <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/controller/InventoryDetailController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/controller/InventoryDetailController.java" afterDir="false" />
8   - <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java" afterDir="false" />
  6 + <change beforePath="$PROJECT_DIR$/sql/bug" beforeDir="false" />
  7 + <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/domain/InventoryDetail.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/domain/InventoryDetail.java" afterDir="false" />
  8 + <change beforePath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/domain/InventoryHeader.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/domain/InventoryHeader.java" afterDir="false" />
9 9 </list>
10 10 <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
11 11 <option name="SHOW_DIALOG" value="false" />
... ... @@ -43,6 +43,64 @@
43 43 </expand>
44 44 <select />
45 45 </component>
  46 + <component name="FileEditorManager">
  47 + <leaf>
  48 + <file pinned="false" current-in-tab="false">
  49 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/controller/InventoryDetailController.java">
  50 + <provider selected="true" editor-type-id="text-editor">
  51 + <state relative-caret-position="-304">
  52 + <caret line="25" column="13" selection-start-line="25" selection-start-column="13" selection-end-line="25" selection-end-column="13" />
  53 + </state>
  54 + </provider>
  55 + </entry>
  56 + </file>
  57 + <file pinned="false" current-in-tab="false">
  58 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/domain/ShipmentCombinationModel.java">
  59 + <provider selected="true" editor-type-id="text-editor">
  60 + <state relative-caret-position="68">
  61 + <caret line="7" column="13" selection-start-line="7" selection-start-column="13" selection-end-line="7" selection-end-column="13" />
  62 + </state>
  63 + </provider>
  64 + </entry>
  65 + </file>
  66 + <file pinned="false" current-in-tab="false">
  67 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java">
  68 + <provider selected="true" editor-type-id="text-editor">
  69 + <state relative-caret-position="202">
  70 + <caret line="76" column="16" lean-forward="true" selection-start-line="76" selection-start-column="16" selection-end-line="76" selection-end-column="16" />
  71 + </state>
  72 + </provider>
  73 + </entry>
  74 + </file>
  75 + <file pinned="false" current-in-tab="true">
  76 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/domain/InventoryDetail.java">
  77 + <provider selected="true" editor-type-id="text-editor">
  78 + <state relative-caret-position="1156">
  79 + <caret line="81" column="11" lean-forward="true" selection-start-line="81" selection-start-column="11" selection-end-line="81" selection-end-column="11" />
  80 + </state>
  81 + </provider>
  82 + </entry>
  83 + </file>
  84 + <file pinned="false" current-in-tab="false">
  85 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/domain/InventoryHeader.java">
  86 + <provider selected="true" editor-type-id="text-editor">
  87 + <state relative-caret-position="60">
  88 + <caret line="155" selection-start-line="155" selection-end-line="155" />
  89 + </state>
  90 + </provider>
  91 + </entry>
  92 + </file>
  93 + <file pinned="false" current-in-tab="false">
  94 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderController.java">
  95 + <provider selected="true" editor-type-id="text-editor">
  96 + <state relative-caret-position="200">
  97 + <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
  98 + </state>
  99 + </provider>
  100 + </entry>
  101 + </file>
  102 + </leaf>
  103 + </component>
46 104 <component name="FileTemplateManagerImpl">
47 105 <option name="RECENT_TEMPLATES">
48 106 <list>
... ... @@ -61,6 +119,14 @@
61 119 </map>
62 120 </option>
63 121 </component>
  122 + <component name="IdeDocumentHistory">
  123 + <option name="CHANGED_PATHS">
  124 + <list>
  125 + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/domain/InventoryHeader.java" />
  126 + <option value="$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/domain/InventoryDetail.java" />
  127 + </list>
  128 + </option>
  129 + </component>
64 130 <component name="IgnoredFileRootStore">
65 131 <option name="generatedRoots">
66 132 <set>
... ... @@ -68,10 +134,217 @@
68 134 </set>
69 135 </option>
70 136 </component>
  137 + <component name="ProjectFrameBounds" extendedState="6">
  138 + <option name="x" value="-10" />
  139 + <option name="y" value="-10" />
  140 + <option name="width" value="1940" />
  141 + <option name="height" value="1050" />
  142 + </component>
71 143 <component name="ProjectId" id="1P5Ngjh73HToCarlEZkqMxrL7pm" />
72 144 <component name="ProjectLevelVcsManager">
73 145 <ConfirmationsSetting value="2" id="Add" />
74 146 </component>
  147 + <component name="ProjectView">
  148 + <navigator proportions="" version="1">
  149 + <foldersAlwaysOnTop value="true" />
  150 + </navigator>
  151 + <panes>
  152 + <pane id="PackagesPane" />
  153 + <pane id="ProjectPane">
  154 + <subPane>
  155 + <expand>
  156 + <path>
  157 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  158 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  159 + </path>
  160 + <path>
  161 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  162 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  163 + <item name="src" type="462c0819:PsiDirectoryNode" />
  164 + </path>
  165 + <path>
  166 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  167 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  168 + <item name="src" type="462c0819:PsiDirectoryNode" />
  169 + <item name="main" type="462c0819:PsiDirectoryNode" />
  170 + </path>
  171 + <path>
  172 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  173 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  174 + <item name="src" type="462c0819:PsiDirectoryNode" />
  175 + <item name="main" type="462c0819:PsiDirectoryNode" />
  176 + <item name="java" type="462c0819:PsiDirectoryNode" />
  177 + </path>
  178 + <path>
  179 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  180 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  181 + <item name="src" type="462c0819:PsiDirectoryNode" />
  182 + <item name="main" type="462c0819:PsiDirectoryNode" />
  183 + <item name="java" type="462c0819:PsiDirectoryNode" />
  184 + <item name="com" type="462c0819:PsiDirectoryNode" />
  185 + </path>
  186 + <path>
  187 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  188 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  189 + <item name="src" type="462c0819:PsiDirectoryNode" />
  190 + <item name="main" type="462c0819:PsiDirectoryNode" />
  191 + <item name="java" type="462c0819:PsiDirectoryNode" />
  192 + <item name="com" type="462c0819:PsiDirectoryNode" />
  193 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  194 + </path>
  195 + <path>
  196 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  197 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  198 + <item name="src" type="462c0819:PsiDirectoryNode" />
  199 + <item name="main" type="462c0819:PsiDirectoryNode" />
  200 + <item name="java" type="462c0819:PsiDirectoryNode" />
  201 + <item name="com" type="462c0819:PsiDirectoryNode" />
  202 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  203 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  204 + </path>
  205 + <path>
  206 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  207 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  208 + <item name="src" type="462c0819:PsiDirectoryNode" />
  209 + <item name="main" type="462c0819:PsiDirectoryNode" />
  210 + <item name="java" type="462c0819:PsiDirectoryNode" />
  211 + <item name="com" type="462c0819:PsiDirectoryNode" />
  212 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  213 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  214 + <item name="inventory" type="462c0819:PsiDirectoryNode" />
  215 + </path>
  216 + <path>
  217 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  218 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  219 + <item name="src" type="462c0819:PsiDirectoryNode" />
  220 + <item name="main" type="462c0819:PsiDirectoryNode" />
  221 + <item name="java" type="462c0819:PsiDirectoryNode" />
  222 + <item name="com" type="462c0819:PsiDirectoryNode" />
  223 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  224 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  225 + <item name="inventory" type="462c0819:PsiDirectoryNode" />
  226 + <item name="inventoryDetail" type="462c0819:PsiDirectoryNode" />
  227 + </path>
  228 + <path>
  229 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  230 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  231 + <item name="src" type="462c0819:PsiDirectoryNode" />
  232 + <item name="main" type="462c0819:PsiDirectoryNode" />
  233 + <item name="java" type="462c0819:PsiDirectoryNode" />
  234 + <item name="com" type="462c0819:PsiDirectoryNode" />
  235 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  236 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  237 + <item name="inventory" type="462c0819:PsiDirectoryNode" />
  238 + <item name="inventoryDetail" type="462c0819:PsiDirectoryNode" />
  239 + <item name="domain" type="462c0819:PsiDirectoryNode" />
  240 + </path>
  241 + <path>
  242 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  243 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  244 + <item name="src" type="462c0819:PsiDirectoryNode" />
  245 + <item name="main" type="462c0819:PsiDirectoryNode" />
  246 + <item name="java" type="462c0819:PsiDirectoryNode" />
  247 + <item name="com" type="462c0819:PsiDirectoryNode" />
  248 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  249 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  250 + <item name="inventory" type="462c0819:PsiDirectoryNode" />
  251 + <item name="inventoryHeader" type="462c0819:PsiDirectoryNode" />
  252 + </path>
  253 + <path>
  254 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  255 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  256 + <item name="src" type="462c0819:PsiDirectoryNode" />
  257 + <item name="main" type="462c0819:PsiDirectoryNode" />
  258 + <item name="java" type="462c0819:PsiDirectoryNode" />
  259 + <item name="com" type="462c0819:PsiDirectoryNode" />
  260 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  261 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  262 + <item name="inventory" type="462c0819:PsiDirectoryNode" />
  263 + <item name="inventoryHeader" type="462c0819:PsiDirectoryNode" />
  264 + <item name="controller" type="462c0819:PsiDirectoryNode" />
  265 + </path>
  266 + <path>
  267 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  268 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  269 + <item name="src" type="462c0819:PsiDirectoryNode" />
  270 + <item name="main" type="462c0819:PsiDirectoryNode" />
  271 + <item name="java" type="462c0819:PsiDirectoryNode" />
  272 + <item name="com" type="462c0819:PsiDirectoryNode" />
  273 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  274 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  275 + <item name="inventory" type="462c0819:PsiDirectoryNode" />
  276 + <item name="inventoryHeader" type="462c0819:PsiDirectoryNode" />
  277 + <item name="domain" type="462c0819:PsiDirectoryNode" />
  278 + </path>
  279 + <path>
  280 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  281 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  282 + <item name="src" type="462c0819:PsiDirectoryNode" />
  283 + <item name="main" type="462c0819:PsiDirectoryNode" />
  284 + <item name="java" type="462c0819:PsiDirectoryNode" />
  285 + <item name="com" type="462c0819:PsiDirectoryNode" />
  286 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  287 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  288 + <item name="shipment" type="462c0819:PsiDirectoryNode" />
  289 + </path>
  290 + <path>
  291 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  292 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  293 + <item name="src" type="462c0819:PsiDirectoryNode" />
  294 + <item name="main" type="462c0819:PsiDirectoryNode" />
  295 + <item name="java" type="462c0819:PsiDirectoryNode" />
  296 + <item name="com" type="462c0819:PsiDirectoryNode" />
  297 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  298 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  299 + <item name="shipment" type="462c0819:PsiDirectoryNode" />
  300 + <item name="shipmentContainerHeader" type="462c0819:PsiDirectoryNode" />
  301 + </path>
  302 + <path>
  303 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  304 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  305 + <item name="src" type="462c0819:PsiDirectoryNode" />
  306 + <item name="main" type="462c0819:PsiDirectoryNode" />
  307 + <item name="java" type="462c0819:PsiDirectoryNode" />
  308 + <item name="com" type="462c0819:PsiDirectoryNode" />
  309 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  310 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  311 + <item name="shipment" type="462c0819:PsiDirectoryNode" />
  312 + <item name="shipmentContainerHeader" type="462c0819:PsiDirectoryNode" />
  313 + <item name="domain" type="462c0819:PsiDirectoryNode" />
  314 + </path>
  315 + <path>
  316 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  317 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  318 + <item name="src" type="462c0819:PsiDirectoryNode" />
  319 + <item name="main" type="462c0819:PsiDirectoryNode" />
  320 + <item name="java" type="462c0819:PsiDirectoryNode" />
  321 + <item name="com" type="462c0819:PsiDirectoryNode" />
  322 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  323 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  324 + <item name="shipment" type="462c0819:PsiDirectoryNode" />
  325 + <item name="shipmentContainerHeader" type="462c0819:PsiDirectoryNode" />
  326 + <item name="mapper" type="462c0819:PsiDirectoryNode" />
  327 + </path>
  328 + <path>
  329 + <item name="wms2" type="b2602c69:ProjectViewProjectNode" />
  330 + <item name="wms2" type="462c0819:PsiDirectoryNode" />
  331 + <item name="src" type="462c0819:PsiDirectoryNode" />
  332 + <item name="main" type="462c0819:PsiDirectoryNode" />
  333 + <item name="java" type="462c0819:PsiDirectoryNode" />
  334 + <item name="com" type="462c0819:PsiDirectoryNode" />
  335 + <item name="huaheng" type="462c0819:PsiDirectoryNode" />
  336 + <item name="pc" type="462c0819:PsiDirectoryNode" />
  337 + <item name="shipment" type="462c0819:PsiDirectoryNode" />
  338 + <item name="shipmentContainerHeader" type="462c0819:PsiDirectoryNode" />
  339 + <item name="service" type="462c0819:PsiDirectoryNode" />
  340 + </path>
  341 + </expand>
  342 + <select />
  343 + </subPane>
  344 + </pane>
  345 + <pane id="Scope" />
  346 + </panes>
  347 + </component>
75 348 <component name="PropertiesComponent">
76 349 <property name="ASKED_ADD_EXTERNAL_FILES" value="true" />
77 350 <property name="DatabaseDriversLRU" value="mysql" />
... ... @@ -130,7 +403,7 @@
130 403 </component>
131 404 <component name="RunManager">
132 405 <configuration name="HuaHengApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
133   - <module name="huaheng" />
  406 + <module name="wms2" />
134 407 <option name="SPRING_BOOT_MAIN_CLASS" value="com.huaheng.HuaHengApplication" />
135 408 <option name="ALTERNATIVE_JRE_PATH" />
136 409 <option name="UPDATE_ACTION_UPDATE_POLICY" value="UpdateClassesAndResources" />
... ... @@ -153,7 +426,16 @@
153 426 <serviceView>
154 427 <option name="contentProportion" value="0.18875067" />
155 428 <treeState>
156   - <expand />
  429 + <expand>
  430 + <path>
  431 + <item name="services root" type="e789fda9:ObjectUtils$Sentinel" />
  432 + <item name="com.intellij.execution.services.ServiceModel$ServiceGroupNode@5ef312b7" type="7427dc5b:ServiceModel$ServiceGroupNode" />
  433 + </path>
  434 + <path>
  435 + <item name="services root" type="e789fda9:ObjectUtils$Sentinel" />
  436 + <item name="com.intellij.execution.services.ServiceModel$ServiceGroupNode@28150ae" type="7427dc5b:ServiceModel$ServiceGroupNode" />
  437 + </path>
  438 + </expand>
157 439 <select />
158 440 </treeState>
159 441 </serviceView>
... ... @@ -191,9 +473,7 @@
191 473 <workItem from="1565829438280" duration="3502000" />
192 474 <workItem from="1565832950552" duration="86000" />
193 475 <workItem from="1565833039573" duration="288000" />
194   - <workItem from="1565833342181" duration="20223000" />
195   - <workItem from="1565916336398" duration="4223000" />
196   - <workItem from="1565923508645" duration="4968000" />
  476 + <workItem from="1565833342181" duration="13946000" />
197 477 </task>
198 478 <task id="LOCAL-00001" summary="添加库位、库位类型增删改查接口">
199 479 <created>1565226427512</created>
... ... @@ -286,30 +566,45 @@
286 566 <option name="project" value="LOCAL" />
287 567 <updated>1565833218584</updated>
288 568 </task>
289   - <task id="LOCAL-00014" summary="添加承运商页面,入库单类型">
290   - <created>1565856453372</created>
291   - <option name="number" value="00014" />
292   - <option name="presentableId" value="LOCAL-00014" />
293   - <option name="project" value="LOCAL" />
294   - <updated>1565856453372</updated>
295   - </task>
296   - <task id="LOCAL-00015" summary="添加导入模板列表">
297   - <created>1565861068194</created>
298   - <option name="number" value="00015" />
299   - <option name="presentableId" value="LOCAL-00015" />
300   - <option name="project" value="LOCAL" />
301   - <updated>1565861068194</updated>
302   - </task>
303   - <task id="LOCAL-00016" summary="添加容器导入和导出导入模板">
304   - <created>1565863093904</created>
305   - <option name="number" value="00016" />
306   - <option name="presentableId" value="LOCAL-00016" />
307   - <option name="project" value="LOCAL" />
308   - <updated>1565863093904</updated>
309   - </task>
310   - <option name="localTasksCounter" value="17" />
  569 + <option name="localTasksCounter" value="14" />
311 570 <servers />
312 571 </component>
  572 + <component name="ToolWindowManager">
  573 + <frame x="-7" y="-7" width="1550" height="838" extended-state="6" />
  574 + <editor active="true" />
  575 + <layout>
  576 + <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.2627346" />
  577 + <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
  578 + <window_info id="Web" order="2" side_tool="true" />
  579 + <window_info id="Designer" order="3" />
  580 + <window_info id="UI Designer" order="4" />
  581 + <window_info id="Favorites" order="5" side_tool="true" />
  582 + <window_info anchor="bottom" id="Messages" visible="true" weight="0.06798867" />
  583 + <window_info anchor="bottom" id="MyBatis Log" />
  584 + <window_info anchor="bottom" id="Message" order="0" />
  585 + <window_info anchor="bottom" id="Find" order="1" />
  586 + <window_info anchor="bottom" id="Run" order="2" />
  587 + <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
  588 + <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
  589 + <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
  590 + <window_info anchor="bottom" id="TODO" order="6" />
  591 + <window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />
  592 + <window_info anchor="bottom" id="Version Control" order="8" />
  593 + <window_info anchor="bottom" id="Run Dashboard" order="9" />
  594 + <window_info anchor="bottom" id="Spring" order="10" />
  595 + <window_info anchor="bottom" id="Database Changes" order="11" />
  596 + <window_info anchor="bottom" id="Event Log" order="12" side_tool="true" />
  597 + <window_info anchor="bottom" id="Java Enterprise" order="13" />
  598 + <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
  599 + <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
  600 + <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
  601 + <window_info anchor="right" id="Palette" order="3" />
  602 + <window_info anchor="right" id="Maven" order="4" />
  603 + <window_info anchor="right" id="Bean Validation" order="5" />
  604 + <window_info anchor="right" id="Database" order="6" />
  605 + <window_info anchor="right" id="Palette&#9;" order="7" />
  606 + </layout>
  607 + </component>
313 608 <component name="TypeScriptGeneratedFilesManager">
314 609 <option name="version" value="1" />
315 610 </component>
... ... @@ -319,6 +614,12 @@
319 614 <entry key="MAIN">
320 615 <value>
321 616 <State>
  617 + <option name="RECENTLY_FILTERED_USER_GROUPS">
  618 + <collection />
  619 + </option>
  620 + <option name="RECENTLY_FILTERED_BRANCH_GROUPS">
  621 + <collection />
  622 + </option>
322 623 <option name="COLUMN_ORDER" />
323 624 </State>
324 625 </value>
... ... @@ -354,10 +655,7 @@
354 655 <MESSAGE value="添加商品、商品详情页面" />
355 656 <MESSAGE value="添加承运商" />
356 657 <MESSAGE value="添加物料导入、导出模板,添加Excel导入导出配置文件" />
357   - <MESSAGE value="添加承运商页面,入库单类型" />
358   - <MESSAGE value="添加导入模板列表" />
359   - <MESSAGE value="添加容器导入和导出导入模板" />
360   - <option name="LAST_COMMIT_MESSAGE" value="添加容器导入和导出导入模板" />
  658 + <option name="LAST_COMMIT_MESSAGE" value="添加物料导入、导出模板,添加Excel导入导出配置文件" />
361 659 </component>
362 660 <component name="XDebuggerManager">
363 661 <breakpoint-manager>
... ... @@ -365,27 +663,79 @@
365 663 <line-breakpoint enabled="true" type="java-line">
366 664 <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/general/material/controller/MaterialController.java</url>
367 665 <line>198</line>
  666 + <properties />
368 667 <option name="timeStamp" value="11" />
369 668 </line-breakpoint>
370 669 <line-breakpoint enabled="true" type="java-line">
371 670 <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/common/utils/poi/ExcelUtil.java</url>
372 671 <line>302</line>
  672 + <properties />
373 673 <option name="timeStamp" value="12" />
374 674 </line-breakpoint>
375 675 <line-breakpoint enabled="true" type="java-line">
376 676 <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/general/material/controller/MaterialController.java</url>
377 677 <line>187</line>
  678 + <properties />
378 679 <option name="timeStamp" value="16" />
379 680 </line-breakpoint>
380 681 <line-breakpoint enabled="true" type="java-line">
381 682 <url>file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/general/material/service/MaterialServiceImpl.java</url>
382 683 <line>66</line>
  684 + <properties />
383 685 <option name="timeStamp" value="24" />
384 686 </line-breakpoint>
385 687 </breakpoints>
386 688 </breakpoint-manager>
387 689 </component>
388   - <component name="com.intellij.coverage.CoverageDataManagerImpl">
389   - <SUITE FILE_PATH="coverage/wmsv2$HuaHengApplication.ic" NAME="HuaHengApplication Coverage Results" MODIFIED="1565752188059" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false" />
  690 + <component name="editorHistoryManager">
  691 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/domain/InventoryHeader.java">
  692 + <provider selected="true" editor-type-id="text-editor">
  693 + <state relative-caret-position="60">
  694 + <caret line="155" selection-start-line="155" selection-end-line="155" />
  695 + </state>
  696 + </provider>
  697 + </entry>
  698 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderController.java">
  699 + <provider selected="true" editor-type-id="text-editor">
  700 + <state relative-caret-position="200">
  701 + <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
  702 + </state>
  703 + </provider>
  704 + </entry>
  705 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/controller/InventoryDetailController.java">
  706 + <provider selected="true" editor-type-id="text-editor">
  707 + <state relative-caret-position="-304">
  708 + <caret line="25" column="13" selection-start-line="25" selection-start-column="13" selection-end-line="25" selection-end-column="13" />
  709 + </state>
  710 + </provider>
  711 + </entry>
  712 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/domain/ShipmentContainerHeader.java">
  713 + <provider selected="true" editor-type-id="text-editor">
  714 + <state relative-caret-position="-356">
  715 + <caret line="118" column="16" selection-start-line="118" selection-start-column="16" selection-end-line="118" selection-end-column="16" />
  716 + </state>
  717 + </provider>
  718 + </entry>
  719 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/domain/ShipmentCombinationModel.java">
  720 + <provider selected="true" editor-type-id="text-editor">
  721 + <state relative-caret-position="68">
  722 + <caret line="7" column="13" selection-start-line="7" selection-start-column="13" selection-end-line="7" selection-end-column="13" />
  723 + </state>
  724 + </provider>
  725 + </entry>
  726 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java">
  727 + <provider selected="true" editor-type-id="text-editor">
  728 + <state relative-caret-position="202">
  729 + <caret line="76" column="16" lean-forward="true" selection-start-line="76" selection-start-column="16" selection-end-line="76" selection-end-column="16" />
  730 + </state>
  731 + </provider>
  732 + </entry>
  733 + <entry file="file://$PROJECT_DIR$/src/main/java/com/huaheng/pc/inventory/inventoryDetail/domain/InventoryDetail.java">
  734 + <provider selected="true" editor-type-id="text-editor">
  735 + <state relative-caret-position="1156">
  736 + <caret line="81" column="11" lean-forward="true" selection-start-line="81" selection-start-column="11" selection-end-line="81" selection-end-column="11" />
  737 + </state>
  738 + </provider>
  739 + </entry>
390 740 </component>
391 741 </project>
392 742 \ No newline at end of file
... ...
sql/bug deleted
1   -
2   -
3   -
4   -
5   -
6   -
7   -
8   -
9   -
10   -
11   -
12   -
13   -
src/main/java/com/huaheng/pc/general/location/mapper/LocationMapper.java
... ... @@ -2,6 +2,10 @@ package com.huaheng.pc.general.location.mapper;
2 2  
3 3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 4 import com.huaheng.pc.general.location.domain.Location;
  5 +import org.apache.ibatis.annotations.Param;
5 6  
6 7 public interface LocationMapper extends BaseMapper<Location> {
  8 +
  9 + void updateStatus(@Param("warehouseCode") String warehouseCode, @Param("code") String code, @Param("status") String status);
  10 +
7 11 }
8 12 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/general/location/service/LocationService.java
... ... @@ -6,4 +6,6 @@ public interface LocationService extends IService&lt;Location&gt;{
6 6  
7 7 boolean insertLocation(Location location);
8 8  
  9 + void updateStatus(String locationCode, String status);
  10 +
9 11 }
... ...
src/main/java/com/huaheng/pc/general/location/service/LocationServiceImpl.java
... ... @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4 4 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5 5 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
6 6 import com.huaheng.common.exception.service.ServiceException;
  7 +import com.huaheng.common.utils.StringUtils;
7 8 import com.huaheng.common.utils.security.ShiroUtils;
8 9 import com.huaheng.pc.config.locationType.domain.LocationType;
9 10 import com.huaheng.pc.config.locationType.service.LocationTypeService;
... ... @@ -29,6 +30,8 @@ public class LocationServiceImpl extends ServiceImpl&lt;LocationMapper, Location&gt; i
29 30 private LocationTypeService locationTypeService;
30 31 @Resource
31 32 private ZoneService zoneService;
  33 + @Resource
  34 + private LocationMapper locationMapper;
32 35  
33 36 @Override
34 37 public boolean insertLocation(Location location) {
... ... @@ -94,4 +97,11 @@ public class LocationServiceImpl extends ServiceImpl&lt;LocationMapper, Location&gt; i
94 97 Boolean result = locationService.saveBatch(locations);
95 98 return result;
96 99 }
  100 +
  101 + @Override
  102 + public void updateStatus(String locationCode, String status) {
  103 + if (StringUtils.isNotEmpty(locationCode)) {
  104 + locationMapper.updateStatus(ShiroUtils.getWarehouseCode(), locationCode, status);
  105 + }
  106 + }
97 107 }
... ...
src/main/java/com/huaheng/pc/inventory/inventoryDetail/controller/InventoryDetailController.java
... ... @@ -22,10 +22,10 @@ import javax.annotation.Resource;
22 22 *
23 23 */
24 24 @Controller
25   -@RequestMapping("/inventory/inventoryHeader")
  25 +@RequestMapping("/inventory/inventoryDetail")
26 26 public class InventoryDetailController extends BaseController
27 27 {
28   - private String prefix = "inventoryHeader/inventoryHeader";
  28 + private String prefix = "inventoryHeader/inventoryDetail";
29 29  
30 30 @Resource
31 31 private MaterialServiceImpl materialService;
... ... @@ -34,17 +34,17 @@ public class InventoryDetailController extends BaseController
34 34  
35 35  
36 36  
37   - @RequiresPermissions("inventoryHeader:inventoryHeader:view")
  37 + @RequiresPermissions("inventoryDetail:inventoryDetail:view")
38 38 @GetMapping()
39 39 public String inventory()
40 40 {
41   - return prefix + "/inventoryHeader";
  41 + return prefix + "/inventoryDetail";
42 42 }
43 43  
44 44 /**
45 45 * 查询库存列表
46 46 */
47   - @RequiresPermissions("inventoryHeader:inventoryHeader:list")
  47 + @RequiresPermissions("inventoryDetail:inventoryDetail:list")
48 48 @Log(title = "库存-库存查看",operating = "查看库存列表", action = BusinessType.GRANT)
49 49 @PostMapping("/inventoryLook")
50 50 @ResponseBody
... ... @@ -60,7 +60,7 @@ public class InventoryDetailController extends BaseController
60 60 }
61 61  
62 62 /**移库*/
63   - @RequiresPermissions("inventoryHeader:inventoryHeader:transfer")
  63 + @RequiresPermissions("inventoryDetail:inventoryDetail:transfer")
64 64 @PostMapping("/transfer")
65 65 @ResponseBody
66 66 public AjaxResult transfer(String sourceLocation, String destinationLocation, Integer companyId, String companyCode){
... ... @@ -69,7 +69,7 @@ public class InventoryDetailController extends BaseController
69 69 }
70 70  
71 71 /**出库查看*/
72   - @RequiresPermissions("inventoryHeader:inventoryHeader:seeOut")
  72 + @RequiresPermissions("inventoryDetail:inventoryDetail:seeOut")
73 73 @PostMapping("/createCheckOutTask")
74 74 @ResponseBody
75 75 public AjaxResult createCheckOutTask(String ids){
... ...
src/main/java/com/huaheng/pc/inventory/inventoryDetail/domain/InventoryDetail.java
... ... @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
5 5 import com.baomidou.mybatisplus.annotation.TableId;
6 6 import com.baomidou.mybatisplus.annotation.TableName;
7 7 import java.io.Serializable;
  8 +import java.math.BigDecimal;
8 9 import java.util.Date;
9 10 import lombok.Data;
10 11  
... ... @@ -75,19 +76,19 @@ public class InventoryDetail implements Serializable {
75 76 * 在库数量
76 77 */
77 78 @TableField(value = "qty")
78   - private Integer qty;
  79 + private BigDecimal qty;
79 80  
80 81 /**
81 82 * 任务数量
82 83 */
83 84 @TableField(value = "taskQty")
84   - private Integer taskQty;
  85 + private BigDecimal taskQty;
85 86  
86 87 /**
87 88 * 冻结数量
88 89 */
89 90 @TableField(value = "lockedQty")
90   - private Integer lockedQty;
  91 + private BigDecimal lockedQty;
91 92  
92 93 /**
93 94 * 库存状态
... ...
src/main/java/com/huaheng/pc/inventory/inventoryHeader/domain/InventoryHeader.java
... ... @@ -71,7 +71,7 @@ public class InventoryHeader implements Serializable {
71 71 private Integer totalQty;
72 72  
73 73 /**
74   - * 总数量
  74 + * 总行数
75 75 */
76 76 @TableField(value = "totalLines")
77 77 private Integer totalLines;
... ... @@ -155,36 +155,6 @@ public class InventoryHeader implements Serializable {
155 155 private String userDef3;
156 156  
157 157 /**
158   - * 自定义字段4
159   - */
160   - @TableField(value = "userDef4")
161   - private String userDef4;
162   -
163   - /**
164   - * 自定义字段5
165   - */
166   - @TableField(value = "userDef5")
167   - private String userDef5;
168   -
169   - /**
170   - * 自定义字段6
171   - */
172   - @TableField(value = "userDef6")
173   - private String userDef6;
174   -
175   - /**
176   - * 自定义字段7
177   - */
178   - @TableField(value = "userDef7")
179   - private String userDef7;
180   -
181   - /**
182   - * 自定义字段8
183   - */
184   - @TableField(value = "userDef8")
185   - private String userDef8;
186   -
187   - /**
188 158 * 库存详情
189 159 */
190 160 private InventoryDetail inventoryDetail;
... ...
src/main/java/com/huaheng/pc/shipment/shipmentContainerDetail/domain/ShipmentContainerDetail.java
... ... @@ -28,6 +28,20 @@ public class ShipmentContainerDetail implements Serializable {
28 28 private String containerCode;
29 29  
30 30 /**
  31 + * 库位
  32 + */
  33 + @TableField(value = "locationCode")
  34 + @ApiModelProperty(value="库位")
  35 + private String locationCode;
  36 +
  37 + /**
  38 + * 库存Id
  39 + */
  40 + @TableField(value = "inventoryId")
  41 + @ApiModelProperty(value="库存Id")
  42 + private String inventoryId;
  43 +
  44 + /**
31 45 * 出库箱头内部号
32 46 */
33 47 @TableField(value = "shippingContainerId")
... ... @@ -381,6 +395,10 @@ public class ShipmentContainerDetail implements Serializable {
381 395  
382 396 public static final String COL_CONTAINERCODE = "containerCode";
383 397  
  398 + public static final String COL_LOCATIONCODE = "locationCode";
  399 +
  400 + public static final String COL_INVENTORYID= "inventoryId";
  401 +
384 402 public static final String COL_SHIPPINGCONTAINERID = "shippingContainerId";
385 403  
386 404 public static final String COL_SHIPMENTCODE = "shipmentCode";
... ... @@ -517,6 +535,23 @@ public class ShipmentContainerDetail implements Serializable {
517 535 this.containerCode = containerCode;
518 536 }
519 537  
  538 +
  539 + public String getLocationCode() {
  540 + return locationCode;
  541 + }
  542 +
  543 + public void setLocationCode(String locationCode) {
  544 + this.locationCode = locationCode;
  545 + }
  546 +
  547 + public String getInventoryId() {
  548 + return inventoryId;
  549 + }
  550 +
  551 + public void setInventoryId(String inventoryId) {
  552 + this.inventoryId = inventoryId;
  553 + }
  554 +
520 555 /**
521 556 * 获取出库箱头内部号
522 557 *
... ...
src/main/java/com/huaheng/pc/shipment/shipmentContainerDetail/mapper/ShipmentContainerDetailMapper.java
... ... @@ -2,6 +2,13 @@ package com.huaheng.pc.shipment.shipmentContainerDetail.mapper;
2 2  
3 3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 4 import com.huaheng.pc.shipment.shipmentContainerDetail.domain.ShipmentContainerDetail;
  5 +import org.apache.ibatis.annotations.Param;
  6 +
  7 +import java.util.List;
  8 +import java.util.Map;
5 9  
6 10 public interface ShipmentContainerDetailMapper extends BaseMapper<ShipmentContainerDetail> {
  11 +
  12 + List<Map<String, Object>> selectListMapByEqual(@Param("columns") String columns, @Param("condition") ShipmentContainerDetail condition);
  13 +
7 14 }
8 15 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/shipment/shipmentContainerDetail/service/ShipmentContainerDetailService.java
... ... @@ -2,7 +2,12 @@ package com.huaheng.pc.shipment.shipmentContainerDetail.service;
2 2  
3 3 import com.huaheng.pc.shipment.shipmentContainerDetail.domain.ShipmentContainerDetail;
4 4 import com.baomidou.mybatisplus.extension.service.IService;
  5 +
  6 +import java.util.List;
  7 +import java.util.Map;
  8 +
5 9 public interface ShipmentContainerDetailService extends IService<ShipmentContainerDetail>{
6 10  
  11 + List<Map<String, Object>> selectListMapByEqual(String columnList, ShipmentContainerDetail condition);
7 12  
8 13 }
... ...
src/main/java/com/huaheng/pc/shipment/shipmentContainerDetail/service/ShipmentContainerDetailServiceImpl.java
... ... @@ -3,11 +3,19 @@ package com.huaheng.pc.shipment.shipmentContainerDetail.service;
3 3 import org.springframework.stereotype.Service;
4 4 import javax.annotation.Resource;
5 5 import java.util.List;
  6 +import java.util.Map;
  7 +
6 8 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 9 import com.huaheng.pc.shipment.shipmentContainerDetail.mapper.ShipmentContainerDetailMapper;
8 10 import com.huaheng.pc.shipment.shipmentContainerDetail.domain.ShipmentContainerDetail;
9   -import com.huaheng.pc.shipment.shipmentContainerDetail.service.ShipmentContainerDetailService;
10 11 @Service
11 12 public class ShipmentContainerDetailServiceImpl extends ServiceImpl<ShipmentContainerDetailMapper, ShipmentContainerDetail> implements ShipmentContainerDetailService{
12 13  
  14 + @Resource
  15 + private ShipmentContainerDetailMapper shipmentContainerDetailMapper;
  16 +
  17 + @Override
  18 + public List<Map<String, Object>> selectListMapByEqual(String columns, ShipmentContainerDetail condition) {
  19 + return shipmentContainerDetailMapper.selectListMapByEqual(columns, condition);
  20 + }
13 21 }
... ...
src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/domain/ShipmentContainerHeader.java
... ... @@ -27,6 +27,14 @@ public class ShipmentContainerHeader implements Serializable {
27 27 @ApiModelProperty(value="出库箱号")
28 28 private String containerCode;
29 29  
  30 +
  31 + /**
  32 + * 库位
  33 + */
  34 + @TableField(value = "locationCode")
  35 + @ApiModelProperty(value="库位")
  36 + private String locationCode;
  37 +
30 38 /**
31 39 * 仓库
32 40 */
... ... @@ -44,9 +52,9 @@ public class ShipmentContainerHeader implements Serializable {
44 52 /**
45 53 * 状态
46 54 */
47   - @TableField(value = "enable")
  55 + @TableField(value = "status")
48 56 @ApiModelProperty(value="状态")
49   - private Integer enable;
  57 + private Integer status;
50 58  
51 59 /**
52 60 * 父
... ... @@ -386,6 +394,9 @@ public class ShipmentContainerHeader implements Serializable {
386 394  
387 395 public static final String COL_CONTAINERCODE = "containerCode";
388 396  
  397 + public static final String COL_LOCATIONCODE = "locationCode";
  398 +
  399 +
389 400 public static final String COL_WAREHOUSECODE = "warehouseCode";
390 401  
391 402 public static final String COL_CONTAINERTYPE = "containerType";
... ... @@ -526,6 +537,14 @@ public class ShipmentContainerHeader implements Serializable {
526 537 this.containerCode = containerCode;
527 538 }
528 539  
  540 + public String getLocationCode() {
  541 + return locationCode;
  542 + }
  543 +
  544 + public void setLocationCode(String locationCode) {
  545 + this.locationCode = locationCode;
  546 + }
  547 +
529 548 /**
530 549 * 获取仓库
531 550 *
... ... @@ -562,22 +581,12 @@ public class ShipmentContainerHeader implements Serializable {
562 581 this.containerType = containerType;
563 582 }
564 583  
565   - /**
566   - * 获取状态
567   - *
568   - * @return enable - 状态
569   - */
570   - public Integer getEnable() {
571   - return enable;
  584 + public Integer getStatus() {
  585 + return status;
572 586 }
573 587  
574   - /**
575   - * 设置状态
576   - *
577   - * @param enable 状态
578   - */
579   - public void setEnable(Integer enable) {
580   - this.enable = enable;
  588 + public void setStatus(Integer status) {
  589 + this.status = status;
581 590 }
582 591  
583 592 /**
... ...
src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderService.java
1 1 package com.huaheng.pc.shipment.shipmentContainerHeader.service;
2 2  
3 3 import com.huaheng.framework.web.domain.AjaxResult;
  4 +import com.huaheng.pc.shipment.shipmentContainerDetail.domain.ShipmentContainerDetail;
4 5 import com.huaheng.pc.shipment.shipmentContainerHeader.domain.ShipmentCombinationModel;
5 6 import com.huaheng.pc.shipment.shipmentContainerHeader.domain.ShipmentContainerHeader;
6 7 import com.baomidou.mybatisplus.extension.service.IService;
7 8 import org.apache.ibatis.annotations.Param;
8 9  
  10 +import java.util.List;
9 11 import java.util.Map;
10 12  
11 13 public interface ShipmentContainerHeaderService extends IService<ShipmentContainerHeader>{
... ... @@ -14,7 +16,14 @@ public interface ShipmentContainerHeaderService extends IService&lt;ShipmentContain
14 16  
15 17  
16 18 //出库保存组盘
17   - AjaxResult combination(ShipmentCombinationModel shipmentCombination);
  19 + ShipmentContainerHeader combination(ShipmentCombinationModel shipmentCombination);
  20 +
  21 + //取消组盘
  22 + AjaxResult cancelCombinationDetail(List<Integer> detailIds) ;
  23 +
  24 + AjaxResult cancelCombinationDetailInner(List<ShipmentContainerDetail> shipmentContainerDetails) ;
  25 +
  26 + AjaxResult autoCombination(String shipmentCode);
18 27  
19 28  
20 29 }
... ...
src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java
... ... @@ -18,10 +18,13 @@ import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail;
18 18 import com.huaheng.pc.shipment.shipmentDetail.service.ShipmentDetailService;
19 19 import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader;
20 20 import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService;
  21 +import com.huaheng.pc.shipment.shippingCombination.domain.ShippingSearch;
  22 +import com.huaheng.pc.shipment.shippingCombination.service.ShippingCombinationService;
21 23 import org.springframework.beans.factory.annotation.Autowired;
22 24 import org.springframework.stereotype.Service;
23 25 import javax.annotation.Resource;
24 26 import java.math.BigDecimal;
  27 +import java.util.ArrayList;
25 28 import java.util.List;
26 29 import java.util.Map;
27 30  
... ... @@ -48,6 +51,8 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
48 51 private ShipmentContainerDetailService shipmentContainerDetailService;
49 52 @Autowired
50 53 private MaterialService materialService;
  54 + @Autowired
  55 + private ShippingCombinationService shippingCombinationService;
51 56  
52 57  
53 58 @Override
... ... @@ -64,30 +69,30 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
64 69 */
65 70 @Transactional
66 71 @Override
67   - public AjaxResult combination(ShipmentCombinationModel shipmentCombinationModel) {
  72 + public ShipmentContainerHeader combination(ShipmentCombinationModel shipmentCombinationModel) {
68 73  
69 74 //校验
70 75 if(shipmentCombinationModel.getShipQty().compareTo(new BigDecimal("0")) <= 0){
71   - return AjaxResult.error("出库数量必须大于0");
  76 + throw new ServiceException("出库数量必须大于0");
72 77 }
73 78 ShipmentDetail shipmentDetail = shipmentDetailService.getById(shipmentCombinationModel.getShipmentDetailId());
74 79 if(shipmentDetail==null){
75   - return AjaxResult.error("出库明细未找到");
  80 + throw new ServiceException("出库明细未找到");
76 81 }
77 82 InventoryDetail inventoryDetail = inventoryDetailService.getById((shipmentCombinationModel.getInventoryDetailId()));
78 83 if(inventoryDetail==null){
79   - return AjaxResult.error("库存未找到");
  84 + throw new ServiceException("库存未找到");
80 85 }
81 86 //校验数量是否超出
82 87 if((shipmentDetail.getShipQty().subtract(shipmentDetail.getRequestQty())).compareTo(shipmentCombinationModel.getShipQty())<0){
83   - return AjaxResult.error("录入数量超出明细待出数量");
  88 + throw new ServiceException("录入数量超出明细待出数量");
84 89 }
85 90 //校验库存可用数量
86 91 if(inventoryDetail.getQty().subtract(inventoryDetail.getTaskQty()).subtract(inventoryDetail.getLockedQty()).compareTo(shipmentCombinationModel.getShipQty())<0){
87   - return AjaxResult.error("录入数量超出可出数量");
  92 + throw new ServiceException("录入数量超出可出数量");
88 93 }
89 94 if(!shipmentDetail.getMaterialCode().equals(inventoryDetail.getMaterialCode())){
90   - return AjaxResult.error("配盘物料不一致");
  95 + throw new ServiceException("配盘物料不一致");
91 96 }
92 97 //库位
93 98 LambdaQueryWrapper<Location> lambdaQueryWrapper= Wrappers.lambdaQuery();
... ... @@ -95,7 +100,7 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
95 100 .eq(Location::getCode,inventoryDetail.getLocationCode());
96 101 Location location = locationService.getOne(lambdaQueryWrapper);
97 102 if (location == null)
98   - return AjaxResult.error("库位 "+ inventoryDetail.getLocationCode() +" 不存在");
  103 + throw new ServiceException("库位 "+ inventoryDetail.getLocationCode() +" 不存在");
99 104 if (location.getStatus().equals("lock")) {
100 105 //如果库位状态是锁定的话,就查找出库组盘表,如果存在未下发
101 106 LambdaQueryWrapper<ShipmentContainerHeader> lam=Wrappers.lambdaQuery();
... ... @@ -104,7 +109,7 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
104 109 .eq(ShipmentContainerHeader::getTaskCreated,0);
105 110 ShipmentContainerHeader shipmentContainerHeader = this.getOne(lam);
106 111 if (shipmentContainerHeader == null) {
107   - return AjaxResult.error("库位已经锁定不能使用");
  112 + throw new ServiceException("库位已经锁定不能使用");
108 113 }
109 114 }
110 115  
... ... @@ -141,7 +146,7 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
141 146 //更新单据状态
142 147 shipmentHeaderService.updateShipmentStatus(shipmentDetail.getShipmentId());
143 148  
144   - return AjaxResult.success("成功");
  149 + return shipmentContainerHeader;
145 150 }
146 151  
147 152 /**
... ... @@ -157,7 +162,7 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
157 162 lambdaQueryWrapper.eq(ShipmentContainerHeader::getContainerCode,location.getContainerCode())
158 163 .eq(ShipmentContainerHeader::getWarehouseCode,ShiroUtils.getWarehouseCode())
159 164 .eq(ShipmentContainerHeader::getTaskCreated,1)
160   - .eq(ShipmentContainerHeader::getEnable,10);
  165 + .eq(ShipmentContainerHeader::getStatus,10);
161 166 ShipmentContainerHeader shipmentContainerHeader = this.getOne(lambdaQueryWrapper);
162 167 if(shipmentContainerHeader != null) {
163 168 throw new ServiceException("容器"+location.getContainerCode()+"已经生成任务,不能再添加明细;操作中止;");
... ... @@ -167,7 +172,7 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
167 172 lam.eq(ShipmentContainerHeader::getContainerCode,location.getContainerCode())
168 173 .eq(ShipmentContainerHeader::getWarehouseCode,ShiroUtils.getWarehouseCode())
169 174 .eq(ShipmentContainerHeader::getTaskCreated,0)
170   - .eq(ShipmentContainerHeader::getEnable,0);
  175 + .eq(ShipmentContainerHeader::getStatus,0);
171 176 shipmentContainerHeader = this.getOne(lam);
172 177 if (shipmentContainerHeader == null) {
173 178 shipmentContainerHeader = new ShipmentContainerHeader();
... ... @@ -175,7 +180,7 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
175 180 shipmentContainerHeader.setWarehouseCode(ShiroUtils.getWarehouseCode());
176 181 //赋值u8仓库
177 182 shipmentContainerHeader.setCompanyCode(shipmentDetail.getCompanyCode());
178   - shipmentContainerHeader.setEnable(0);
  183 + shipmentContainerHeader.setStatus(0);
179 184 shipmentContainerHeader.setCreatedBy(ShiroUtils.getLoginName());
180 185 shipmentContainerHeader.setCreated(null);
181 186 // Material material=new Material();
... ... @@ -230,4 +235,132 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl&lt;ShipmentCont
230 235 return shipmentContainerDetail;
231 236 }
232 237  
  238 +
  239 + /**
  240 + * 取消组盘的一组明细
  241 + * @param detailIds
  242 + * @return
  243 + */
  244 + @Override
  245 + public AjaxResult cancelCombinationDetail(List<Integer> detailIds) {
  246 + List<ShipmentContainerDetail> shipmentContainerDetails = new ArrayList<>();
  247 + for(int detailId:detailIds){
  248 + ShipmentContainerDetail shipmentContainerDetail = shipmentContainerDetailService.getById(detailId);
  249 + shipmentContainerDetails.add(shipmentContainerDetail);
  250 + }
  251 + return cancelCombinationDetailInner(shipmentContainerDetails);
  252 + }
  253 +
  254 + /**
  255 + * 取消组盘的一组明细
  256 + * @param shipmentContainerDetails
  257 + * @return
  258 + */
  259 + @Override
  260 + @Transactional
  261 + public AjaxResult cancelCombinationDetailInner(List<ShipmentContainerDetail> shipmentContainerDetails) {
  262 + for(ShipmentContainerDetail shipmentContainerDetail:shipmentContainerDetails){
  263 + //获取头
  264 + ShipmentContainerHeader shipmentContainerHeader = this.getById(shipmentContainerDetail.getShippingContainerId());
  265 + if(shipmentContainerHeader.getStatus()>9){
  266 + return AjaxResult.error("容器"+shipmentContainerHeader.getContainerCode()+"非新建状态,不允许取消明细");
  267 + }
  268 + //恢复占用库存
  269 + InventoryDetail inventoryDetail = inventoryDetailService.getById(shipmentContainerDetail.getInventoryId());
  270 + inventoryDetail.setTaskQty(inventoryDetail.getTaskQty().subtract(shipmentContainerDetail.getQty()));
  271 + inventoryDetailService.saveOrUpdate(inventoryDetail);
  272 + //恢复单据发货数量
  273 + ShipmentDetail shipmentDetail = shipmentDetailService.getById(shipmentContainerDetail.getShipmentDetailId());
  274 + shipmentDetail.setRequestQty(shipmentDetail.getRequestQty().subtract(shipmentContainerDetail.getQty()));
  275 + if(shipmentDetail.getRequestQty().compareTo(BigDecimal.ZERO) != 0 ){
  276 + shipmentDetail.setStatus(200);//明细状态恢复,如果删除后还有以出数量就是波次
  277 + }else{
  278 + shipmentDetail.setStatus(0 );//明细状态
  279 + }
  280 + shipmentDetailService.saveOrUpdate(shipmentDetail);
  281 + //删除这个配盘明细
  282 + shipmentContainerDetailService.removeById(shipmentContainerDetail.getId());
  283 +
  284 + //查询头表下还有没有明细,如果没有,则删了这个头表
  285 + ShipmentContainerDetail condition = new ShipmentContainerDetail();
  286 + condition.setShippingContainerId(shipmentContainerDetail.getShippingContainerId());
  287 + List<Map<String, Object>> list= shipmentContainerDetailService.selectListMapByEqual("id", condition);
  288 + if(list==null||list.size() == 0){
  289 + this.removeById(shipmentContainerHeader.getId());
  290 + locationService.updateStatus(shipmentContainerHeader.getLocationCode(),"empty");
  291 + }
  292 + //更新单据状态
  293 + shipmentHeaderService.updateShipmentStatus(shipmentDetail.getShipmentId());
  294 + }
  295 + return AjaxResult.success("");
  296 + }
  297 +
  298 +
  299 + /**
  300 + * 出库自动组盘
  301 + * @param shipmentCode
  302 + * @return
  303 + */
  304 + @Override
  305 + @Transactional
  306 + public AjaxResult autoCombination(String shipmentCode) {
  307 + int num=0;
  308 + AjaxResult ajaxResult=new AjaxResult();
  309 +
  310 + LambdaQueryWrapper<ShipmentDetail> lambdaQueryWrapper=Wrappers.lambdaQuery();
  311 + lambdaQueryWrapper.eq(ShipmentDetail::getShipmentCode,shipmentCode)
  312 + .eq(ShipmentDetail::getWarehouseCode,ShiroUtils.getWarehouseCode());
  313 + List<ShipmentDetail> shipmentDetailList = shipmentDetailService.list(lambdaQueryWrapper);
  314 + if(shipmentDetailList.size()<1 || shipmentDetailList==null){
  315 + return AjaxResult.error("找不到子单链");
  316 + }
  317 + for (ShipmentDetail item : shipmentDetailList) {
  318 + //获取需要出库数量
  319 + BigDecimal shipmentQty = item.getShipQty().subtract(item.getRequestQty());
  320 + //判断是否还有需要出库的物料,如果没有就跳过该物料
  321 + if (shipmentQty.compareTo(BigDecimal.ZERO) <= 0) {
  322 + continue;
  323 + }
  324 + // 根据 仓库编码、货主编码、存货编码,物料状态,项目号来查找可以出库的物料
  325 + ShippingSearch search = new ShippingSearch();
  326 + search.setWarehouseCode(ShiroUtils.getWarehouseCode());
  327 + search.setCompanyCode(item.getCompanyCode());
  328 + search.setMaterialCode(item.getMaterialCode());
  329 + search.setInventorySts(item.getInventorySts()); //物料状态
  330 +
  331 + List<InventoryDetail> inventoryList = shippingCombinationService.getInventorys(search);
  332 + if (inventoryList.size() < 1) {
  333 + num = num + 1;
  334 + } else {
  335 + for (InventoryDetail inventory : inventoryList) {
  336 + //判断是否组盘完毕,完毕就退出内循环
  337 + if (shipmentQty.compareTo(BigDecimal.ZERO) <= 0) {
  338 + break;
  339 + }
  340 +
  341 + BigDecimal inventoryQty = inventory.getQty().subtract(inventory.getTaskQty());
  342 + ShipmentCombinationModel shipmentCombination = new ShipmentCombinationModel();
  343 + shipmentCombination.setInventoryDetailId(inventory.getId());
  344 + shipmentCombination.setShipmentDetailId(item.getId());
  345 + shipmentCombination.setType((short) 300);
  346 + List<Integer> list=new ArrayList<>();
  347 + //如果库存数 >= 待出库数,组盘数就是待出库数并且结束组盘,否则组盘数就是库存数
  348 + if (inventoryQty.compareTo(shipmentQty) > -1) {
  349 + shipmentCombination.setShipQty(shipmentQty);
  350 + ShipmentContainerHeader shipmentContainerHeader=this.combination(shipmentCombination);
  351 + } else {
  352 + shipmentCombination.setShipQty(inventoryQty);
  353 + ShipmentContainerHeader shipmentContainerHeader=this.combination(shipmentCombination);
  354 + list.add(shipmentContainerHeader.getId());
  355 + }
  356 + shipmentQty = shipmentQty.subtract(shipmentCombination.getShipQty());
  357 + }
  358 + }
  359 + }
  360 + if(num==shipmentDetailList.size()){
  361 + throw new ServiceException("单据物料在此库区没有库存,无法出库");
  362 + }
  363 + return AjaxResult.success("");
  364 + }
  365 +
233 366 }
... ...
src/main/java/com/huaheng/pc/shipment/shippingCombination/controller/ShippingCombinationController.java
... ... @@ -13,6 +13,7 @@ import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail;
13 13 import com.huaheng.pc.inventory.inventoryDetail.service.InventoryDetailService;
14 14 import com.huaheng.pc.shipment.shipmentContainerDetail.service.ShipmentContainerDetailService;
15 15 import com.huaheng.pc.shipment.shipmentContainerHeader.domain.ShipmentCombinationModel;
  16 +import com.huaheng.pc.shipment.shipmentContainerHeader.domain.ShipmentContainerHeader;
16 17 import com.huaheng.pc.shipment.shipmentContainerHeader.service.ShipmentContainerHeaderService;
17 18 import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail;
18 19 import com.huaheng.pc.shipment.shipmentDetail.service.ShipmentDetailServiceImpl;
... ... @@ -122,36 +123,36 @@ public class ShippingCombinationController extends BaseController {
122 123 @PostMapping("/Addcombination")
123 124 @ResponseBody
124 125 public AjaxResult Addcombination(ShipmentCombinationModel shipmentCombinationModel){
125   - AjaxResult ajaxResult = shipmentContainerHeaderService.combination(shipmentCombinationModel);
126   - return ajaxResult;
  126 + ShipmentContainerHeader shipmentContainerHeader= shipmentContainerHeaderService.combination(shipmentCombinationModel);
  127 + return AjaxResult.success(shipmentContainerHeader.getId());
127 128 }
128 129  
129   -// /**
130   -// * 自动组盘
131   -// * @param shipmentCode
132   -// * @return
133   -// */
134   -// @RequiresPermissions("shipment:shippingCombination:combination")
135   -// @PostMapping("/autoCombination")
136   -// @ResponseBody
137   -// public AjaxResult autoCombination(String shipmentCode){
138   -// AjaxResult ajaxResult = shipmentContainerHeaderService.autoCombination(shipmentCode);
139   -// return ajaxResult;
140   -// }
141   -
142   -
143   -
144   -// /** 取消组盘
145   -// *
146   -// * @param shipmentContainerDetailIds
147   -// * @return
148   -// */
149   -// @RequiresPermissions("shipment:shippingCombination:remove")
150   -// @PostMapping("/cancelCombination")
151   -// @ResponseBody
152   -// public AjaxResult cancelCombination(@RequestBody List<Integer> shipmentContainerDetailIds){
153   -// return shipmentContainerHeaderService.cancelCombinationDetail(shipmentContainerDetailIds);
154   -// }
  130 + /**
  131 + * 自动组盘
  132 + * @param shipmentCode
  133 + * @return
  134 + */
  135 + @RequiresPermissions("shipment:shippingCombination:combination")
  136 + @PostMapping("/autoCombination")
  137 + @ResponseBody
  138 + public AjaxResult autoCombination(String shipmentCode){
  139 + AjaxResult ajaxResult = shipmentContainerHeaderService.autoCombination(shipmentCode);
  140 + return ajaxResult;
  141 + }
  142 +
  143 +
  144 +
  145 + /** 取消组盘
  146 + *
  147 + * @param shipmentContainerDetailIds
  148 + * @return
  149 + */
  150 + @RequiresPermissions("shipment:shippingCombination:remove")
  151 + @PostMapping("/cancelCombination")
  152 + @ResponseBody
  153 + public AjaxResult cancelCombination(@RequestBody List<Integer> shipmentContainerDetailIds){
  154 + return shipmentContainerHeaderService.cancelCombinationDetail(shipmentContainerDetailIds);
  155 + }
155 156  
156 157  
157 158 }
... ...
src/main/java/com/huaheng/pc/shipment/shippingCombination/mapper/ShippingCombinationMapper.java
1 1 package com.huaheng.pc.shipment.shippingCombination.mapper;
2 2  
3 3  
  4 +import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail;
  5 +import com.huaheng.pc.shipment.shippingCombination.domain.ShippingSearch;
  6 +
  7 +import java.util.List;
  8 +
4 9 public interface ShippingCombinationMapper {
5 10  
  11 + List<InventoryDetail> getInventorys(ShippingSearch search);
  12 +
6 13 }
... ...
src/main/java/com/huaheng/pc/shipment/shippingCombination/service/ShippingCombinationService.java
1 1 package com.huaheng.pc.shipment.shippingCombination.service;
2 2  
3 3  
  4 +import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail;
  5 +import com.huaheng.pc.shipment.shippingCombination.domain.ShippingSearch;
  6 +import com.huaheng.pc.shipment.shippingCombination.mapper.ShippingCombinationMapper;
4 7 import org.springframework.stereotype.Service;
5 8  
  9 +import javax.annotation.Resource;
  10 +import java.util.List;
  11 +
6 12  
7 13 @Service
8 14 public class ShippingCombinationService {
9 15  
  16 + @Resource
  17 + private ShippingCombinationMapper shippingCombinationMapper;
  18 +
  19 +
  20 + public List<InventoryDetail> getInventorys(ShippingSearch search) {
  21 + List<InventoryDetail> list = shippingCombinationMapper.getInventorys(search);
  22 + return list;
  23 + }
  24 +
10 25 }
... ...
src/main/resources/mybatis/general/LocationMapper.xml
... ... @@ -38,4 +38,8 @@
38 38 version, userDef1, userDef2, userDef3, userDef4, userDef5, userDef6, userDef7, userDef8,
39 39 systemCreated
40 40 </sql>
  41 +
  42 + <update id="updateStatus">
  43 + UPDATE location set `status`=#{status} WHERE warehouseCode=#{warehouseCode} AND `code`=#{code}
  44 + </update>
41 45 </mapper>
42 46 \ No newline at end of file
... ...
src/main/resources/mybatis/shipment/ShipmentCombinationMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="com.huaheng.pc.shipment.shippingCombination.mapper.ShippingCombinationMapper">
  4 + <resultMap id="BaseResultMap" type="com.huaheng.pc.shipment.shippingCombination.domain.ShippingSearch">
  5 + <!--@mbg.generated-->
  6 + <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" />
  7 + <result column="companyCode" jdbcType="VARCHAR" property="companyCode" />
  8 + <result column="code" jdbcType="VARCHAR" property="code" />
  9 + <result column="materialCode" jdbcType="VARCHAR" property="materialCode" />
  10 + <result column="locationCode" jdbcType="VARCHAR" property="locationCode" />
  11 + <result column="containerCode" jdbcType="VARCHAR" property="containerCode" />
  12 + <result column="inventorySts" jdbcType="VARCHAR" property="inventorySts" />
  13 + <result column="project" jdbcType="VARCHAR" property="project" />
  14 + <result column="code" jdbcType="VARCHAR" property="code" />
  15 + </resultMap>
  16 + <sql id="Base_Column_List">
  17 + <!--@mbg.generated-->
  18 + warehouseCode, companyCode, code, materialCode, locationCode, `containerCode`, inventorySts,
  19 + project
  20 + </sql>
  21 +
  22 + <select id="getInventorys" resultType="com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail">
  23 + SELECT i.id, i.warehouseId, i.warehouseCode, i.locationId, i.locationCode, i.containerCode,
  24 + i.sourceCode, i.sourceLine, i.companyId, i.companyCode, i.materialId, i.materialCode,
  25 + i.receiptId, i.receiptCode, i.receiptDetailId, i.batch, i.lot, i.project, i.manufactureDate,
  26 + i.expirationDate, i.status, i.qty, i.taskQty, i.costPrice, i.listPrice, i.netPrice, i.created,
  27 + i.createdBy, i.lastUpdated, i.lastUpdatedBy, i.userDef1, i.userDef2, i.userDef3, i.deleted,
  28 + m.name materialName, m.userDef1 materialOldCode ,i.zoneCode
  29 + FROM inventory i
  30 + INNER JOIN material m ON i.materialCode = m.code
  31 + AND i.companyCode=#{companyCode}
  32 + AND i.warehouseCode=#{warehouseCode}
  33 + AND m.warehouseCode=#{warehouseCode}
  34 + AND i.qty > i.taskQty
  35 + AND i.materialCode=#{materialCode}
  36 +
  37 + INNER JOIN location l ON i.locationCode = l.code
  38 + AND l.warehouseCode=#{warehouseCode}
  39 + LEFT JOIN shipment_container_header s ON i.locationCode = s.locationCode
  40 + AND s.status=0
  41 + AND s.warehouseCode=#{warehouseCode}
  42 + <where>
  43 + <if test="project != null and project != ''">
  44 + AND i.project = #{project}
  45 + </if>
  46 + <if test="inventoryStatus != null and inventoryStatus != '' ">
  47 + AND i.status = #{inventoryStatus}
  48 + </if>
  49 + <if test="locationCode != null and locationCode != '' ">
  50 + AND i.locationCode = #{locationCode}
  51 + </if>
  52 + <if test="containerCode != null and containerCode != '' ">
  53 + AND i.containerCode = #{containerCode}
  54 + </if>
  55 + <if test="params != null and params.createdBegin != null and params.createdBegin != ''">
  56 + AND i.created &gt;= #{params.createdBegin}
  57 + </if>
  58 + <if test="params != null and params.createdEnd != null and params.createdEnd != ''">
  59 + AND i.created &lt;= #{params.createdEnd}
  60 + </if>
  61 + AND l.status='empty' OR (l.status='lock' AND s.id IS NOT NULL)
  62 + </where>
  63 + </select>
  64 +</mapper>
0 65 \ No newline at end of file
... ...
src/main/resources/mybatis/shipment/ShipmentContainerDetailMapper.xml
... ... @@ -67,4 +67,47 @@
67 67 version, userDef1, userDef2, userDef3, userDef4, userDef5, userDef6, userDef7, userDef8,
68 68 processStamp
69 69 </sql>
  70 +
  71 + <select id="selectListMapByEqual" resultType="java.util.HashMap">
  72 + SELECT ${columns} FROM shipment_container_detail
  73 + <where>
  74 + <if test="condition.id != null">
  75 + AND id = #{condition.id}
  76 + </if>
  77 + <if test="condition.headerId != null">
  78 + AND headerId = #{condition.headerId}
  79 + </if>
  80 + <if test="condition.shipmentCode != null">
  81 + AND shipmentCode = #{condition.shipmentCode}
  82 + </if>
  83 + <if test="condition.shipmentHeaderId != null">
  84 + AND shipmentHeaderId = #{condition.shipmentHeaderId}
  85 + </if>
  86 + <if test="condition.shipmentDetailId != null">
  87 + AND shipmentDetailId = #{condition.shipmentDetailId}
  88 + </if>
  89 + <if test="condition.materialCode != null">
  90 + AND materialCode = #{condition.materialCode}
  91 + </if>
  92 + <if test="condition.materialName != null">
  93 + AND materialName = #{condition.materialName}
  94 + </if>
  95 + <if test="condition.qty != null">
  96 + AND qty = #{condition.qty}
  97 + </if>
  98 + <if test="condition.inventoryId != null">
  99 + AND inventoryId = #{condition.inventoryId}
  100 + </if>
  101 + <if test="condition.created != null">
  102 + AND created = #{condition.created}
  103 + </if>
  104 + <if test="condition.createdBy != null">
  105 + AND createdBy = #{condition.createdBy}
  106 + </if>
  107 + <if test="condition.project != null">
  108 + AND project = #{condition.project}
  109 + </if>
  110 + </where>
  111 + </select>
  112 +
70 113 </mapper>
71 114 \ No newline at end of file
... ...
src/main/resources/mybatis/shipment/ShipmentContainerHeaderMapper.xml
... ... @@ -7,7 +7,7 @@
7 7 <result column="containerCode" jdbcType="VARCHAR" property="containerCode" />
8 8 <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" />
9 9 <result column="containerType" jdbcType="VARCHAR" property="containerType" />
10   - <result column="enable" jdbcType="INTEGER" property="enable" />
  10 + <result column="enable" jdbcType="INTEGER" property="status" />
11 11 <result column="parent" jdbcType="INTEGER" property="parent" />
12 12 <result column="totalWeight" jdbcType="DECIMAL" property="totalWeight" />
13 13 <result column="totalVolume" jdbcType="DECIMAL" property="totalVolume" />
... ...