Browse Source

first commit

HUJIANGUO 3 years ago
commit
51dd32fc03
37 changed files with 3438 additions and 0 deletions
  1. 8 0
      .gitignore
  2. 152 0
      pom.xml
  3. 26 0
      src/main/java/com/steerinfo/DilApplicationMain.java
  4. 22 0
      src/main/java/com/steerinfo/dil/config/CorsConfig1.java
  5. 43 0
      src/main/java/com/steerinfo/dil/config/WebSocketConfig.java
  6. 97 0
      src/main/java/com/steerinfo/dil/controller/WmshGridMaterialController.java
  7. 111 0
      src/main/java/com/steerinfo/dil/controller/WmshInboundResultController.java
  8. 80 0
      src/main/java/com/steerinfo/dil/controller/WmshOutboundResultController.java
  9. 19 0
      src/main/java/com/steerinfo/dil/feign/ColumnDataFeign.java
  10. 22 0
      src/main/java/com/steerinfo/dil/feign/WMSFeign.java
  11. 26 0
      src/main/java/com/steerinfo/dil/interceptors/MyLocaleChangeInterceptor.java
  12. 47 0
      src/main/java/com/steerinfo/dil/mapper/WmshGridMaterialMapper.java
  13. 23 0
      src/main/java/com/steerinfo/dil/mapper/WmshInboundResultMapper.java
  14. 21 0
      src/main/java/com/steerinfo/dil/mapper/WmshOutboundResultMapper.java
  15. 184 0
      src/main/java/com/steerinfo/dil/model/WmshGridMaterial.java
  16. 199 0
      src/main/java/com/steerinfo/dil/model/WmshInboundResult.java
  17. 199 0
      src/main/java/com/steerinfo/dil/model/WmshOutboundResult.java
  18. 42 0
      src/main/java/com/steerinfo/dil/service/IWmshGridMaterialService.java
  19. 37 0
      src/main/java/com/steerinfo/dil/service/IWmshInboundResultService.java
  20. 25 0
      src/main/java/com/steerinfo/dil/service/IWmshOutboundResultService.java
  21. 92 0
      src/main/java/com/steerinfo/dil/service/impl/WmshGridMaterialServiceImpl.java
  22. 101 0
      src/main/java/com/steerinfo/dil/service/impl/WmshInboundResultServiceImpl.java
  23. 74 0
      src/main/java/com/steerinfo/dil/service/impl/WmshOutboundResultServiceImpl.java
  24. 70 0
      src/main/java/com/steerinfo/dil/util/BaseRESTfulController.java
  25. 38 0
      src/main/java/com/steerinfo/dil/util/ColumnDataUtil.java
  26. 139 0
      src/main/java/com/steerinfo/dil/util/DataChange.java
  27. 33 0
      src/main/java/com/steerinfo/dil/util/PageListAdd.java
  28. 11 0
      src/main/java/com/steerinfo/dil/util/util.java
  29. 9 0
      src/main/resources/application-dev.yml
  30. 8 0
      src/main/resources/application-prod.yml
  31. 0 0
      src/main/resources/application.yml
  32. 50 0
      src/main/resources/bootstrap.yml
  33. 443 0
      src/main/resources/com/steerinfo/dil/mapper/WmshGridMaterialMapper.xml
  34. 459 0
      src/main/resources/com/steerinfo/dil/mapper/WmshInboundResultMapper.xml
  35. 444 0
      src/main/resources/com/steerinfo/dil/mapper/WmshOutboundResultMapper.xml
  36. 80 0
      src/main/resources/log4j.properties
  37. 4 0
      src/main/resources/message.properties

+ 8 - 0
.gitignore

@@ -0,0 +1,8 @@
+target/
+*.iml
+.idea/
+rebel.xml
+.rebel.xml.bak
+out/artifacts/
+dil-api.iml
+src/test

+ 152 - 0
pom.xml

@@ -0,0 +1,152 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.example</groupId>
+    <artifactId>dil-api</artifactId>
+    <version>1.0-SNAPSHOT</version>
+
+    <parent>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-parent</artifactId>
+        <version>2.0.7.RELEASE</version>
+    </parent>
+
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>org.springframework.cloud</groupId>
+                <artifactId>spring-cloud-dependencies</artifactId>
+                <!--Spring Cloud的版本-->
+                <version>Finchley.SR2</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>maven-public</id>
+            <name>steerinfo maven-public</name>
+            <url>https://nexus.steerinfo.com/repository/maven-public/</url>
+        </repository>
+    </repositories>
+
+    <distributionManagement>
+        <repository>
+            <id>maven-releases</id>
+            <name>steerinfo nexus-releases</name>
+            <url>http://nexus.steerinfo.com/repository/maven-releases/</url>
+        </repository>
+        <snapshotRepository>
+            <id>maven-snapshots</id>
+            <url>http://nexus.steerinfo.com/repository/maven-snapshots/</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <dependencies>
+        <!--websocket-->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-websocket</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+
+        <!--mybatisPlus-->
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+            <version>3.4.2</version>
+        </dependency>
+
+        <!--swagger-->
+        <dependency>
+            <groupId>io.springfox</groupId>
+            <artifactId>springfox-swagger2</artifactId>
+            <version>2.9.2</version>
+        </dependency>
+        <dependency>
+            <groupId>io.springfox</groupId>
+            <artifactId>springfox-swagger-ui</artifactId>
+            <version>2.9.2</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi</artifactId>
+            <version>3.17</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi-ooxml</artifactId>
+            <version>3.17</version>
+        </dependency>
+        <!--steerinfo-->
+        <dependency>
+            <groupId>com.steerinfo</groupId>
+            <artifactId>framework</artifactId>
+            <version>1.0</version>
+        </dependency>
+
+
+    </dependencies>
+    <build>
+        <plugins>
+            <!--             自动生成代码文件 -->
+            <plugin>
+                <groupId>com.steerinfo</groupId>
+                <artifactId>generator-maven-plugin</artifactId>
+                <version>3.0</version>
+                <configuration>
+                    <connUrl>jdbc:oracle:thin:@192.168.1.51:1521:steerinfo</connUrl>
+                    <user>dilusr</user>
+                    <password>stinf#0420</password>
+                    <!--包名-->
+                    <targetPackage>com.steerinfo.dil</targetPackage>
+                    <tables>
+                        <param>[table-name]</param><!--运力-->
+                    </tables>
+                </configuration>
+                <executions>
+                    <execution>
+                        <phase>compile</phase>
+                        <goals>
+                            <goal>steerinfo</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>repackage</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+                <includes>
+                    <include>**/*.xml</include>
+                </includes>
+            </resource>
+
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+    </build>
+</project>

+ 26 - 0
src/main/java/com/steerinfo/DilApplicationMain.java

@@ -0,0 +1,26 @@
+package com.steerinfo;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.web.servlet.ServletComponentScan;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+import org.springframework.cloud.openfeign.EnableFeignClients;
+import org.springframework.scheduling.annotation.EnableScheduling;
+
+/**
+ * @Author zhangnan
+ * @Date 2021/4/21 14:32
+ * @Version 1.0
+ */
+@SpringBootApplication
+@ServletComponentScan
+@EnableScheduling
+@MapperScan({"com.steerinfo.dil.mapper"})
+@EnableFeignClients(basePackages = "com.steerinfo.dil.feign")
+@EnableDiscoveryClient
+public class DilApplicationMain {
+    public static void main(String[] args) {
+        SpringApplication.run(DilApplicationMain.class,args);
+    }
+}

+ 22 - 0
src/main/java/com/steerinfo/dil/config/CorsConfig1.java

@@ -0,0 +1,22 @@
+package com.steerinfo.dil.config;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.CorsRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+
+/**
+ *
+ */
+@Configuration
+public class CorsConfig1 implements WebMvcConfigurer {
+
+    @Override
+    public void addCorsMappings(CorsRegistry registry) {
+        registry.addMapping("/**")
+                .allowedOrigins("*")
+                .allowedMethods("GET","HEAD","POST","PUT","DELETE","OPTIONS")
+                .allowCredentials(true)
+                .maxAge(3600)
+                .allowedHeaders("*");
+    }
+}

+ 43 - 0
src/main/java/com/steerinfo/dil/config/WebSocketConfig.java

@@ -0,0 +1,43 @@
+package com.steerinfo.dil.config;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.messaging.simp.config.ChannelRegistration;
+import org.springframework.messaging.simp.config.MessageBrokerRegistry;
+import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker;
+import org.springframework.web.socket.config.annotation.StompEndpointRegistry;
+import org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer;
+
+@Configuration
+@EnableWebSocketMessageBroker
+public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {
+
+    @Override
+    public void registerStompEndpoints(StompEndpointRegistry stompEndpointRegistry) {
+        stompEndpointRegistry
+                .addEndpoint("/webSocket")
+                .setAllowedOrigins("*")
+                .withSockJS(); //使用sockJS
+
+    }
+
+    @Override
+    public void configureMessageBroker(MessageBrokerRegistry registry) {
+        //这里使用的是内存模式,生产环境可以使用rabbitmq或者其他mq。
+        //这里注册两个,主要是目的是将广播和队列分开。
+        //registry.enableStompBrokerRelay().setRelayHost().setRelayPort() 其他方式
+        registry.enableSimpleBroker("/topic");
+        //设置客户端前缀 即@MessageMapping
+        registry.setApplicationDestinationPrefixes("/app");
+        //点对点发送前缀
+        registry.setUserDestinationPrefix("/user");
+    }
+
+    /**
+     * 输入通道参数配置
+     *
+     * @param registration
+     */
+    @Override
+    public void configureClientInboundChannel(ChannelRegistration registration) {
+    }
+}

+ 97 - 0
src/main/java/com/steerinfo/dil/controller/WmshGridMaterialController.java

@@ -0,0 +1,97 @@
+package com.steerinfo.dil.controller;
+
+import com.steerinfo.dil.service.IWmshGridMaterialService;
+import com.steerinfo.dil.util.ColumnDataUtil;
+import com.steerinfo.dil.util.PageListAdd;
+import com.steerinfo.framework.controller.BaseRESTfulController;
+import com.steerinfo.framework.controller.RESTfulResult;
+import com.steerinfo.framework.service.pagehelper.PageHelper;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * WmshGridMaterial RESTful接口:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-09 07:25
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-09
+ * 作者:generator
+ * 参考:
+ * 描述:WmshGridMaterial RESTful接口
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+@RestController
+@RequestMapping("/${api.version}/wmshgridmaterials")
+public class WmshGridMaterialController extends BaseRESTfulController {
+
+    @Autowired
+    IWmshGridMaterialService wmshGridMaterialService;
+    @Autowired
+    ColumnDataUtil columnDataUtil;
+
+    /**
+     * 展示下游港口港存库库存列表
+     * @param mapVal
+     * @param pageNum
+     * @param pageSize
+     * @param apiId
+     * @return
+     */
+    @ApiOperation(value="展示下游港口港存库库存列表", notes="分页查询")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "apiId", value = "158", required = false, dataType = "BigDecimal"),
+    })
+    @PostMapping(value = "/getUnloadPortStockList")
+    public RESTfulResult getUnloadPortStockList(@RequestBody(required = false) Map<String,Object> mapVal,
+                                                Integer pageNum,
+                                                Integer pageSize,
+                                                Integer apiId){
+        List<Map<String,Object>> list = wmshGridMaterialService.getUnloadPortStockList(mapVal);
+        PageHelper.startPage(pageNum, pageSize);
+        //分页查询数据
+        List<Map<String, Object>> columnList = wmshGridMaterialService.getUnloadPortStockList(mapVal);
+        PageListAdd data = columnDataUtil.tableColumnData(apiId, list, columnList);
+        return success(data);
+    }
+
+    /**
+     * 展示万州港港存库库存列表
+     * @param mapVal
+     * @param pageNum
+     * @param pageSize
+     * @param apiId
+     * @return
+     */
+    @ApiOperation(value="展示万州港港存库库存列表", notes="分页查询")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "apiId", value = "158", required = false, dataType = "BigDecimal"),
+    })
+    @PostMapping(value = "/getLoadPortStockList")
+    public RESTfulResult getLoadPortStockList(@RequestBody(required = false) Map<String,Object> mapVal,
+                                                Integer pageNum,
+                                                Integer pageSize,
+                                                Integer apiId){
+        List<Map<String,Object>> list = wmshGridMaterialService.getLoadPortStockList(mapVal);
+        PageHelper.startPage(pageNum, pageSize);
+        //分页查询数据
+        List<Map<String, Object>> columnList = wmshGridMaterialService.getLoadPortStockList(mapVal);
+        PageListAdd data = columnDataUtil.tableColumnData(apiId, list, columnList);
+        return success(data);
+    }
+
+}

+ 111 - 0
src/main/java/com/steerinfo/dil/controller/WmshInboundResultController.java

@@ -0,0 +1,111 @@
+package com.steerinfo.dil.controller;
+
+import com.steerinfo.dil.model.WmshInboundResult;
+import com.steerinfo.dil.service.impl.WmshGridMaterialServiceImpl;
+import com.steerinfo.dil.service.impl.WmshInboundResultServiceImpl;
+import com.steerinfo.dil.util.BaseRESTfulController;
+import com.steerinfo.dil.util.ColumnDataUtil;
+import com.steerinfo.dil.util.PageListAdd;
+import com.steerinfo.framework.controller.RESTfulResult;
+import com.steerinfo.framework.service.pagehelper.PageHelper;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.math.BigDecimal;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * WmshInboundResult RESTful接口:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-10 11:08
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-10
+ * 作者:generator
+ * 参考:
+ * 描述:WmshInboundResult RESTful接口
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+@RestController
+@RequestMapping("/${api.version}/wmshinboundresults")
+public class WmshInboundResultController extends BaseRESTfulController {
+
+    @Autowired
+    WmshInboundResultServiceImpl wmshInboundResultService;
+
+    @Autowired
+    WmshGridMaterialServiceImpl wmshGridMaterialService;
+
+    @Autowired
+    ColumnDataUtil columnDataUtil;
+
+    @ApiOperation(value="新增港存库入库实绩")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "wmshInboundResult", value = "入库实绩", required = false, dataType = "WmshInboundResult"),
+    })
+    @PostMapping("/addWarehousingResult")
+    public RESTfulResult addWarehousingResult(@RequestBody(required = false) WmshInboundResult wmshInboundResult){
+        int i1 = wmshInboundResultService.addWarehousingResult(wmshInboundResult);
+        BigDecimal batchId = wmshInboundResult.getBatchId();
+        BigDecimal portId = wmshInboundResult.getPortId();
+        BigDecimal resultMaterialNumber = wmshInboundResult.getResultMaterialNumber();
+        BigDecimal status = new BigDecimal(1);
+        Map<String,Object> map = new HashMap<>();
+        map.put("batchId",batchId);
+        map.put("portId",portId);
+        map.put("resultTonnage",resultMaterialNumber);
+        map.put("status",status);
+        int i2 = wmshGridMaterialService.updatePortStock(map);
+        return success(i1 + i2);
+    }
+
+    @ApiOperation(value="查询所有港存库入库实绩")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
+            @ApiImplicitParam(name = "apiId(157)", value = "动态表头", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"),
+    })
+    @PostMapping("/getAllResult")
+    public RESTfulResult getAllResult(@RequestBody(required=false) Map<String,Object> mapValue,
+                                      Integer apiId,
+                                      Integer pageNum,
+                                      Integer pageSize
+    ){
+        //不分页筛选数据
+        List<Map<String, Object>> allResult = wmshInboundResultService.getAllResult(mapValue);
+        PageHelper.startPage(pageNum,pageSize);
+        //分页数据
+        List<Map<String, Object>> result = wmshInboundResultService.getAllResult(mapValue);
+        PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allResult,result);
+        return success(pageList);
+    }
+
+    @ApiOperation(value="通过实绩Id查询实绩")
+    @PostMapping("/getResultById/{resultId}")
+    public RESTfulResult getResultById(@PathVariable("resultId") Integer resultId){
+        List<Map<String, Object>> resultById = wmshInboundResultService.getResultById(resultId);
+        return success(resultById);
+    }
+
+    @ApiOperation(value="修改港存库入库实绩")
+    @PostMapping("/updateWareHosingResult")
+    public RESTfulResult updateWareHosingResult(@RequestBody(required = false) WmshInboundResult wmshInboundResult){
+        int i = wmshInboundResultService.updateWareHosingResult(wmshInboundResult);
+        return success(i);
+    }
+
+    @ApiOperation(value="逻辑删除港存库入库实绩")
+    @PostMapping("/deleteWareHosingResult/{resultId}")
+    public RESTfulResult deleteWareHosingResult(@PathVariable("resultId")Integer resultId){
+        int i = wmshInboundResultService.deleteWareHosingResult(resultId);
+        return success(i);
+    }
+}

+ 80 - 0
src/main/java/com/steerinfo/dil/controller/WmshOutboundResultController.java

@@ -0,0 +1,80 @@
+package com.steerinfo.dil.controller;
+
+import com.steerinfo.dil.service.IWmshOutboundResultService;
+import com.steerinfo.dil.service.impl.WmshGridMaterialServiceImpl;
+import com.steerinfo.dil.util.BaseRESTfulController;
+import com.steerinfo.dil.util.ColumnDataUtil;
+import com.steerinfo.dil.util.PageListAdd;
+import com.steerinfo.framework.controller.RESTfulResult;
+import com.steerinfo.framework.service.pagehelper.PageHelper;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * WmshOutboundResult RESTful接口:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-10 03:14
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-10
+ * 作者:generator
+ * 参考:
+ * 描述:WmshOutboundResult RESTful接口
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+@RestController
+@RequestMapping("/${api.version}/wmshoutboundresults")
+public class WmshOutboundResultController extends BaseRESTfulController {
+
+    @Autowired
+    IWmshOutboundResultService wmshOutboundResultService;
+
+    @Autowired
+    WmshGridMaterialServiceImpl wmshGridMaterialService;
+
+    @Autowired
+    ColumnDataUtil columnDataUtil;
+
+    @ApiOperation(value="查询所有港存库出库实绩")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
+            @ApiImplicitParam(name = "apiId(159)", value = "动态表头", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"),
+    })
+    @PostMapping("/getAllResult")
+    public RESTfulResult getAllResult(@RequestBody(required=false) Map<String,Object> mapValue,
+                                      Integer apiId,
+                                      Integer pageNum,
+                                      Integer pageSize
+    ){
+        //不分页筛选数据
+        List<Map<String, Object>> allResult = wmshOutboundResultService.getAllResult(mapValue);
+        PageHelper.startPage(pageNum,pageSize);
+        //分页数据
+        List<Map<String, Object>> result = wmshOutboundResultService.getAllResult(mapValue);
+        PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allResult,result);
+        return success(pageList);
+    }
+
+    @ApiOperation(value="添加港存库出库实绩")
+    @PostMapping("/addResult")
+    public RESTfulResult addResult(@RequestBody(required = false) Map<String, Object> map){
+        int i = wmshOutboundResultService.addResult(map);
+        map.put("status",new BigDecimal(0));
+        wmshGridMaterialService.updatePortStock(map);
+        return success(i);
+    }
+}

+ 19 - 0
src/main/java/com/steerinfo/dil/feign/ColumnDataFeign.java

@@ -0,0 +1,19 @@
+package com.steerinfo.dil.feign;
+
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author zhangnan
+ * @Date 2021/6/23 9:58
+ * @Version 1.0
+ */
+@FeignClient(value = "DIL-COLUMN-DATA-DEV",url = "192.168.0.102:8083")
+public interface ColumnDataFeign {
+    @RequestMapping("getColumnData")
+    List<Map<String,Object>> getColumnData(@RequestParam("apiId") Integer apiId);
+}

+ 22 - 0
src/main/java/com/steerinfo/dil/feign/WMSFeign.java

@@ -0,0 +1,22 @@
+package com.steerinfo.dil.feign;
+
+import com.steerinfo.framework.controller.RESTfulResult;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Map;
+
+/**
+ * @author luobang
+ * @create 2021-09-17 14:13
+ */
+@FeignClient(value = "DAL-DAZHOU-WMS-DEV",url = "192.168.1.241:8081")
+public interface WMSFeign {
+    @RequestMapping(value = "/api/v1/wms/inboundResult/getWmsInboundResult",method = RequestMethod.POST)
+    RESTfulResult getWmsInboundResult(@RequestBody(required = false) Map<String, Object> mapValue,
+                                      @RequestParam Integer apiId,
+                                      @RequestParam Integer pageNum,
+                                      @RequestParam Integer pageSize);
+
+
+}

+ 26 - 0
src/main/java/com/steerinfo/dil/interceptors/MyLocaleChangeInterceptor.java

@@ -0,0 +1,26 @@
+package com.steerinfo.dil.interceptors;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.support.ReloadableResourceBundleMessageSource;
+import org.springframework.web.servlet.i18n.LocaleChangeInterceptor;
+import org.springframework.web.servlet.i18n.SessionLocaleResolver;
+
+import java.util.Locale;
+
+/**
+ * @Author zhangnan
+ * @Date 2021/4/23 8:19
+ * @Version 1.0
+ */
+
+@Configuration
+public class MyLocaleChangeInterceptor {
+
+    //国际化配置
+    @Bean
+    public LocaleChangeInterceptor localeChangeInterceptor(){
+        return new LocaleChangeInterceptor();
+    }
+
+}

+ 47 - 0
src/main/java/com/steerinfo/dil/mapper/WmshGridMaterialMapper.java

@@ -0,0 +1,47 @@
+package com.steerinfo.dil.mapper;
+
+import com.steerinfo.dil.model.WmshGridMaterial;
+import com.steerinfo.framework.mapper.IBaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+@Mapper
+public interface WmshGridMaterialMapper extends IBaseMapper<WmshGridMaterial, BigDecimal> {
+
+    /**
+     * 展示下游港口库存
+     * @param mapVal
+     * @return
+     */
+    List<Map<String,Object>> getUnloadPortStockList(Map<String, Object> mapVal);
+
+    /**
+     * 展示万州港库存
+     * @param mapVal
+     * @return
+     */
+    List<Map<String,Object>> getLoadPortStockList(Map<String, Object> mapVal);
+
+    /**
+     * 修改实时库存
+     * @param wmshGridMaterial
+     * @return
+     */
+    int updateByPrimaryKeySelective(WmshGridMaterial wmshGridMaterial);
+
+    /**
+     * 新增实时库存
+     * @param wmshGridMaterial
+     * @return
+     */
+    int insertSelective(WmshGridMaterial wmshGridMaterial);
+
+    @Select("select seq_wmsh_grid_material.nextval from dual")
+    BigDecimal selectMaxId();
+
+    List<WmshGridMaterial> selectByParameters(Map<String, Object> selectMap);
+}

+ 23 - 0
src/main/java/com/steerinfo/dil/mapper/WmshInboundResultMapper.java

@@ -0,0 +1,23 @@
+package com.steerinfo.dil.mapper;
+
+import com.steerinfo.dil.model.WmshInboundResult;
+import com.steerinfo.framework.mapper.IBaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+@Mapper
+public interface WmshInboundResultMapper extends IBaseMapper<WmshInboundResult, BigDecimal> {
+    //查询最大序列号用于主键
+    @Select("select seq_wmsh_in.nextval  from dual")
+    Integer getResultId();
+
+    //查询港存库入库实绩
+    List<Map<String, Object>> getAllResult(Map<String, Object> map);
+
+    //通过Id查询港存库入库 用于修改
+    List<Map<String, Object>> getResultById(Integer resultId);
+}

+ 21 - 0
src/main/java/com/steerinfo/dil/mapper/WmshOutboundResultMapper.java

@@ -0,0 +1,21 @@
+package com.steerinfo.dil.mapper;
+
+import com.steerinfo.dil.model.WmshOutboundResult;
+import com.steerinfo.framework.mapper.IBaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+@Mapper
+public interface WmshOutboundResultMapper extends IBaseMapper<WmshOutboundResult, BigDecimal> {
+    //查询最大序列号用于主键
+    @Select("select seq_wmsh_out.nextval from dual")
+    Integer getResultId();
+
+    //查询所有的出库实绩
+    List<Map<String, Object>> getAllResult(Map<String, Object> map);
+
+}

+ 184 - 0
src/main/java/com/steerinfo/dil/model/WmshGridMaterial.java

@@ -0,0 +1,184 @@
+package com.steerinfo.dil.model;
+
+import com.steerinfo.framework.model.IBasePO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@ApiModel(value="原料港存库实时库存")
+public class WmshGridMaterial implements IBasePO<BigDecimal> {
+    /**
+     * 主键ID(GM_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="主键ID",required=true)
+    private BigDecimal gmId;
+
+    /**
+     * 港口ID(PORT_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="港口ID",required=false)
+    private BigDecimal portId;
+
+    /**
+     * 批次ID(BATCH_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="批次ID",required=false)
+    private BigDecimal batchId;
+
+    /**
+     * 物资吨位(GM_TONNAGE,DECIMAL,0)
+     */
+    @ApiModelProperty(value="物资吨位",required=false)
+    private BigDecimal gmTonnage;
+
+    /**
+     * 记录创建人(INSERT_USERNAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="记录创建人",required=false)
+    private String insertUsername;
+
+    /**
+     * 记录创建时间(INSERT_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="记录创建时间",required=false)
+    private Date insertTime;
+
+    /**
+     * 记录修改人(UPDATE_USERNAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="记录修改人",required=false)
+    private String updateUsername;
+
+    /**
+     * 记录修改时间(UPDATE_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="记录修改时间",required=false)
+    private Date updateTime;
+
+    /**
+     * 记录创建或修改备注(INSERT_UPDATE_REMARK,VARCHAR,100)
+     */
+    @ApiModelProperty(value="记录创建或修改备注",required=false)
+    private String insertUpdateRemark;
+
+    /**
+     * 逻辑删除0 没删除 1删除(DELETED,DECIMAL,38)
+     */
+    @ApiModelProperty(value="逻辑删除0 没删除 1删除",required=false)
+    private BigDecimal deleted;
+
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public BigDecimal getId() {
+        return this.gmId;
+    }
+
+    @Override
+    public void setId(BigDecimal gmId) {
+        this.gmId = gmId;
+    }
+
+    public BigDecimal getGmId() {
+        return gmId;
+    }
+
+    public void setGmId(BigDecimal gmId) {
+        this.gmId = gmId;
+    }
+
+    public BigDecimal getPortId() {
+        return portId;
+    }
+
+    public void setPortId(BigDecimal portId) {
+        this.portId = portId;
+    }
+
+    public BigDecimal getBatchId() {
+        return batchId;
+    }
+
+    public void setBatchId(BigDecimal batchId) {
+        this.batchId = batchId;
+    }
+
+    public BigDecimal getGmTonnage() {
+        return gmTonnage;
+    }
+
+    public void setGmTonnage(BigDecimal gmTonnage) {
+        this.gmTonnage = gmTonnage;
+    }
+
+    public String getInsertUsername() {
+        return insertUsername;
+    }
+
+    public void setInsertUsername(String insertUsername) {
+        this.insertUsername = insertUsername == null ? null : insertUsername.trim();
+    }
+
+    public Date getInsertTime() {
+        return insertTime;
+    }
+
+    public void setInsertTime(Date insertTime) {
+        this.insertTime = insertTime;
+    }
+
+    public String getUpdateUsername() {
+        return updateUsername;
+    }
+
+    public void setUpdateUsername(String updateUsername) {
+        this.updateUsername = updateUsername == null ? null : updateUsername.trim();
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public String getInsertUpdateRemark() {
+        return insertUpdateRemark;
+    }
+
+    public void setInsertUpdateRemark(String insertUpdateRemark) {
+        this.insertUpdateRemark = insertUpdateRemark == null ? null : insertUpdateRemark.trim();
+    }
+
+    public BigDecimal getDeleted() {
+        return deleted;
+    }
+
+    public void setDeleted(BigDecimal deleted) {
+        this.deleted = deleted;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", gmId=").append(gmId);
+        sb.append(", portId=").append(portId);
+        sb.append(", batchId=").append(batchId);
+        sb.append(", gmTonnage=").append(gmTonnage);
+        sb.append(", insertUsername=").append(insertUsername);
+        sb.append(", insertTime=").append(insertTime);
+        sb.append(", updateUsername=").append(updateUsername);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append(", insertUpdateRemark=").append(insertUpdateRemark);
+        sb.append(", deleted=").append(deleted);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 199 - 0
src/main/java/com/steerinfo/dil/model/WmshInboundResult.java

@@ -0,0 +1,199 @@
+package com.steerinfo.dil.model;
+
+import com.steerinfo.framework.model.IBasePO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@ApiModel(value="原料港存库入库作业")
+public class WmshInboundResult implements IBasePO<BigDecimal> {
+    /**
+     * 主键ID(RESULT_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="主键ID",required=true)
+    private BigDecimal resultId;
+
+    /**
+     * 入库单编号(RESULT_NUMBER,VARCHAR,20)
+     */
+    @ApiModelProperty(value="入库单编号",required=false)
+    private String resultNumber;
+
+    /**
+     * 港口ID(PORT_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="港口ID",required=false)
+    private BigDecimal portId;
+
+    /**
+     * 入库物资吨位(RESULT_MATERIAL_NUMBER,DECIMAL,0)
+     */
+    @ApiModelProperty(value="入库物资吨位",required=false)
+    private BigDecimal resultMaterialNumber;
+
+    /**
+     * 记录创建人(INSERT_USERNAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="记录创建人",required=false)
+    private String insertUsername;
+
+    /**
+     * 记录创建时间(INSERT_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="记录创建时间",required=false)
+    private Date insertTime;
+
+    /**
+     * 记录修改人(UPDATE_USERNAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="记录修改人",required=false)
+    private String updateUsername;
+
+    /**
+     * 记录修改时间(UPDATE_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="记录修改时间",required=false)
+    private Date updateTime;
+
+    /**
+     * 记录创建或修改备注(INSERT_UPDATE_REMARK,VARCHAR,100)
+     */
+    @ApiModelProperty(value="记录创建或修改备注",required=false)
+    private String insertUpdateRemark;
+
+    /**
+     * 批次ID(BATCH_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="批次ID",required=false)
+    private BigDecimal batchId;
+
+    /**
+     * 逻辑删除:0:正常 1:删除(DELETED,DECIMAL,0)
+     */
+    @ApiModelProperty(value="逻辑删除:0:正常 1:删除",required=false)
+    private BigDecimal deleted;
+
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public BigDecimal getId() {
+        return this.resultId;
+    }
+
+    @Override
+    public void setId(BigDecimal resultId) {
+        this.resultId = resultId;
+    }
+
+    public BigDecimal getResultId() {
+        return resultId;
+    }
+
+    public void setResultId(BigDecimal resultId) {
+        this.resultId = resultId;
+    }
+
+    public String getResultNumber() {
+        return resultNumber;
+    }
+
+    public void setResultNumber(String resultNumber) {
+        this.resultNumber = resultNumber == null ? null : resultNumber.trim();
+    }
+
+    public BigDecimal getPortId() {
+        return portId;
+    }
+
+    public void setPortId(BigDecimal portId) {
+        this.portId = portId;
+    }
+
+    public BigDecimal getResultMaterialNumber() {
+        return resultMaterialNumber;
+    }
+
+    public void setResultMaterialNumber(BigDecimal resultMaterialNumber) {
+        this.resultMaterialNumber = resultMaterialNumber;
+    }
+
+    public String getInsertUsername() {
+        return insertUsername;
+    }
+
+    public void setInsertUsername(String insertUsername) {
+        this.insertUsername = insertUsername == null ? null : insertUsername.trim();
+    }
+
+    public Date getInsertTime() {
+        return insertTime;
+    }
+
+    public void setInsertTime(Date insertTime) {
+        this.insertTime = insertTime;
+    }
+
+    public String getUpdateUsername() {
+        return updateUsername;
+    }
+
+    public void setUpdateUsername(String updateUsername) {
+        this.updateUsername = updateUsername == null ? null : updateUsername.trim();
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public String getInsertUpdateRemark() {
+        return insertUpdateRemark;
+    }
+
+    public void setInsertUpdateRemark(String insertUpdateRemark) {
+        this.insertUpdateRemark = insertUpdateRemark == null ? null : insertUpdateRemark.trim();
+    }
+
+    public BigDecimal getBatchId() {
+        return batchId;
+    }
+
+    public void setBatchId(BigDecimal batchId) {
+        this.batchId = batchId;
+    }
+
+    public BigDecimal getDeleted() {
+        return deleted;
+    }
+
+    public void setDeleted(BigDecimal deleted) {
+        this.deleted = deleted;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", resultId=").append(resultId);
+        sb.append(", resultNumber=").append(resultNumber);
+        sb.append(", portId=").append(portId);
+        sb.append(", resultMaterialNumber=").append(resultMaterialNumber);
+        sb.append(", insertUsername=").append(insertUsername);
+        sb.append(", insertTime=").append(insertTime);
+        sb.append(", updateUsername=").append(updateUsername);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append(", insertUpdateRemark=").append(insertUpdateRemark);
+        sb.append(", batchId=").append(batchId);
+        sb.append(", deleted=").append(deleted);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 199 - 0
src/main/java/com/steerinfo/dil/model/WmshOutboundResult.java

@@ -0,0 +1,199 @@
+package com.steerinfo.dil.model;
+
+import com.steerinfo.framework.model.IBasePO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@ApiModel(value="原料港存库出库作业")
+public class WmshOutboundResult implements IBasePO<BigDecimal> {
+    /**
+     * 主键ID(RESULT_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="主键ID",required=true)
+    private BigDecimal resultId;
+
+    /**
+     * 出库单编号(RESULT_NUMBER,VARCHAR,20)
+     */
+    @ApiModelProperty(value="出库单编号",required=false)
+    private String resultNumber;
+
+    /**
+     * 港口ID(HARBOR_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="港口ID",required=false)
+    private BigDecimal harborId;
+
+    /**
+     * 出库物资吨位(RESULT_TONNAGE,DECIMAL,0)
+     */
+    @ApiModelProperty(value="出库物资吨位",required=false)
+    private BigDecimal resultTonnage;
+
+    /**
+     * 是否清场(清场;未清场)(RESULT_CLEARING,VARCHAR,20)
+     */
+    @ApiModelProperty(value="是否清场(清场;未清场)",required=false)
+    private String resultClearing;
+
+    /**
+     * 记录创建人(INSERT_USERNAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="记录创建人",required=false)
+    private String insertUsername;
+
+    /**
+     * 记录创建时间(INSERT_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="记录创建时间",required=false)
+    private Date insertTime;
+
+    /**
+     * 记录修改人(UPDATE_USERNAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="记录修改人",required=false)
+    private String updateUsername;
+
+    /**
+     * 记录修改时间(UPDATE_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="记录修改时间",required=false)
+    private Date updateTime;
+
+    /**
+     * 记录创建或修改备注(INSERT_UPDATE_REMARK,VARCHAR,100)
+     */
+    @ApiModelProperty(value="记录创建或修改备注",required=false)
+    private String insertUpdateRemark;
+
+    /**
+     * 批次ID(BATCH_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="批次ID",required=false)
+    private BigDecimal batchId;
+
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public BigDecimal getId() {
+        return this.resultId;
+    }
+
+    @Override
+    public void setId(BigDecimal resultId) {
+        this.resultId = resultId;
+    }
+
+    public BigDecimal getResultId() {
+        return resultId;
+    }
+
+    public void setResultId(BigDecimal resultId) {
+        this.resultId = resultId;
+    }
+
+    public String getResultNumber() {
+        return resultNumber;
+    }
+
+    public void setResultNumber(String resultNumber) {
+        this.resultNumber = resultNumber == null ? null : resultNumber.trim();
+    }
+
+    public BigDecimal getHarborId() {
+        return harborId;
+    }
+
+    public void setHarborId(BigDecimal harborId) {
+        this.harborId = harborId;
+    }
+
+    public BigDecimal getResultTonnage() {
+        return resultTonnage;
+    }
+
+    public void setResultTonnage(BigDecimal resultTonnage) {
+        this.resultTonnage = resultTonnage;
+    }
+
+    public String getResultClearing() {
+        return resultClearing;
+    }
+
+    public void setResultClearing(String resultClearing) {
+        this.resultClearing = resultClearing == null ? null : resultClearing.trim();
+    }
+
+    public String getInsertUsername() {
+        return insertUsername;
+    }
+
+    public void setInsertUsername(String insertUsername) {
+        this.insertUsername = insertUsername == null ? null : insertUsername.trim();
+    }
+
+    public Date getInsertTime() {
+        return insertTime;
+    }
+
+    public void setInsertTime(Date insertTime) {
+        this.insertTime = insertTime;
+    }
+
+    public String getUpdateUsername() {
+        return updateUsername;
+    }
+
+    public void setUpdateUsername(String updateUsername) {
+        this.updateUsername = updateUsername == null ? null : updateUsername.trim();
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public String getInsertUpdateRemark() {
+        return insertUpdateRemark;
+    }
+
+    public void setInsertUpdateRemark(String insertUpdateRemark) {
+        this.insertUpdateRemark = insertUpdateRemark == null ? null : insertUpdateRemark.trim();
+    }
+
+    public BigDecimal getBatchId() {
+        return batchId;
+    }
+
+    public void setBatchId(BigDecimal batchId) {
+        this.batchId = batchId;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", resultId=").append(resultId);
+        sb.append(", resultNumber=").append(resultNumber);
+        sb.append(", harborId=").append(harborId);
+        sb.append(", resultTonnage=").append(resultTonnage);
+        sb.append(", resultClearing=").append(resultClearing);
+        sb.append(", insertUsername=").append(insertUsername);
+        sb.append(", insertTime=").append(insertTime);
+        sb.append(", updateUsername=").append(updateUsername);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append(", insertUpdateRemark=").append(insertUpdateRemark);
+        sb.append(", batchId=").append(batchId);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 42 - 0
src/main/java/com/steerinfo/dil/service/IWmshGridMaterialService.java

@@ -0,0 +1,42 @@
+package com.steerinfo.dil.service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * WmshGridMaterial服务接口:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-09 07:25
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-09
+ * 作者:generator
+ * 参考:
+ * 描述:WmshGridMaterial服务接口
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+public interface IWmshGridMaterialService {
+
+    /**
+     * 展示下游港口库存
+     * @param mapVal
+     * @return
+     */
+    List<Map<String,Object>> getUnloadPortStockList(Map<String, Object> mapVal);
+
+    /**
+     * 展示万州港库存
+     * @param mapVal
+     * @return
+     */
+    List<Map<String,Object>> getLoadPortStockList(Map<String, Object> mapVal);
+
+    /**
+     * 修改实时库存
+     * @param map
+     * @return
+     */
+    int updatePortStock(Map<String, Object> map);
+
+}

+ 37 - 0
src/main/java/com/steerinfo/dil/service/IWmshInboundResultService.java

@@ -0,0 +1,37 @@
+package com.steerinfo.dil.service;
+
+import com.steerinfo.dil.model.WmshInboundResult;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * WmshInboundResult服务接口:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-10 11:08
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-10
+ * 作者:generator
+ * 参考:
+ * 描述:WmshInboundResult服务接口
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+public interface IWmshInboundResultService{
+
+    //添加入库实绩
+    int addWarehousingResult(WmshInboundResult wmshInboundResult);
+
+    //查询港存库入库实绩
+    List<Map<String, Object>> getAllResult(Map<String, Object> map);
+
+    //通过Id查询港存库入库 用于修改
+    List<Map<String, Object>> getResultById(Integer resultId);
+
+    //修改港存库入库实绩
+    int updateWareHosingResult(WmshInboundResult wmshInboundResult);
+
+    //逻辑删除港存库入库实绩
+    int deleteWareHosingResult(Integer ResultId);
+}

+ 25 - 0
src/main/java/com/steerinfo/dil/service/IWmshOutboundResultService.java

@@ -0,0 +1,25 @@
+package com.steerinfo.dil.service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * WmshOutboundResult服务接口:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-10 03:14
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-10
+ * 作者:generator
+ * 参考:
+ * 描述:WmshOutboundResult服务接口
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+public interface IWmshOutboundResultService{
+    //查询所有的出库实绩
+    List<Map<String, Object>> getAllResult(Map<String, Object> map);
+
+    //新增出库实绩
+    int addResult(Map<String, Object> map);
+}

+ 92 - 0
src/main/java/com/steerinfo/dil/service/impl/WmshGridMaterialServiceImpl.java

@@ -0,0 +1,92 @@
+package com.steerinfo.dil.service.impl;
+
+import com.steerinfo.dil.mapper.WmshGridMaterialMapper;
+import com.steerinfo.dil.model.WmshGridMaterial;
+import com.steerinfo.dil.service.IWmshGridMaterialService;
+import com.steerinfo.dil.util.DataChange;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * WmshGridMaterial服务实现:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-09 07:25
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-09
+ * 作者:generator
+ * 参考:
+ * 描述:WmshGridMaterial服务实现
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+@Service(value = "wmshGridMaterialService")
+public class WmshGridMaterialServiceImpl implements IWmshGridMaterialService {
+
+    @Autowired
+    private WmshGridMaterialMapper wmshGridMaterialMapper;
+
+    /**
+     * 展示下游港口实时库存
+     * @param mapVal
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getUnloadPortStockList(Map<String, Object> mapVal) {
+        return wmshGridMaterialMapper.getUnloadPortStockList(mapVal);
+    }
+
+    /**
+     * 展示万州港实时库存
+     * @param mapVal
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getLoadPortStockList(Map<String, Object> mapVal) {
+        return wmshGridMaterialMapper.getLoadPortStockList(mapVal);
+    }
+
+    /**
+     * 修改实时库存
+     * @param map
+     * @return
+     */
+    @Override
+    public int updatePortStock(Map<String,Object> map) {
+        BigDecimal portId = DataChange.dataToBigDecimal(map.get("portId"));
+        BigDecimal batchId = DataChange.dataToBigDecimal(map.get("batchId"));
+        BigDecimal tonnage = DataChange.dataToBigDecimal(map.get("resultTonnage"));
+        BigDecimal status = DataChange.dataToBigDecimal(map.get("status"));
+        Map<String,Object> selectMap = new HashMap<>();
+        selectMap.put("portId",portId);
+        selectMap.put("batchId",batchId);
+        List<WmshGridMaterial> wmshGridMaterials = wmshGridMaterialMapper.selectByParameters(selectMap);
+        if (wmshGridMaterials.size() == 0) {
+            WmshGridMaterial wmshGridMaterial = new WmshGridMaterial();
+            BigDecimal gmId = wmshGridMaterialMapper.selectMaxId();
+            wmshGridMaterial.setGmId(gmId);
+            wmshGridMaterial.setBatchId(batchId);
+            wmshGridMaterial.setPortId(portId);
+            wmshGridMaterial.setGmTonnage(tonnage);
+            wmshGridMaterial.setDeleted(new BigDecimal(0));
+            return wmshGridMaterialMapper.insertSelective(wmshGridMaterial);
+        }
+        WmshGridMaterial wmshGridMaterial = wmshGridMaterials.get(0);
+        BigDecimal oldGmsTonnage = wmshGridMaterial.getGmTonnage();
+        BigDecimal gmsTonnage;
+        if (status.intValue() == 0) {
+            gmsTonnage = new BigDecimal(oldGmsTonnage.doubleValue() - tonnage.doubleValue());
+        }
+        else {
+            gmsTonnage = new BigDecimal(tonnage.doubleValue() + oldGmsTonnage.doubleValue());
+        }
+        wmshGridMaterial.setGmTonnage(gmsTonnage);
+        return wmshGridMaterialMapper.updateByPrimaryKeySelective(wmshGridMaterial);
+    }
+
+}

+ 101 - 0
src/main/java/com/steerinfo/dil/service/impl/WmshInboundResultServiceImpl.java

@@ -0,0 +1,101 @@
+package com.steerinfo.dil.service.impl;
+
+import com.steerinfo.dil.mapper.WmshInboundResultMapper;
+import com.steerinfo.dil.model.WmshInboundResult;
+import com.steerinfo.dil.service.IWmshInboundResultService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * WmshInboundResult服务实现:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-10 11:08
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-10
+ * 作者:generator
+ * 参考:
+ * 描述:WmshInboundResult服务实现
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+@Service
+//        (value = "wmshInboundResultService")
+public class WmshInboundResultServiceImpl implements IWmshInboundResultService {
+
+    @Autowired
+    private WmshInboundResultMapper wmshInboundResultMapper;
+
+    /**
+     * 添加港存库 入库实绩
+     * @param wmshInboundResult
+     * @return
+     */
+    @Override
+    public int addWarehousingResult(WmshInboundResult wmshInboundResult) {
+        //获取主键
+        Integer id = wmshInboundResultMapper.getResultId();
+        wmshInboundResult.setResultId(new BigDecimal(id));
+        //生成入库编号
+        StringBuilder sb = new StringBuilder("GRKD");
+        sb.append(id < 10 ? "0000000" + id : id < 100 ? "000000" + id : id < 1000 ? "00000" + id : id < 10000 ?
+                "0000" + id : id < 100000 ? "000" + id : id < 1000000 ? "00" + id : id < 10000000 ? "0" + id : id.toString());
+        wmshInboundResult.setResultNumber(sb.toString());
+        //生成入库日期 与 操作人员
+        wmshInboundResult.setInsertTime(new Date());
+        wmshInboundResult.setInsertUsername("admin");
+        wmshInboundResult.setDeleted(new BigDecimal(0)); //状态 0 正常
+        int i = wmshInboundResultMapper.insertSelective(wmshInboundResult);
+        return i;
+    }
+
+    /**
+     * 查询所有港存库入库实绩
+     * @param map
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getAllResult(Map<String, Object> map) {
+        return wmshInboundResultMapper.getAllResult(map);
+    }
+
+    /**
+     * 通过Id查询实绩
+     * @param resultId
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getResultById(Integer resultId) {
+        return wmshInboundResultMapper.getResultById(resultId);
+    }
+
+    /**
+     * 修改港存库入库实绩
+     * @param wmshInboundResult
+     * @return
+     */
+    @Override
+    public int updateWareHosingResult(WmshInboundResult wmshInboundResult) {
+        return wmshInboundResultMapper.updateByPrimaryKeySelective(wmshInboundResult);
+    }
+
+    /**
+     * 逻辑删除港存库入库实绩
+     * @param ResultId
+     * @return
+     */
+    @Override
+    public int deleteWareHosingResult(Integer ResultId) {
+        WmshInboundResult wmshInboundResult = new WmshInboundResult();
+        wmshInboundResult.setResultId(new BigDecimal(ResultId));
+        wmshInboundResult.setDeleted(new BigDecimal(1));
+        return wmshInboundResultMapper.updateByPrimaryKeySelective(wmshInboundResult);
+    }
+
+
+}

+ 74 - 0
src/main/java/com/steerinfo/dil/service/impl/WmshOutboundResultServiceImpl.java

@@ -0,0 +1,74 @@
+package com.steerinfo.dil.service.impl;
+
+import com.steerinfo.dil.mapper.WmshOutboundResultMapper;
+import com.steerinfo.dil.model.WmshOutboundResult;
+import com.steerinfo.dil.service.IWmshOutboundResultService;
+import com.steerinfo.dil.util.DataChange;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * WmshOutboundResult服务实现:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-10 03:14
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-10
+ * 作者:generator
+ * 参考:
+ * 描述:WmshOutboundResult服务实现
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+@Service(value = "wmshOutboundResultService")
+public class WmshOutboundResultServiceImpl implements IWmshOutboundResultService {
+
+    @Autowired
+    private WmshOutboundResultMapper wmshOutboundResultMapper;
+
+    /**
+     * 查询所有的出库实绩
+     * @param map
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getAllResult(Map<String, Object> map) {
+        return wmshOutboundResultMapper.getAllResult(map);
+    }
+
+    /**
+     * 新增出库实绩
+     *  resultTonnage 出库物资吨位
+     *  batchId 批次ID
+     *  portId 港口ID
+     *  isClean 是否清场
+     * @param map
+     * @return
+     */
+    @Override
+    public int addResult(Map<String, Object> map) {
+        WmshOutboundResult wmshOutboundResult = new WmshOutboundResult();
+        //获取主键
+        Integer id = wmshOutboundResultMapper.getResultId();
+        wmshOutboundResult.setResultId(new BigDecimal(id));
+        //生成出库编号
+        StringBuilder sb = new StringBuilder("GCKD");
+        sb.append(id < 10 ? "0000000" + id : id < 100 ? "000000" + id : id < 1000 ? "00000" + id : id < 10000 ?
+                "0000" + id : id < 100000 ? "000" + id : id < 1000000 ? "00" + id : id < 10000000 ? "0" + id : id.toString());
+        wmshOutboundResult.setResultNumber(sb.toString());
+        //添加出库物资吨位、批次ID
+        wmshOutboundResult.setResultTonnage(DataChange.dataToBigDecimal(map.get("resultTonnage")));
+        wmshOutboundResult.setBatchId(DataChange.dataToBigDecimal(map.get("batchId")));
+        //添加港口ID、是否清场、出库时间
+        wmshOutboundResult.setHarborId(DataChange.dataToBigDecimal(map.get("portId")));
+        wmshOutboundResult.setResultClearing((String)(map.get("isClean")));
+        wmshOutboundResult.setInsertTime(new Date());
+        int i = wmshOutboundResultMapper.insertSelective(wmshOutboundResult);
+        return i;
+    }
+}

+ 70 - 0
src/main/java/com/steerinfo/dil/util/BaseRESTfulController.java

@@ -0,0 +1,70 @@
+package com.steerinfo.dil.util;
+
+import com.steerinfo.framework.controller.BaseController;
+import com.steerinfo.framework.controller.RESTfulResult;
+
+/**
+ * @Author zhangnan
+ * @Date 2021/7/8 11:33
+ * @Version 1.0
+ */
+public class BaseRESTfulController extends BaseController {
+    public BaseRESTfulController() {
+    }
+
+    protected RESTfulResult success() {
+        RESTfulResult result = new RESTfulResult();
+        result.setSucceed();
+        result.setMessage(result.getResultMessage());
+        result.setData(true);
+        result.setCode("200");
+        return result;
+    }
+
+    protected RESTfulResult success(Object obj) {
+        RESTfulResult result = new RESTfulResult();
+        result.setSucceed();
+        result.setMessage(result.getResultMessage());
+        result.setData(obj);
+        result.setCode("200");
+        return result;
+    }
+
+    protected RESTfulResult success(Object obj, String msg) {
+        RESTfulResult result = this.success(obj);
+        result.setMessage(msg);
+        result.setCode("200");
+        return result;
+    }
+
+    protected RESTfulResult success(Object obj, String code, String msg) {
+        RESTfulResult result = this.success(obj, msg);
+        result.setCode(code);
+        result.setCode("200");
+        return result;
+    }
+
+    protected RESTfulResult failed() {
+        return this.failed((Object)null);
+    }
+
+    protected RESTfulResult failed(Object obj) {
+        RESTfulResult result = new RESTfulResult("201", (String)null);
+        result.setMessage(result.getResultMessage());
+        result.setData(obj);
+        return result;
+    }
+
+    protected RESTfulResult failed(Object obj, String msg) {
+        RESTfulResult result = new RESTfulResult("201", msg);
+        result.setData(obj);
+        return result;
+    }
+
+    protected RESTfulResult failed(Object obj, String code, String msg) {
+        RESTfulResult result = this.failed(obj, msg);
+        result = new RESTfulResult("201", msg);
+        result.setCode(code);
+        return result;
+    }
+}

+ 38 - 0
src/main/java/com/steerinfo/dil/util/ColumnDataUtil.java

@@ -0,0 +1,38 @@
+package com.steerinfo.dil.util;
+
+import com.steerinfo.dil.feign.ColumnDataFeign;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.*;
+
+@Component
+public class ColumnDataUtil {
+    @Autowired
+    ColumnDataFeign columnDataFeign;
+
+    private Set<Map<String, Object>> setListMap(List<Map<String, Object>> list, String name) {
+        Set<Map<String, Object>> setString = new HashSet<>();
+        for (Map<String, Object> map : list) {//遍历每条数据
+            Map<String, Object> map1 = new HashMap<>();
+            //map.get(name)获取每条数据中对应表头字段的数据
+            map1.put("text", map.get(name));
+            if (map.get(name) != null) {
+                map1.put("value", map.get(name));
+                setString.add(map1);
+            }
+        }
+        return setString;
+    }
+
+    public PageListAdd tableColumnData(Integer apiId, List<Map<String, Object>> list, List<Map<String,Object>> data) {
+        List<Map<String, Object>> columnDataList = columnDataFeign.getColumnData(apiId);
+        for (Map<String, Object> columnData : columnDataList) {
+            //每个表头字段的过滤条件
+            columnData.put("filters", setListMap(list, columnData.get("prop").toString()));
+        }
+        PageListAdd pageList = new PageListAdd(data);
+        pageList.setColumnData(columnDataList);
+        return pageList;
+    }
+}

+ 139 - 0
src/main/java/com/steerinfo/dil/util/DataChange.java

@@ -0,0 +1,139 @@
+package com.steerinfo.dil.util;
+
+import java.math.BigDecimal;
+import java.text.DecimalFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ author    :TXF
+ * @ time      :2021/8/25 11:25
+ */
+
+public class DataChange {
+
+
+    /**
+     * 解析前端传来的日期字符串
+     * @param vueDate
+     * @return
+     */
+    public static Date dataToDate(Object vueDate){
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        Date parseDate = null;
+        if (vueDate != null){
+            try {
+                String date = (String) vueDate;
+                parseDate = sdf.parse(date);
+            } catch (ParseException e) {
+                e.printStackTrace();
+            }
+        }
+        return parseDate;
+    }
+
+    /**
+     * 数据转换成BigDecimal
+     * @param data
+     * @return
+     */
+    public static BigDecimal dataToBigDecimal(Object data){
+        if (data != null){
+            if(data instanceof String){
+                String data1 = (String) data;
+                return new BigDecimal(data1);
+            }
+            if(data instanceof Double){
+                String data3 = data.toString();
+                return new BigDecimal(data3);
+            }
+            if(data instanceof Integer){
+                Integer data2 = (Integer) data;
+                return new BigDecimal(data2);
+            }
+            if(data instanceof BigDecimal){
+                return (BigDecimal) data;
+            }
+        }
+        return new BigDecimal(0);
+    }
+
+    /**
+     * 将时间截取到天  为字符串类型 用于前端只显示到天
+     * @param date 传入时间
+     * @return
+     */
+    public static String dateToDayDate(Object date){
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        Date changeDate = null;
+        try{
+             changeDate = (Date) date;
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return sdf.format(changeDate);
+    }
+
+    /**
+     * 遍历从数据库中传进来的数据
+     * @param list 从数据库查询出来的list数据列表
+     * @param key map中多个需要转换的date参数
+     */
+    public static void changeDateToDayDate(List<Map<String, Object>> list, String ...key){
+        //遍历List
+        for (Map<String, Object> map : list) {
+            for (String s : key) {
+                //从map中取 date的值 并转换成字符串类型的日期
+                String stringDate = dateToDayDate(map.get(s));
+                if(stringDate.length() == 0){
+                    break;
+                }else {
+                    //修改map中的值
+                    map.put(s, stringDate);
+                }
+            }
+        }
+    }
+
+    /**
+     * 遍历列表使只显示两位小数
+     * @param list
+     * @param key
+     */
+    public static void dataTo2Number(List<Map<String, Object>> list, String ...key){
+        //遍历List
+        for (Map<String, Object> map : list) {
+            for (String s : key) {
+                //修改数据为带两位小数
+                BigDecimal oldDate = (BigDecimal) map.get(s);
+                DecimalFormat df =  new DecimalFormat("0.00");
+                String resultDeduction = df.format(oldDate.doubleValue());
+                map.put(s, resultDeduction);
+            }
+        }
+    }
+
+    /**
+     * 计算相差时间  日时分秒
+     * @param
+     * @return
+     */
+    public static String calculatedTimeDifference(Date time1, Date time2){
+        long t1 = time1.getTime();
+        long t2 = time2.getTime();
+        if(t1 > t2){
+            long temp = t1;
+            t1 = t2;
+            t2 = temp;
+        }
+        long between = t2 - t1;
+        long day = between / (24 * 60 * 60 * 1000);
+        long hour = (between / (60 * 60 * 1000) - day * 24);
+        long min = ((between / (60 * 1000)) - day * 24 * 60 - hour * 60);
+        long s = (between / 1000 - day * 24 * 60 * 60 - hour * 60 * 60 - min * 60);
+        return day + "天"+  + hour+ "时" + min + "分"  + s + "秒";
+    }
+}

+ 33 - 0
src/main/java/com/steerinfo/dil/util/PageListAdd.java

@@ -0,0 +1,33 @@
+package com.steerinfo.dil.util;
+
+import com.steerinfo.framework.service.pagehelper.PageList;
+
+import java.util.List;
+
+/**
+ * @Author zhangnan
+ * @Date 2021/6/7 14:31
+ * @Version 1.0
+ */
+public class PageListAdd<T> extends PageList<T> {
+    public PageListAdd() {
+    }
+
+    public PageListAdd(List<T> list) {
+        super(list, 20);
+    }
+
+    public PageListAdd(List<T> list, int navigatePages) {
+        super(list, navigatePages);
+    }
+
+    private Object columnData;
+
+    public Object getColumnData() {
+        return columnData;
+    }
+
+    public void setColumnData(Object columnData) {
+        this.columnData = columnData;
+    }
+}

+ 11 - 0
src/main/java/com/steerinfo/dil/util/util.java

@@ -0,0 +1,11 @@
+package com.steerinfo.dil.util;
+
+/**
+ * @Author zhangnan
+ * @Date 2021/5/26 8:59
+ * @Version 1.0
+ * 工具类
+ */
+public class util {
+
+}

+ 9 - 0
src/main/resources/application-dev.yml

@@ -0,0 +1,9 @@
+spring:
+  datasource:
+    url: jdbc:oracle:thin:@192.168.1.51:1521:steerinfo
+    password: st#0901
+    username: DIL0901
+    driver-class-name: oracle.jdbc.OracleDriver
+  application:
+    name: dil-wmsh-api
+

+ 8 - 0
src/main/resources/application-prod.yml

@@ -0,0 +1,8 @@
+spring:
+  datasource:
+    url: jdbc:oracle:thin:@192.168.1.51:1521:steerinfo
+    password: st#0901
+    username: DIL0901
+    driver-class-name: oracle.jdbc.OracleDriver
+  application:
+    name: dil-wmsh-api

+ 0 - 0
src/main/resources/application.yml


+ 50 - 0
src/main/resources/bootstrap.yml

@@ -0,0 +1,50 @@
+api.version: api/v1/wmsh
+spring:
+  profiles:
+    include: ${SPRING_PROFILES:dev}
+  jackson:
+      date-format: yyyy-MM-dd HH:mm:ss
+      time-zone: GMT+8
+#    serialization: {WRITE_DATES_AS_TIMESTAMPS: true}
+  messages:
+    basename: message
+    encoding: UTF-8
+  mvc:
+    static-path-pattern:
+
+#eureka设置
+eureka:
+  client:
+    service-url:
+      defaultZone: http://root:root@discovery.steerinfo.com/eureka/
+
+genxml:
+  pth: com/a
+cache:
+  level: 2
+redis:
+  host: 10.10.50.28
+  port: 6379
+  pwd: 123456
+  project:
+    prefix: sysmanage
+  pool:
+    maxTotal: 8
+    maxWaitMillis: 1000
+    maxIdle: 8
+  cache:
+    time: 864000000
+  database: 0
+
+
+
+mybatis:
+  type-aliases-package: com.steerinfo.dil.model
+  mapper-locations: classpath:com/steerinfo/dil/mapper/*.xml
+  configuration:
+    #    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+    mapUnderscoreToCamelCase: true
+    call-setters-on-nulls: true
+
+server:
+  port: 8070

+ 443 - 0
src/main/resources/com/steerinfo/dil/mapper/WmshGridMaterialMapper.xml

@@ -0,0 +1,443 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.steerinfo.dil.mapper.WmshGridMaterialMapper">
+    <resultMap id="BaseResultMap" type="com.steerinfo.dil.model.WmshGridMaterial">
+        <id column="GM_ID" jdbcType="DECIMAL" property="gmId"/>
+        <result column="PORT_ID" jdbcType="DECIMAL" property="portId"/>
+        <result column="BATCH_ID" jdbcType="DECIMAL" property="batchId"/>
+        <result column="GM_TONNAGE" jdbcType="DECIMAL" property="gmTonnage"/>
+        <result column="INSERT_USERNAME" jdbcType="VARCHAR" property="insertUsername"/>
+        <result column="INSERT_TIME" jdbcType="TIMESTAMP" property="insertTime"/>
+        <result column="UPDATE_USERNAME" jdbcType="VARCHAR" property="updateUsername"/>
+        <result column="UPDATE_TIME" jdbcType="TIMESTAMP" property="updateTime"/>
+        <result column="INSERT_UPDATE_REMARK" jdbcType="VARCHAR" property="insertUpdateRemark"/>
+        <result column="DELETED" jdbcType="DECIMAL" property="deleted"/>
+    </resultMap>
+    <sql id="columns">
+        GM_ID, PORT_ID, BATCH_ID, GM_TONNAGE, INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME,
+    UPDATE_TIME, INSERT_UPDATE_REMARK, DELETED
+    </sql>
+    <sql id="columns_alias">
+        t.GM_ID, t.PORT_ID, t.BATCH_ID, t.GM_TONNAGE, t.INSERT_USERNAME, t.INSERT_TIME, t.UPDATE_USERNAME,
+    t.UPDATE_TIME, t.INSERT_UPDATE_REMARK, t.DELETED
+    </sql>
+    <sql id="select">
+        SELECT
+        <include refid="columns"/>
+        FROM WMSH_GRID_MATERIAL
+    </sql>
+    <sql id="select_alias">
+        SELECT
+        <include refid="columns_alias"/>
+        FROM WMSH_GRID_MATERIAL t
+    </sql>
+    <sql id="where">
+        <where>
+            <if test="gmId != null">
+                and GM_ID = #{gmId}
+            </if>
+            <if test="portId != null">
+                and PORT_ID = #{portId}
+            </if>
+            <if test="batchId != null">
+                and BATCH_ID = #{batchId}
+            </if>
+            <if test="gmTonnage != null">
+                and GM_TONNAGE = #{gmTonnage}
+            </if>
+            <if test="insertUsername != null and insertUsername != ''">
+                and INSERT_USERNAME = #{insertUsername}
+            </if>
+            <if test="insertTime != null">
+                and TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = #{insertTime}
+            </if>
+            <if test="updateUsername != null and updateUsername != ''">
+                and UPDATE_USERNAME = #{updateUsername}
+            </if>
+            <if test="updateTime != null">
+                and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
+            </if>
+            <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
+                and INSERT_UPDATE_REMARK = #{insertUpdateRemark}
+            </if>
+            <if test="deleted != null">
+                and DELETED = #{deleted}
+            </if>
+        </where>
+    </sql>
+    <sql id="whereLike">
+        <where>
+            <if test="gmId != null">
+                and GM_ID = #{gmId}
+            </if>
+            <if test="portId != null">
+                and PORT_ID = #{portId}
+            </if>
+            <if test="batchId != null">
+                and BATCH_ID = #{batchId}
+            </if>
+            <if test="gmTonnage != null">
+                and GM_TONNAGE = #{gmTonnage}
+            </if>
+            <if test="insertUsername != null and insertUsername != ''">
+                and INSERT_USERNAME LIKE '%${insertUsername}%'
+            </if>
+            <if test="insertTime != null">
+                and TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = #{insertTime}
+            </if>
+            <if test="updateUsername != null and updateUsername != ''">
+                and UPDATE_USERNAME LIKE '%${updateUsername}%'
+            </if>
+            <if test="updateTime != null">
+                and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
+            </if>
+            <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
+                and INSERT_UPDATE_REMARK LIKE '%${insertUpdateRemark}%'
+            </if>
+            <if test="deleted != null">
+                and DELETED = #{deleted}
+            </if>
+        </where>
+    </sql>
+    <delete id="deleteByPrimaryKey" parameterType="java.math.BigDecimal">
+        delete
+        from WMSH_GRID_MATERIAL
+        where GM_ID = #{gmId,jdbcType=DECIMAL}
+    </delete>
+    <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
+        delete from WMSH_GRID_MATERIAL
+        where 1!=1
+        <if test="portId != null">
+            or PORT_ID = #{portId}
+        </if>
+        <if test="batchId != null">
+            or BATCH_ID = #{batchId}
+        </if>
+        <if test="gmTonnage != null">
+            or GM_TONNAGE = #{gmTonnage}
+        </if>
+        <if test="insertUsername != null and insertUsername != ''">
+            or INSERT_USERNAME = #{insertUsername}
+        </if>
+        <if test="insertTime != null">
+            or TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = '#{insertTime}'
+        </if>
+        <if test="updateUsername != null and updateUsername != ''">
+            or UPDATE_USERNAME = #{updateUsername}
+        </if>
+        <if test="updateTime != null">
+            or TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = '#{updateTime}'
+        </if>
+        <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
+            or INSERT_UPDATE_REMARK = #{insertUpdateRemark}
+        </if>
+        <if test="deleted != null">
+            or DELETED = #{deleted}
+        </if>
+    </delete>
+    <insert id="insert" parameterType="com.steerinfo.dil.model.WmshGridMaterial">
+        insert into WMSH_GRID_MATERIAL (GM_ID, PORT_ID, BATCH_ID,
+                                        GM_TONNAGE, INSERT_USERNAME, INSERT_TIME,
+                                        UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK,
+                                        DELETED)
+        values (#{gmId,jdbcType=DECIMAL}, #{portId,jdbcType=DECIMAL}, #{batchId,jdbcType=DECIMAL},
+                #{gmTonnage,jdbcType=DECIMAL}, #{insertUsername,jdbcType=VARCHAR}, #{insertTime,jdbcType=TIMESTAMP},
+                #{updateUsername,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP},
+                #{insertUpdateRemark,jdbcType=VARCHAR},
+                #{deleted,jdbcType=DECIMAL})
+    </insert>
+    <insert id="insertSelective" parameterType="com.steerinfo.dil.model.WmshGridMaterial">
+        insert into WMSH_GRID_MATERIAL
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="gmId != null">
+                GM_ID,
+            </if>
+            <if test="portId != null">
+                PORT_ID,
+            </if>
+            <if test="batchId != null">
+                BATCH_ID,
+            </if>
+            <if test="gmTonnage != null">
+                GM_TONNAGE,
+            </if>
+            <if test="insertUsername != null">
+                INSERT_USERNAME,
+            </if>
+            <if test="insertTime != null">
+                INSERT_TIME,
+            </if>
+            <if test="updateUsername != null">
+                UPDATE_USERNAME,
+            </if>
+            <if test="updateTime != null">
+                UPDATE_TIME,
+            </if>
+            <if test="insertUpdateRemark != null">
+                INSERT_UPDATE_REMARK,
+            </if>
+            <if test="deleted != null">
+                DELETED,
+            </if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="gmId != null">
+                #{gmId,jdbcType=DECIMAL},
+            </if>
+            <if test="portId != null">
+                #{portId,jdbcType=DECIMAL},
+            </if>
+            <if test="batchId != null">
+                #{batchId,jdbcType=DECIMAL},
+            </if>
+            <if test="gmTonnage != null">
+                #{gmTonnage,jdbcType=DECIMAL},
+            </if>
+            <if test="insertUsername != null">
+                #{insertUsername,jdbcType=VARCHAR},
+            </if>
+            <if test="insertTime != null">
+                #{insertTime,jdbcType=TIMESTAMP},
+            </if>
+            <if test="updateUsername != null">
+                #{updateUsername,jdbcType=VARCHAR},
+            </if>
+            <if test="updateTime != null">
+                #{updateTime,jdbcType=TIMESTAMP},
+            </if>
+            <if test="insertUpdateRemark != null">
+                #{insertUpdateRemark,jdbcType=VARCHAR},
+            </if>
+            <if test="deleted != null">
+                #{deleted,jdbcType=DECIMAL},
+            </if>
+        </trim>
+    </insert>
+    <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.WmshGridMaterial">
+        update WMSH_GRID_MATERIAL
+        set PORT_ID              = #{portId,jdbcType=DECIMAL},
+            BATCH_ID             = #{batchId,jdbcType=DECIMAL},
+            GM_TONNAGE           = #{gmTonnage,jdbcType=DECIMAL},
+            INSERT_USERNAME      = #{insertUsername,jdbcType=VARCHAR},
+            INSERT_TIME          = #{insertTime,jdbcType=TIMESTAMP},
+            UPDATE_USERNAME      = #{updateUsername,jdbcType=VARCHAR},
+            UPDATE_TIME          = #{updateTime,jdbcType=TIMESTAMP},
+            INSERT_UPDATE_REMARK = #{insertUpdateRemark,jdbcType=VARCHAR},
+            DELETED              = #{deleted,jdbcType=DECIMAL}
+        where GM_ID = #{gmId,jdbcType=DECIMAL}
+    </update>
+    <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.WmshGridMaterial">
+        update WMSH_GRID_MATERIAL
+        <set>
+            <if test="portId != null">
+                PORT_ID = #{portId,jdbcType=DECIMAL},
+            </if>
+            <if test="batchId != null">
+                BATCH_ID = #{batchId,jdbcType=DECIMAL},
+            </if>
+            <if test="gmTonnage != null">
+                GM_TONNAGE = #{gmTonnage,jdbcType=DECIMAL},
+            </if>
+            <if test="insertUsername != null">
+                INSERT_USERNAME = #{insertUsername,jdbcType=VARCHAR},
+            </if>
+            <if test="insertTime != null">
+                INSERT_TIME = #{insertTime,jdbcType=TIMESTAMP},
+            </if>
+            <if test="updateUsername != null">
+                UPDATE_USERNAME = #{updateUsername,jdbcType=VARCHAR},
+            </if>
+            <if test="updateTime != null">
+                UPDATE_TIME = #{updateTime,jdbcType=TIMESTAMP},
+            </if>
+            <if test="insertUpdateRemark != null">
+                INSERT_UPDATE_REMARK = #{insertUpdateRemark,jdbcType=VARCHAR},
+            </if>
+            <if test="deleted != null">
+                DELETED = #{deleted,jdbcType=DECIMAL},
+            </if>
+        </set>
+        where GM_ID = #{gmId,jdbcType=DECIMAL}
+    </update>
+    <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
+        <include refid="select"/>
+        where GM_ID = #{gmId,jdbcType=DECIMAL}
+    </select>
+    <select id="selectByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+        <include refid="select"/>
+        <include refid="where"/>
+    </select>
+    <select id="selectLikeByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+        <include refid="select"/>
+        <include refid="whereLike"/>
+    </select>
+    <insert id="batchInsert" parameterType="java.util.List">
+        insert into WMSH_GRID_MATERIAL
+        (GM_ID,
+        PORT_ID, BATCH_ID, GM_TONNAGE,
+        INSERT_USERNAME, INSERT_TIME,
+        UPDATE_USERNAME, UPDATE_TIME,
+        INSERT_UPDATE_REMARK, DELETED)
+        ( <foreach collection="list" item="item" separator="union all">
+        select
+        #{item.gmId,jdbcType=DECIMAL},
+        #{item.portId,jdbcType=DECIMAL}, #{item.batchId,jdbcType=DECIMAL}, #{item.gmTonnage,jdbcType=DECIMAL},
+        #{item.insertUsername,jdbcType=VARCHAR}, #{item.insertTime,jdbcType=TIMESTAMP},
+        #{item.updateUsername,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=TIMESTAMP},
+        #{item.insertUpdateRemark,jdbcType=VARCHAR}, #{item.deleted,jdbcType=DECIMAL} from dual
+    </foreach> )
+    </insert>
+    <update id="batchUpdate" parameterType="java.util.List">
+        update WMSH_GRID_MATERIAL
+        set
+        GM_ID=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.gmId,jdbcType=DECIMAL}
+        </foreach>
+        ,PORT_ID=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.portId,jdbcType=DECIMAL}
+        </foreach>
+        ,BATCH_ID=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.batchId,jdbcType=DECIMAL}
+        </foreach>
+        ,GM_TONNAGE=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.gmTonnage,jdbcType=DECIMAL}
+        </foreach>
+        ,INSERT_USERNAME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.insertUsername,jdbcType=VARCHAR}
+        </foreach>
+        ,INSERT_TIME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.insertTime,jdbcType=TIMESTAMP}
+        </foreach>
+        ,UPDATE_USERNAME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.updateUsername,jdbcType=VARCHAR}
+        </foreach>
+        ,UPDATE_TIME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.updateTime,jdbcType=TIMESTAMP}
+        </foreach>
+        ,INSERT_UPDATE_REMARK=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.insertUpdateRemark,jdbcType=VARCHAR}
+        </foreach>
+        ,DELETED=
+        <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
+            when #{item.gmId,jdbcType=DECIMAL} then #{item.deleted,jdbcType=DECIMAL}
+        </foreach>
+        where GM_ID in
+        <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
+            #{item.gmId,jdbcType=DECIMAL}
+        </foreach>
+    </update>
+    <delete id="batchDelete" parameterType="java.util.List">
+        delete from WMSH_GRID_MATERIAL
+        where GM_ID in
+        <foreach collection="list" item="id" open="(" close=")" separator=",">
+            #{id}
+        </foreach>
+    </delete>
+    <!-- 友情提示!!!-->
+    <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+
+    <!-- 展示下游港口库存 -->
+    <select id="getUnloadPortStockList" parameterType="java.util.Map" resultType="java.util.Map">
+        SELECT *
+        FROM (
+        SELECT rp.PORT_NAME as "portName",
+        rm.MATERIAL_NAME as "materialName",
+        db.RESULT_FOREIGN_SHIP_NAME as "resultForeignShipName",
+        wgm.GM_TONNAGE as "gmTonnage"
+        FROM WMSH_GRID_MATERIAL wgm
+        LEFT JOIN DIL_BATCH db
+        ON db.BATCH_ID = wgm.BATCH_ID
+        LEFT JOIN RMS_MATERIAL rm
+        ON rm.MATERIAL_ID = db.MATERIAL_ID
+        LEFT JOIN RMS_PORT rp
+        ON rp.PORT_ID = wgm.PORT_ID
+        WHERE wgm.DELETED = 0
+        AND rp.PORT_TYPE_ID = 1
+        )
+        <where>
+            <if test="portName != null">
+                and
+                <foreach collection="portName" item="item" open="(" separator="," close=")">
+                    "portName" in #{item}
+                </foreach>
+            </if>
+            <if test="materialName != null">
+                and
+                <foreach collection="materialName" item="item" open="(" separator="," close=")">
+                    "materialName" in #{item}
+                </foreach>
+            </if>
+            <if test="resultForeignShipName != null">
+                and
+                <foreach collection="resultForeignShipName" item="item" open="(" separator="," close=")">
+                    "resultForeignShipName" in #{item}
+                </foreach>
+            </if>
+            <if test="gmTonnage != null">
+                and
+                <foreach collection="gmTonnage" item="item" open="(" separator="," close=")">
+                    "gmTonnage" in #{item}
+                </foreach>
+            </if>
+        </where>
+    </select>
+
+    <!-- 展示万州港库存 -->
+    <select id="getLoadPortStockList" parameterType="java.util.Map" resultType="java.util.Map">
+        SELECT *
+        FROM (
+        SELECT rp.PORT_NAME as "portName",
+        rm.MATERIAL_NAME as "materialName",
+        db.RESULT_FOREIGN_SHIP_NAME as "resultForeignShipName",
+        wgm.GM_TONNAGE as "gmTonnage"
+        FROM WMSH_GRID_MATERIAL wgm
+        LEFT JOIN DIL_BATCH db
+        ON db.BATCH_ID = wgm.BATCH_ID
+        LEFT JOIN RMS_MATERIAL rm
+        ON rm.MATERIAL_ID = db.MATERIAL_ID
+        LEFT JOIN RMS_PORT rp
+        ON rp.PORT_ID = wgm.PORT_ID
+        WHERE wgm.DELETED = 0
+        AND rp.PORT_TYPE_ID != 1
+        )
+        <where>
+            <if test="portName != null">
+                and
+                <foreach collection="portName" item="item" open="(" separator="," close=")">
+                    "portName" in #{item}
+                </foreach>
+            </if>
+            <if test="materialName != null">
+                and
+                <foreach collection="materialName" item="item" open="(" separator="," close=")">
+                    "materialName" in #{item}
+                </foreach>
+            </if>
+            <if test="resultForeignShipName != null">
+                and
+                <foreach collection="resultForeignShipName" item="item" open="(" separator="," close=")">
+                    "resultForeignShipName" in #{item}
+                </foreach>
+            </if>
+            <if test="gmTonnage != null">
+                and
+                <foreach collection="gmTonnage" item="item" open="(" separator="," close=")">
+                    "gmTonnage" in #{item}
+                </foreach>
+            </if>
+        </where>
+    </select>
+
+    <select id="selectWmsGridMaterial" parameterType="java.util.Map" resultType="com.steerinfo.dil.model.WmshGridMaterial">
+        SELECT
+    </select>
+</mapper>

+ 459 - 0
src/main/resources/com/steerinfo/dil/mapper/WmshInboundResultMapper.xml

@@ -0,0 +1,459 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.steerinfo.dil.mapper.WmshInboundResultMapper">
+  <resultMap id="BaseResultMap" type="com.steerinfo.dil.model.WmshInboundResult">
+    <id column="RESULT_ID" jdbcType="DECIMAL" property="resultId" />
+    <result column="RESULT_NUMBER" jdbcType="VARCHAR" property="resultNumber" />
+    <result column="PORT_ID" jdbcType="DECIMAL" property="portId" />
+    <result column="RESULT_MATERIAL_NUMBER" jdbcType="DECIMAL" property="resultMaterialNumber" />
+    <result column="INSERT_USERNAME" jdbcType="VARCHAR" property="insertUsername" />
+    <result column="INSERT_TIME" jdbcType="TIMESTAMP" property="insertTime" />
+    <result column="UPDATE_USERNAME" jdbcType="VARCHAR" property="updateUsername" />
+    <result column="UPDATE_TIME" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="INSERT_UPDATE_REMARK" jdbcType="VARCHAR" property="insertUpdateRemark" />
+    <result column="BATCH_ID" jdbcType="DECIMAL" property="batchId" />
+    <result column="DELETED" jdbcType="DECIMAL" property="deleted" />
+  </resultMap>
+  <sql id="columns">
+    RESULT_ID, RESULT_NUMBER, PORT_ID, RESULT_MATERIAL_NUMBER, INSERT_USERNAME, INSERT_TIME, 
+    UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK, BATCH_ID, DELETED
+  </sql>
+  <sql id="columns_alias">
+    t.RESULT_ID, t.RESULT_NUMBER, t.PORT_ID, t.RESULT_MATERIAL_NUMBER, t.INSERT_USERNAME, 
+    t.INSERT_TIME, t.UPDATE_USERNAME, t.UPDATE_TIME, t.INSERT_UPDATE_REMARK, t.BATCH_ID, 
+    t.DELETED
+  </sql>
+  <sql id="select">
+    SELECT <include refid="columns" /> FROM WMSH_INBOUND_RESULT
+  </sql>
+  <sql id="select_alias">
+    SELECT <include refid="columns_alias" /> FROM WMSH_INBOUND_RESULT t
+  </sql>
+  <sql id="where">
+    <where>
+      <if test="resultId != null">
+        and RESULT_ID = #{resultId}
+      </if>
+      <if test="resultNumber != null and resultNumber != ''">
+        and RESULT_NUMBER = #{resultNumber}
+      </if>
+      <if test="portId != null">
+        and PORT_ID = #{portId}
+      </if>
+      <if test="resultMaterialNumber != null">
+        and RESULT_MATERIAL_NUMBER = #{resultMaterialNumber}
+      </if>
+      <if test="insertUsername != null and insertUsername != ''">
+        and INSERT_USERNAME = #{insertUsername}
+      </if>
+      <if test="insertTime != null">
+        and TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = #{insertTime}
+      </if>
+      <if test="updateUsername != null and updateUsername != ''">
+        and UPDATE_USERNAME = #{updateUsername}
+      </if>
+      <if test="updateTime != null">
+        and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
+      </if>
+      <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
+        and INSERT_UPDATE_REMARK = #{insertUpdateRemark}
+      </if>
+      <if test="batchId != null">
+        and BATCH_ID = #{batchId}
+      </if>
+      <if test="deleted != null">
+        and DELETED = #{deleted}
+      </if>
+    </where>
+  </sql>
+  <sql id="whereLike">
+    <where>
+      <if test="resultId != null">
+        and RESULT_ID = #{resultId}
+      </if>
+      <if test="resultNumber != null and resultNumber != ''">
+        and RESULT_NUMBER LIKE '%${resultNumber}%'
+      </if>
+      <if test="portId != null">
+        and PORT_ID = #{portId}
+      </if>
+      <if test="resultMaterialNumber != null">
+        and RESULT_MATERIAL_NUMBER = #{resultMaterialNumber}
+      </if>
+      <if test="insertUsername != null and insertUsername != ''">
+        and INSERT_USERNAME LIKE '%${insertUsername}%'
+      </if>
+      <if test="insertTime != null">
+        and TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = #{insertTime}
+      </if>
+      <if test="updateUsername != null and updateUsername != ''">
+        and UPDATE_USERNAME LIKE '%${updateUsername}%'
+      </if>
+      <if test="updateTime != null">
+        and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
+      </if>
+      <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
+        and INSERT_UPDATE_REMARK LIKE '%${insertUpdateRemark}%'
+      </if>
+      <if test="batchId != null">
+        and BATCH_ID = #{batchId}
+      </if>
+      <if test="deleted != null">
+        and DELETED = #{deleted}
+      </if>
+    </where>
+  </sql>
+  <delete id="deleteByPrimaryKey" parameterType="java.math.BigDecimal">
+    delete from WMSH_INBOUND_RESULT
+    where RESULT_ID = #{resultId,jdbcType=DECIMAL}
+  </delete>
+  <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
+    delete from WMSH_INBOUND_RESULT
+    where 1!=1
+    <if test="resultNumber != null and resultNumber != ''">
+      or RESULT_NUMBER = #{resultNumber}
+    </if>
+    <if test="portId != null">
+      or PORT_ID = #{portId}
+    </if>
+    <if test="resultMaterialNumber != null">
+      or RESULT_MATERIAL_NUMBER = #{resultMaterialNumber}
+    </if>
+    <if test="insertUsername != null and insertUsername != ''">
+      or INSERT_USERNAME = #{insertUsername}
+    </if>
+    <if test="insertTime != null">
+      or TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = '#{insertTime}'
+    </if>
+    <if test="updateUsername != null and updateUsername != ''">
+      or UPDATE_USERNAME = #{updateUsername}
+    </if>
+    <if test="updateTime != null">
+      or TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = '#{updateTime}'
+    </if>
+    <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
+      or INSERT_UPDATE_REMARK = #{insertUpdateRemark}
+    </if>
+    <if test="batchId != null">
+      or BATCH_ID = #{batchId}
+    </if>
+    <if test="deleted != null">
+      or DELETED = #{deleted}
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.steerinfo.dil.model.WmshInboundResult">
+    insert into WMSH_INBOUND_RESULT (RESULT_ID, RESULT_NUMBER, PORT_ID,
+                                     RESULT_MATERIAL_NUMBER, INSERT_USERNAME, INSERT_TIME,
+                                     UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK,
+                                     BATCH_ID, DELETED)
+    values (#{resultId,jdbcType=DECIMAL}, #{resultNumber,jdbcType=VARCHAR}, #{portId,jdbcType=DECIMAL},
+            #{resultMaterialNumber,jdbcType=DECIMAL}, #{insertUsername,jdbcType=VARCHAR}, #{insertTime,jdbcType=TIMESTAMP},
+            #{updateUsername,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}, #{insertUpdateRemark,jdbcType=VARCHAR},
+            #{batchId,jdbcType=DECIMAL}, #{deleted,jdbcType=DECIMAL})
+  </insert>
+  <insert id="insertSelective" parameterType="com.steerinfo.dil.model.WmshInboundResult">
+    insert into WMSH_INBOUND_RESULT
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="resultId != null">
+        RESULT_ID,
+      </if>
+      <if test="resultNumber != null">
+        RESULT_NUMBER,
+      </if>
+      <if test="portId != null">
+        PORT_ID,
+      </if>
+      <if test="resultMaterialNumber != null">
+        RESULT_MATERIAL_NUMBER,
+      </if>
+      <if test="insertUsername != null">
+        INSERT_USERNAME,
+      </if>
+      <if test="insertTime != null">
+        INSERT_TIME,
+      </if>
+      <if test="updateUsername != null">
+        UPDATE_USERNAME,
+      </if>
+      <if test="updateTime != null">
+        UPDATE_TIME,
+      </if>
+      <if test="insertUpdateRemark != null">
+        INSERT_UPDATE_REMARK,
+      </if>
+      <if test="batchId != null">
+        BATCH_ID,
+      </if>
+      <if test="deleted != null">
+        DELETED,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="resultId != null">
+        #{resultId,jdbcType=DECIMAL},
+      </if>
+      <if test="resultNumber != null">
+        #{resultNumber,jdbcType=VARCHAR},
+      </if>
+      <if test="portId != null">
+        #{portId,jdbcType=DECIMAL},
+      </if>
+      <if test="resultMaterialNumber != null">
+        #{resultMaterialNumber,jdbcType=DECIMAL},
+      </if>
+      <if test="insertUsername != null">
+        #{insertUsername,jdbcType=VARCHAR},
+      </if>
+      <if test="insertTime != null">
+        #{insertTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateUsername != null">
+        #{updateUsername,jdbcType=VARCHAR},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="insertUpdateRemark != null">
+        #{insertUpdateRemark,jdbcType=VARCHAR},
+      </if>
+      <if test="batchId != null">
+        #{batchId,jdbcType=DECIMAL},
+      </if>
+      <if test="deleted != null">
+        #{deleted,jdbcType=DECIMAL},
+      </if>
+    </trim>
+  </insert>
+  <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.WmshInboundResult">
+    update WMSH_INBOUND_RESULT
+    set RESULT_NUMBER = #{resultNumber,jdbcType=VARCHAR},
+        PORT_ID = #{portId,jdbcType=DECIMAL},
+        RESULT_MATERIAL_NUMBER = #{resultMaterialNumber,jdbcType=DECIMAL},
+        INSERT_USERNAME = #{insertUsername,jdbcType=VARCHAR},
+        INSERT_TIME = #{insertTime,jdbcType=TIMESTAMP},
+        UPDATE_USERNAME = #{updateUsername,jdbcType=VARCHAR},
+        UPDATE_TIME = #{updateTime,jdbcType=TIMESTAMP},
+        INSERT_UPDATE_REMARK = #{insertUpdateRemark,jdbcType=VARCHAR},
+        BATCH_ID = #{batchId,jdbcType=DECIMAL},
+        DELETED = #{deleted,jdbcType=DECIMAL}
+    where RESULT_ID = #{resultId,jdbcType=DECIMAL}
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.WmshInboundResult">
+    update WMSH_INBOUND_RESULT
+    <set>
+      <if test="resultNumber != null">
+        RESULT_NUMBER = #{resultNumber,jdbcType=VARCHAR},
+      </if>
+      <if test="portId != null">
+        PORT_ID = #{portId,jdbcType=DECIMAL},
+      </if>
+      <if test="resultMaterialNumber != null">
+        RESULT_MATERIAL_NUMBER = #{resultMaterialNumber,jdbcType=DECIMAL},
+      </if>
+      <if test="insertUsername != null">
+        INSERT_USERNAME = #{insertUsername,jdbcType=VARCHAR},
+      </if>
+      <if test="insertTime != null">
+        INSERT_TIME = #{insertTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateUsername != null">
+        UPDATE_USERNAME = #{updateUsername,jdbcType=VARCHAR},
+      </if>
+      <if test="updateTime != null">
+        UPDATE_TIME = #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="insertUpdateRemark != null">
+        INSERT_UPDATE_REMARK = #{insertUpdateRemark,jdbcType=VARCHAR},
+      </if>
+      <if test="batchId != null">
+        BATCH_ID = #{batchId,jdbcType=DECIMAL},
+      </if>
+      <if test="deleted != null">
+        DELETED = #{deleted,jdbcType=DECIMAL},
+      </if>
+    </set>
+    where RESULT_ID = #{resultId,jdbcType=DECIMAL}
+  </update>
+  <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
+    <include refid="select" />
+    where RESULT_ID = #{resultId,jdbcType=DECIMAL}
+  </select>
+  <select id="selectByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+    <include refid="select" />
+    <include refid="where" />
+  </select>
+  <select id="selectLikeByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+    <include refid="select" />
+    <include refid="whereLike" />
+  </select>
+  <insert id="batchInsert" parameterType="java.util.List">
+    insert into WMSH_INBOUND_RESULT
+    (RESULT_ID,
+    RESULT_NUMBER, PORT_ID, RESULT_MATERIAL_NUMBER,
+    INSERT_USERNAME, INSERT_TIME,
+    UPDATE_USERNAME, UPDATE_TIME,
+    INSERT_UPDATE_REMARK, BATCH_ID,
+    DELETED)
+    ( <foreach collection="list" item="item" separator="union all">
+    select
+    #{item.resultId,jdbcType=DECIMAL},
+    #{item.resultNumber,jdbcType=VARCHAR}, #{item.portId,jdbcType=DECIMAL}, #{item.resultMaterialNumber,jdbcType=DECIMAL},
+    #{item.insertUsername,jdbcType=VARCHAR}, #{item.insertTime,jdbcType=TIMESTAMP},
+    #{item.updateUsername,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=TIMESTAMP},
+    #{item.insertUpdateRemark,jdbcType=VARCHAR}, #{item.batchId,jdbcType=DECIMAL},
+    #{item.deleted,jdbcType=DECIMAL} from dual
+  </foreach> )
+  </insert>
+  <update id="batchUpdate" parameterType="java.util.List">
+    update WMSH_INBOUND_RESULT
+    set
+    RESULT_ID=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.resultId,jdbcType=DECIMAL}
+    </foreach>
+    ,RESULT_NUMBER=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.resultNumber,jdbcType=VARCHAR}
+    </foreach>
+    ,PORT_ID=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.portId,jdbcType=DECIMAL}
+    </foreach>
+    ,RESULT_MATERIAL_NUMBER=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.resultMaterialNumber,jdbcType=DECIMAL}
+    </foreach>
+    ,INSERT_USERNAME=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.insertUsername,jdbcType=VARCHAR}
+    </foreach>
+    ,INSERT_TIME=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.insertTime,jdbcType=TIMESTAMP}
+    </foreach>
+    ,UPDATE_USERNAME=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.updateUsername,jdbcType=VARCHAR}
+    </foreach>
+    ,UPDATE_TIME=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.updateTime,jdbcType=TIMESTAMP}
+    </foreach>
+    ,INSERT_UPDATE_REMARK=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.insertUpdateRemark,jdbcType=VARCHAR}
+    </foreach>
+    ,BATCH_ID=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.batchId,jdbcType=DECIMAL}
+    </foreach>
+    ,DELETED=
+    <foreach close="end" collection="list" index="index" item="item" open="case RESULT_ID" separator=" ">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.deleted,jdbcType=DECIMAL}
+    </foreach>
+    where RESULT_ID in
+    <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
+      #{item.resultId,jdbcType=DECIMAL}
+    </foreach>
+  </update>
+  <delete id="batchDelete" parameterType="java.util.List">
+    delete from WMSH_INBOUND_RESULT
+    where RESULT_ID in
+    <foreach close=")" collection="list" item="id" open="(" separator=",">
+      #{id}
+    </foreach>
+  </delete>
+  <!-- 友情提示!!!-->
+  <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+
+  <!--   排序 -->
+  <sql id="orderBy">
+    <if test="orderField != null and orderField != ''">
+      order by "${orderField}"
+      <if test="orderType != null and orderType != ''">
+        ${orderType}
+      </if>
+    </if>
+  </sql>
+
+<!-- 查询所有港存库实绩 -->
+  <select id="getAllResult" parameterType="java.util.Map" resultType="java.util.LinkedHashMap">
+
+    select *
+    from (
+           select WIR.RESULT_ID               "resultId",
+                  WIR.RESULT_NUMBER           "resultNumber",
+                  RP.PORT_NAME                "portName",
+                  RM.MATERIAL_NAME            "materialName",
+                  DB.RESULT_FOREIGN_SHIP_NAME "resultForeignShipName",
+                  WIR.RESULT_MATERIAL_NUMBER  "resultMaterialNumber",
+                  WIR.INSERT_USERNAME         "insertUsername",
+                  WIR.INSERT_TIME             "insertTime"
+           from WMSH_INBOUND_RESULT WIR
+                  join DIL_BATCH DB
+                       on DB.BATCH_ID = WIR.BATCH_ID
+                  left join RMS_MATERIAL RM
+                            on RM.MATERIAL_ID = DB.MATERIAL_ID
+                  Left join RMS_PORT RP
+                            on RP.PORT_ID = WIR.PORT_ID
+          where WIR.DELETED = 0
+         )
+    <where>
+      <if test="resultNumber != null">
+        <foreach collection="resultNumber" item="item" open="(" separator="or" close=")">
+          "resultNumber" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="portName != null">
+      and
+        <foreach collection="portName" item="item" open="(" separator="or" close=")">
+          "portName" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="materialName != null">
+      and
+        <foreach collection="materialName" item="item" open="(" separator="or" close=")">
+          "materialName" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="resultForeignShipName != null">
+      and
+        <foreach collection="resultForeignShipName" item="item" open="(" separator="or" close=")">
+          "resultForeignShipName" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="resultMaterialNumber != null">
+      and
+        <foreach collection="resultMaterialNumber" item="item" open="(" separator="or" close=")">
+          "resultMaterialNumber" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="insertUsername != null">
+      and
+        <foreach collection="insertUsername" item="item" open="(" separator="or" close=")">
+          "insertUsername" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="insertTime != null">
+      and
+        <foreach collection="insertTime" item="item" open="(" separator="or" close=")">
+          "insertTime" like '%${item}%'
+        </foreach>
+      </if>
+    </where>
+    <include refid="orderBy"></include>
+    <if test="orderField == null  ">
+      order by "insertTime" desc
+    </if>
+  </select>
+
+<!--  通过ID查询实绩-->
+  <select id="getResultById" parameterType="int" resultType="java.util.Map">
+        select
+               WIR.BATCH_ID "batchId",
+               WIR.PORT_ID "portId",
+               WIR.RESULT_MATERIAL_NUMBER "resultMaterialNumber"
+        from WMSH_INBOUND_RESULT WIR
+        where WIR.RESULT_ID = #{resultId}
+  </select>
+</mapper>

+ 444 - 0
src/main/resources/com/steerinfo/dil/mapper/WmshOutboundResultMapper.xml

@@ -0,0 +1,444 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.steerinfo.dil.mapper.WmshOutboundResultMapper">
+  <resultMap id="BaseResultMap" type="com.steerinfo.dil.model.WmshOutboundResult">
+    <id column="RESULT_ID" jdbcType="DECIMAL" property="resultId" />
+    <result column="RESULT_NUMBER" jdbcType="VARCHAR" property="resultNumber" />
+    <result column="HARBOR_ID" jdbcType="DECIMAL" property="harborId" />
+    <result column="RESULT_TONNAGE" jdbcType="DECIMAL" property="resultTonnage" />
+    <result column="RESULT_CLEARING" jdbcType="VARCHAR" property="resultClearing" />
+    <result column="INSERT_USERNAME" jdbcType="VARCHAR" property="insertUsername" />
+    <result column="INSERT_TIME" jdbcType="TIMESTAMP" property="insertTime" />
+    <result column="UPDATE_USERNAME" jdbcType="VARCHAR" property="updateUsername" />
+    <result column="UPDATE_TIME" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="INSERT_UPDATE_REMARK" jdbcType="VARCHAR" property="insertUpdateRemark" />
+    <result column="BATCH_ID" jdbcType="DECIMAL" property="batchId" />
+  </resultMap>
+  <sql id="columns">
+    RESULT_ID, RESULT_NUMBER, HARBOR_ID, RESULT_TONNAGE, RESULT_CLEARING, INSERT_USERNAME,
+    INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK, BATCH_ID
+  </sql>
+  <sql id="columns_alias">
+    t.RESULT_ID, t.RESULT_NUMBER, t.HARBOR_ID, t.RESULT_TONNAGE, t.RESULT_CLEARING, t.INSERT_USERNAME,
+    t.INSERT_TIME, t.UPDATE_USERNAME, t.UPDATE_TIME, t.INSERT_UPDATE_REMARK, t.BATCH_ID
+  </sql>
+  <sql id="select">
+    SELECT <include refid="columns"/> FROM WMSH_OUTBOUND_RESULT
+  </sql>
+  <sql id="select_alias">
+    SELECT <include refid="columns_alias"/> FROM WMSH_OUTBOUND_RESULT t
+  </sql>
+  <sql id="where">
+    <where>
+      <if test="resultId != null">
+        and RESULT_ID = #{resultId}
+      </if>
+      <if test="resultNumber != null and resultNumber != ''">
+        and RESULT_NUMBER = #{resultNumber}
+      </if>
+      <if test="harborId != null">
+        and HARBOR_ID = #{harborId}
+      </if>
+      <if test="resultTonnage != null">
+        and RESULT_TONNAGE = #{resultTonnage}
+      </if>
+      <if test="resultClearing != null and resultClearing != ''">
+        and RESULT_CLEARING = #{resultClearing}
+      </if>
+      <if test="insertUsername != null and insertUsername != ''">
+        and INSERT_USERNAME = #{insertUsername}
+      </if>
+      <if test="insertTime != null">
+        and TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = #{insertTime}
+      </if>
+      <if test="updateUsername != null and updateUsername != ''">
+        and UPDATE_USERNAME = #{updateUsername}
+      </if>
+      <if test="updateTime != null">
+        and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
+      </if>
+      <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
+        and INSERT_UPDATE_REMARK = #{insertUpdateRemark}
+      </if>
+      <if test="batchId != null">
+        and BATCH_ID = #{batchId}
+      </if>
+    </where>
+  </sql>
+  <sql id="whereLike">
+    <where>
+      <if test="resultId != null">
+        and RESULT_ID = #{resultId}
+      </if>
+      <if test="resultNumber != null and resultNumber != ''">
+        and RESULT_NUMBER LIKE '%${resultNumber}%'
+      </if>
+      <if test="harborId != null">
+        and HARBOR_ID = #{harborId}
+      </if>
+      <if test="resultTonnage != null">
+        and RESULT_TONNAGE = #{resultTonnage}
+      </if>
+      <if test="resultClearing != null and resultClearing != ''">
+        and RESULT_CLEARING LIKE '%${resultClearing}%'
+      </if>
+      <if test="insertUsername != null and insertUsername != ''">
+        and INSERT_USERNAME LIKE '%${insertUsername}%'
+      </if>
+      <if test="insertTime != null">
+        and TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = #{insertTime}
+      </if>
+      <if test="updateUsername != null and updateUsername != ''">
+        and UPDATE_USERNAME LIKE '%${updateUsername}%'
+      </if>
+      <if test="updateTime != null">
+        and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
+      </if>
+      <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
+        and INSERT_UPDATE_REMARK LIKE '%${insertUpdateRemark}%'
+      </if>
+      <if test="batchId != null">
+        and BATCH_ID = #{batchId}
+      </if>
+    </where>
+  </sql>
+  <delete id="deleteByPrimaryKey" parameterType="java.math.BigDecimal">
+    delete from WMSH_OUTBOUND_RESULT
+    where RESULT_ID = #{resultId,jdbcType=DECIMAL}
+  </delete>
+  <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
+    delete from WMSH_OUTBOUND_RESULT
+    where 1!=1
+    <if test="resultNumber != null and resultNumber != ''">
+      or RESULT_NUMBER = #{resultNumber}
+    </if>
+    <if test="harborId != null">
+      or HARBOR_ID = #{harborId}
+    </if>
+    <if test="resultTonnage != null">
+      or RESULT_TONNAGE = #{resultTonnage}
+    </if>
+    <if test="resultClearing != null and resultClearing != ''">
+      or RESULT_CLEARING = #{resultClearing}
+    </if>
+    <if test="insertUsername != null and insertUsername != ''">
+      or INSERT_USERNAME = #{insertUsername}
+    </if>
+    <if test="insertTime != null">
+      or TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = '#{insertTime}'
+    </if>
+    <if test="updateUsername != null and updateUsername != ''">
+      or UPDATE_USERNAME = #{updateUsername}
+    </if>
+    <if test="updateTime != null">
+      or TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = '#{updateTime}'
+    </if>
+    <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
+      or INSERT_UPDATE_REMARK = #{insertUpdateRemark}
+    </if>
+    <if test="batchId != null">
+      or BATCH_ID = #{batchId}
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.steerinfo.dil.model.WmshOutboundResult">
+    insert into WMSH_OUTBOUND_RESULT (RESULT_ID, RESULT_NUMBER, HARBOR_ID,
+                                      RESULT_TONNAGE, RESULT_CLEARING, INSERT_USERNAME,
+                                      INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME,
+                                      INSERT_UPDATE_REMARK, BATCH_ID)
+    values (#{resultId,jdbcType=DECIMAL}, #{resultNumber,jdbcType=VARCHAR}, #{harborId,jdbcType=DECIMAL},
+            #{resultTonnage,jdbcType=DECIMAL}, #{resultClearing,jdbcType=VARCHAR}, #{insertUsername,jdbcType=VARCHAR},
+            #{insertTime,jdbcType=TIMESTAMP}, #{updateUsername,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP},
+            #{insertUpdateRemark,jdbcType=VARCHAR}, #{batchId,jdbcType=DECIMAL})
+  </insert>
+  <insert id="insertSelective" parameterType="com.steerinfo.dil.model.WmshOutboundResult">
+    insert into WMSH_OUTBOUND_RESULT
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="resultId != null">
+        RESULT_ID,
+      </if>
+      <if test="resultNumber != null">
+        RESULT_NUMBER,
+      </if>
+      <if test="harborId != null">
+        HARBOR_ID,
+      </if>
+      <if test="resultTonnage != null">
+        RESULT_TONNAGE,
+      </if>
+      <if test="resultClearing != null">
+        RESULT_CLEARING,
+      </if>
+      <if test="insertUsername != null">
+        INSERT_USERNAME,
+      </if>
+      <if test="insertTime != null">
+        INSERT_TIME,
+      </if>
+      <if test="updateUsername != null">
+        UPDATE_USERNAME,
+      </if>
+      <if test="updateTime != null">
+        UPDATE_TIME,
+      </if>
+      <if test="insertUpdateRemark != null">
+        INSERT_UPDATE_REMARK,
+      </if>
+      <if test="batchId != null">
+        BATCH_ID,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="resultId != null">
+        #{resultId,jdbcType=DECIMAL},
+      </if>
+      <if test="resultNumber != null">
+        #{resultNumber,jdbcType=VARCHAR},
+      </if>
+      <if test="harborId != null">
+        #{harborId,jdbcType=DECIMAL},
+      </if>
+      <if test="resultTonnage != null">
+        #{resultTonnage,jdbcType=DECIMAL},
+      </if>
+      <if test="resultClearing != null">
+        #{resultClearing,jdbcType=VARCHAR},
+      </if>
+      <if test="insertUsername != null">
+        #{insertUsername,jdbcType=VARCHAR},
+      </if>
+      <if test="insertTime != null">
+        #{insertTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateUsername != null">
+        #{updateUsername,jdbcType=VARCHAR},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="insertUpdateRemark != null">
+        #{insertUpdateRemark,jdbcType=VARCHAR},
+      </if>
+      <if test="batchId != null">
+        #{batchId,jdbcType=DECIMAL},
+      </if>
+    </trim>
+  </insert>
+  <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.WmshOutboundResult">
+    update WMSH_OUTBOUND_RESULT
+    set RESULT_NUMBER = #{resultNumber,jdbcType=VARCHAR},
+        HARBOR_ID = #{harborId,jdbcType=DECIMAL},
+        RESULT_TONNAGE = #{resultTonnage,jdbcType=DECIMAL},
+        RESULT_CLEARING = #{resultClearing,jdbcType=VARCHAR},
+        INSERT_USERNAME = #{insertUsername,jdbcType=VARCHAR},
+        INSERT_TIME = #{insertTime,jdbcType=TIMESTAMP},
+        UPDATE_USERNAME = #{updateUsername,jdbcType=VARCHAR},
+        UPDATE_TIME = #{updateTime,jdbcType=TIMESTAMP},
+        INSERT_UPDATE_REMARK = #{insertUpdateRemark,jdbcType=VARCHAR},
+        BATCH_ID = #{batchId,jdbcType=DECIMAL}
+    where RESULT_ID = #{resultId,jdbcType=DECIMAL}
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.WmshOutboundResult">
+    update WMSH_OUTBOUND_RESULT
+    <set>
+      <if test="resultNumber != null">
+        RESULT_NUMBER = #{resultNumber,jdbcType=VARCHAR},
+      </if>
+      <if test="harborId != null">
+        HARBOR_ID = #{harborId,jdbcType=DECIMAL},
+      </if>
+      <if test="resultTonnage != null">
+        RESULT_TONNAGE = #{resultTonnage,jdbcType=DECIMAL},
+      </if>
+      <if test="resultClearing != null">
+        RESULT_CLEARING = #{resultClearing,jdbcType=VARCHAR},
+      </if>
+      <if test="insertUsername != null">
+        INSERT_USERNAME = #{insertUsername,jdbcType=VARCHAR},
+      </if>
+      <if test="insertTime != null">
+        INSERT_TIME = #{insertTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateUsername != null">
+        UPDATE_USERNAME = #{updateUsername,jdbcType=VARCHAR},
+      </if>
+      <if test="updateTime != null">
+        UPDATE_TIME = #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="insertUpdateRemark != null">
+        INSERT_UPDATE_REMARK = #{insertUpdateRemark,jdbcType=VARCHAR},
+      </if>
+      <if test="batchId != null">
+        BATCH_ID = #{batchId,jdbcType=DECIMAL},
+      </if>
+    </set>
+    where RESULT_ID = #{resultId,jdbcType=DECIMAL}
+  </update>
+  <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
+    <include refid="select"/>
+    where RESULT_ID = #{resultId,jdbcType=DECIMAL}
+  </select>
+  <select id="selectByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+    <include refid="select"/>
+    <include refid="where"/>
+  </select>
+  <select id="selectLikeByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+    <include refid="select"/>
+    <include refid="whereLike"/>
+  </select>
+  <insert id="batchInsert" parameterType="java.util.List">
+    insert into WMSH_OUTBOUND_RESULT
+    (RESULT_ID,
+    RESULT_NUMBER, HARBOR_ID, RESULT_TONNAGE,
+    RESULT_CLEARING, INSERT_USERNAME,
+    INSERT_TIME, UPDATE_USERNAME,
+    UPDATE_TIME, INSERT_UPDATE_REMARK,
+    BATCH_ID)
+    ( <foreach collection="list" item="item" separator="union all">
+    select
+    #{item.resultId,jdbcType=DECIMAL},
+    #{item.resultNumber,jdbcType=VARCHAR}, #{item.harborId,jdbcType=DECIMAL}, #{item.resultTonnage,jdbcType=DECIMAL},
+    #{item.resultClearing,jdbcType=VARCHAR}, #{item.insertUsername,jdbcType=VARCHAR},
+    #{item.insertTime,jdbcType=TIMESTAMP}, #{item.updateUsername,jdbcType=VARCHAR},
+    #{item.updateTime,jdbcType=TIMESTAMP}, #{item.insertUpdateRemark,jdbcType=VARCHAR},
+    #{item.batchId,jdbcType=DECIMAL} from dual
+  </foreach> )
+  </insert>
+  <update id="batchUpdate" parameterType="java.util.List">
+    update WMSH_OUTBOUND_RESULT
+    set
+    RESULT_ID=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.resultId,jdbcType=DECIMAL}
+    </foreach>
+    ,RESULT_NUMBER=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.resultNumber,jdbcType=VARCHAR}
+    </foreach>
+    ,HARBOR_ID=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.harborId,jdbcType=DECIMAL}
+    </foreach>
+    ,RESULT_TONNAGE=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.resultTonnage,jdbcType=DECIMAL}
+    </foreach>
+    ,RESULT_CLEARING=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.resultClearing,jdbcType=VARCHAR}
+    </foreach>
+    ,INSERT_USERNAME=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.insertUsername,jdbcType=VARCHAR}
+    </foreach>
+    ,INSERT_TIME=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.insertTime,jdbcType=TIMESTAMP}
+    </foreach>
+    ,UPDATE_USERNAME=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.updateUsername,jdbcType=VARCHAR}
+    </foreach>
+    ,UPDATE_TIME=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.updateTime,jdbcType=TIMESTAMP}
+    </foreach>
+    ,INSERT_UPDATE_REMARK=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.insertUpdateRemark,jdbcType=VARCHAR}
+    </foreach>
+    ,BATCH_ID=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.batchId,jdbcType=DECIMAL}
+    </foreach>
+    where RESULT_ID in
+    <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
+      #{item.resultId,jdbcType=DECIMAL}
+    </foreach>
+  </update>
+  <delete id="batchDelete" parameterType="java.util.List">
+    delete from WMSH_OUTBOUND_RESULT
+    where RESULT_ID in
+    <foreach collection="list" item="id" open="(" close=")" separator=",">
+      #{id}
+    </foreach>
+  </delete>
+  <!-- 友情提示!!!-->
+  <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+  <!--   排序 -->
+  <sql id="orderBy">
+    <if test="orderField != null and orderField != ''">
+      order by "${orderField}"
+      <if test="orderType != null and orderType != ''">
+        ${orderType}
+      </if>
+    </if>
+  </sql>
+  <!--  查询所有的出库实绩  -->
+  <select id="getAllResult" parameterType="java.util.Map" resultType="java.util.LinkedHashMap">
+    select *
+    from (
+    select WOR.RESULT_ID               "resultId",
+    WOR.RESULT_NUMBER           "resultNumber",
+    RP.PORT_NAME                "portName",
+    RM.MATERIAL_NAME            "materialName",
+    DB.RESULT_FOREIGN_SHIP_NAME "resultForeignShipName",
+    WOR.RESULT_TONNAGE          "resultTonnage",
+    WOR.RESULT_CLEARING         "resultClearing",
+    WOR.INSERT_TIME             "insertTime"
+    from WMSH_OUTBOUND_RESULT WOR
+    left join DIL_BATCH DB
+    on DB.BATCH_ID = WOR.BATCH_ID
+    left join RMS_MATERIAL RM
+    on RM.MATERIAL_ID = DB.MATERIAL_ID
+    left join RMS_PORT RP
+    on RP.PORT_ID = WOR.HARBOR_ID
+    )
+    <where>
+      <if test="resultNumber != null">
+        <foreach collection="resultNumber" item="item" open="(" separator="or" close=")">
+          "resultNumber" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="portName != null">
+        and
+        <foreach collection="portName" item="item" open="(" separator="or" close=")">
+          "portName" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="materialName != null">
+        and
+        <foreach collection="materialName" item="item" open="(" separator="or" close=")">
+          "materialName" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="resultForeignShipName != null">
+        and
+        <foreach collection="resultForeignShipName" item="item" open="(" separator="or" close=")">
+          "resultForeignShipName" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="resultTonnage != null">
+        and
+        <foreach collection="resultTonnage" item="item" open="(" separator="or" close=")">
+          "resultTonnage" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="resultClearing != null">
+        and
+        <foreach collection="resultClearing" item="item" open="(" separator="or" close=")">
+          "resultClearing" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="insertTime != null">
+        and
+        <foreach collection="insertTime" item="item" open="(" separator="or" close=")">
+          "insertTime" like '%${item}%'
+        </foreach>
+      </if>
+    </where>
+    <include refid="orderBy"></include>
+    <if test="orderField == null  ">
+      order by "insertTime" desc
+    </if>
+  </select>
+</mapper>

+ 80 - 0
src/main/resources/log4j.properties

@@ -0,0 +1,80 @@
+## LOG4J配置
+log4j.rootCategory=INFO, stdout,file, RUNNING,errorfile
+## 控制台输出
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS}:%5p %20t [%50F:%3L] - %m%n
+
+## root日志输出到文件
+log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.file.file=/logsdata/logs/springboot-log4j-root.log
+log4j.appender.file.DatePattern='.'yyyy-MM-dd
+log4j.appender.file.layout=org.apache.log4j.PatternLayout
+log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS}:%5p %20t [%50F:%3L] - %m%n
+
+## 按不同package进行输出
+## com.steer包下的日志配置
+log4j.category.market=DEBUG, steerfile
+log4j.category.com.hnshituo=DEBUG, steerfile
+#log4j.category.com.steer=${logging.level.com.steer}, steerfile
+log4j.category.com.steer=DEBUG, steerfile
+# com.steer下的日志输出
+log4j.appender.steerfile=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.steerfile.file=/logsdata/logs/springboot-log4j-steer.log
+log4j.appender.steerfile.DatePattern='.'yyyy-MM-dd
+log4j.appender.steerfile.layout=org.apache.log4j.PatternLayout
+#log4j.appender.steerfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
+log4j.appender.steerfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS}:%5p %20t [%50F:%3L] - %m%n
+
+
+## ERROR级别输出到特定的日志文件中
+log4j.logger.error=errorfile
+## 异常日志####
+log4j.appender.errorfile=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.errorfile.file=/logs/exception/exc.log
+log4j.appender.errorfile.DatePattern='.'yyyy-MM-dd
+log4j.appender.errorfile.Threshold = ERROR
+log4j.appender.errorfile.layout=org.apache.log4j.PatternLayout
+#log4j.appender.errorfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
+log4j.appender.errorfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS}:%5p %20t [%50F:%3L] - %m%n
+
+### 运行日志 ###
+log4j.appender.RUNNING = org.apache.log4j.DailyRollingFileAppender
+log4j.appender.RUNNING.File =/logs/log/running.log
+log4j.appender.RUNNING.Append = true
+log4j.appender.RUNNING.Threshold = INFO
+log4j.appender.RUNNING.DatePattern='.'yyyy-MM-dd.
+log4j.appender.RUNNING.layout = org.apache.log4j.PatternLayout
+log4j.appender.RUNNING.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS}:%5p %20t [%50F:%3L] - %m%n
+
+### 指定类###
+log4j.logger.com.steer.rbac.sysdebuglog.service.DebugLogRecord = DEBUG,DEB
+## 调试日志 ###
+log4j.appender.DEB = org.apache.log4j.DailyRollingFileAppender
+log4j.appender.DEB.File = /logs/debug/debug.log
+log4j.appender.DEB.Append = true
+log4j.appender.DEB.Threshold = DEBUG 
+log4j.appender.DEB.DatePattern='.'yyyy-MM-dd
+log4j.appender.DEB.layout = org.apache.log4j.PatternLayout
+log4j.appender.DEB.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS}:%5p %20t [%50F:%3L] - %m%n
+####[%p] [%-d{yyyy-MM-dd HH:mm:ss}] %C.%M(%L) | %m%n
+
+#### 业务日志###
+log4j.logger.com.steer.rbac.sysoperlog.service.BizLogRecord = INFO,BIZ
+log4j.appender.BIZ = org.apache.log4j.DailyRollingFileAppender
+log4j.appender.BIZ.File = /logs/business/biz.log
+log4j.appender.BIZ.Append = true
+log4j.appender.BIZ.Threshold = INFO
+log4j.appender.BIZ.DatePattern='.'yyyy-MM-dd
+log4j.appender.BIZ.layout = org.apache.log4j.PatternLayout
+log4j.appender.BIZ.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS}:%5p %20t [%50F:%3L] - %m%n
+#
+#
+#### 资源日志###
+#log4j.appender.ENV = org.apache.log4j.DailyRollingFileAppender
+#log4j.appender.ENV.File = ../logs/env/env.log
+#log4j.appender.ENV.Append = true
+#log4j.appender.ENV.Threshold = INFO
+#log4j.appender.ENV.DatePattern='.'yyyy-MM-dd
+#1420.3og4j.appender.ENV.layout = org.apache.log4j.PatternLayout
+#log4j.appender.ENV.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS}:%5p %20t [%50F:%3L] - %m%n

+ 4 - 0
src/main/resources/message.properties

@@ -0,0 +1,4 @@
+succeed=操作成功
+failed=操作失败
+unreg=帐号或手机号码未注册
+passerr=密码错误