Bladeren bron

10.11提交

HUJIANGUO 3 jaren geleden
bovenliggende
commit
cd37c1b896
22 gewijzigde bestanden met toevoegingen van 1352 en 57 verwijderingen
  1. 1 1
      pom.xml
  2. 178 0
      src/main/java/com/steerinfo/dil/controller/BmsportHandlingFeeController.java
  3. 85 6
      src/main/java/com/steerinfo/dil/controller/BmsshipDetailsOrderController.java
  4. 29 29
      src/main/java/com/steerinfo/dil/controller/BmsshipStatementController.java
  5. 3 3
      src/main/java/com/steerinfo/dil/controller/BmstruckFormulaController.java
  6. 1 1
      src/main/java/com/steerinfo/dil/feign/ColumnDataFeign.java
  7. 31 0
      src/main/java/com/steerinfo/dil/feign/ESFeign.java
  8. 50 0
      src/main/java/com/steerinfo/dil/mapper/BmsportHandlingFeeMapper.java
  9. 7 0
      src/main/java/com/steerinfo/dil/mapper/BmstruckFormulaMapper.java
  10. 213 0
      src/main/java/com/steerinfo/dil/model/BmsportHandlingFee.java
  11. 68 0
      src/main/java/com/steerinfo/dil/service/IBmsportHandlingFeeService.java
  12. 136 0
      src/main/java/com/steerinfo/dil/service/impl/BmsportHandlingFeeServiceImpl.java
  13. 1 1
      src/main/java/com/steerinfo/dil/service/impl/BmsshipDetailsOrderSerivceImpl.java
  14. 1 1
      src/main/java/com/steerinfo/dil/service/impl/BmsshipStatementServiceImpl.java
  15. 19 1
      src/main/java/com/steerinfo/dil/service/impl/BmstruckFormulaServiceImpl.java
  16. 13 3
      src/main/java/com/steerinfo/dil/util/NoUtil.java
  17. 1 1
      src/main/resources/application-dev.yml
  18. 1 1
      src/main/resources/application-prod.yml
  19. 4 0
      src/main/resources/bootstrap.yml
  20. 493 0
      src/main/resources/com/steerinfo/dil/mapper/BmsportHandlingFeeMapper.xml
  21. 2 1
      src/main/resources/com/steerinfo/dil/mapper/BmsshipStatementMapper.xml
  22. 15 8
      src/main/resources/com/steerinfo/dil/mapper/BmstruckFormulaMapper.xml

+ 1 - 1
pom.xml

@@ -111,7 +111,7 @@
                     <!--包名-->
                     <targetPackage>com.steerinfo.dil</targetPackage>
                     <tables>
-                        <param>BMSSHIP_STATEMENT</param><!--运力-->
+                        <param>BMSPORT_HANDLING_FEE</param><!--运力-->
                     </tables>
                 </configuration>
                 <executions>

+ 178 - 0
src/main/java/com/steerinfo/dil/controller/BmsportHandlingFeeController.java

@@ -0,0 +1,178 @@
+package com.steerinfo.dil.controller;
+
+import com.steerinfo.dil.model.BmsportHandlingFee;
+import com.steerinfo.dil.service.impl.BmsportHandlingFeeServiceImpl;
+import com.steerinfo.dil.service.impl.BmsshipStatementServiceImpl;
+import com.steerinfo.dil.service.impl.BmstruckFormulaServiceImpl;
+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.ApiModelProperty;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.math.BigDecimal;
+import java.text.DecimalFormat;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:HuJianGuo
+ * @GreateTime:2021/9/27 17:34
+ * @Version:V2.0
+ */
+@RestController
+@RequestMapping("/${api.version}/bmsporthandlingfee")
+public class BmsportHandlingFeeController extends BaseRESTfulController {
+
+    @Autowired
+    BmsportHandlingFeeServiceImpl bmsportHandlingFeeService;
+    @Autowired
+    BmsshipStatementServiceImpl bmsshipStatementService;
+    @Autowired
+    BmstruckFormulaServiceImpl bmstruckFormulaService;
+    @Autowired
+    ColumnDataUtil columnDataUtil;
+
+    /**
+     * 展示港口装卸费结算信息
+     * @param mapValue
+     * @param pageNum
+     * @param pageSize
+     * @param apiId
+     * @return
+     */
+    @ApiModelProperty(value = "展示港口装卸费结算信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "apiId", value = "151", required = false, dataType = "BigDecimal")
+    })
+    @PostMapping("/getPortHandlingFeeList")
+    public RESTfulResult getPortHandlingFeeList(@RequestBody(required = false) Map<String,Object> mapValue,
+                                          Integer pageNum,
+                                          Integer pageSize,
+                                          Integer apiId) {
+        List<Map<String, Object>> list = bmsportHandlingFeeService.getPortHandlingFeeList(mapValue);
+        PageHelper.startPage(pageNum, pageSize);
+        //分页查询数据
+        List<Map<String, Object>> columnList = bmsportHandlingFeeService.getPortHandlingFeeList(mapValue);
+        PageListAdd data = columnDataUtil.tableColumnData(apiId, list, columnList);
+        return success(data);
+    }
+
+    /**
+     * 展示批次信息
+     * @param mapValue
+     * @param pageNum
+     * @param pageSize
+     * @param apiId
+     * @return
+     */
+    @ApiModelProperty(value = "展示批次信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "apiId", value = "115", required = false, dataType = "BigDecimal")
+    })
+    @PostMapping("/getBatch")
+    public RESTfulResult getBatch(@RequestBody(required = false) Map<String,Object> mapValue,
+                                        Integer pageNum,
+                                        Integer pageSize,
+                                        Integer apiId) {
+        List<Map<String, Object>> list = bmsshipStatementService.getBatch(mapValue);
+        PageHelper.startPage(pageNum, pageSize);
+        //分页查询数据
+        List<Map<String, Object>> columnList = bmsshipStatementService.getBatch(mapValue);
+        PageListAdd data = columnDataUtil.tableColumnData(apiId, list, columnList);
+        return success(data);
+    }
+
+    /**
+     * 新增港口装卸费结算
+     * @param map
+     * @return
+     */
+    @ApiModelProperty(value = "新增港口装卸费结算")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "map", value = "港口装卸费字段", required = false, dataType = "java.util.List"),
+    })
+    @PostMapping("/addPortHandlingFee")
+    public RESTfulResult addPortHandlingFee(@RequestBody Map<String,Object> map) throws Exception {
+        int code1 = bmsportHandlingFeeService.insert(map);
+        return success(code1);
+    }
+
+    /**
+     * 修改港口装卸费结算
+     * @param bmsportHandlingFee
+     * @return
+     */
+    @ApiModelProperty(value = "修改港口装卸费结算")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "bmsportHandlingFee", value = "港口装卸费", required = false, dataType = "BmsportHandlingFee"),
+    })
+    @PostMapping("/updatePortHandlingFee")
+    public RESTfulResult updatePortHandlingFee(@RequestBody BmsportHandlingFee bmsportHandlingFee){
+        int code1 = bmsportHandlingFeeService.update(bmsportHandlingFee);
+        return success(code1);
+    }
+
+    /**
+     * 查询修改数据渲染表单
+     * @param feeId
+     * @return
+     */
+    @ApiOperation(value="查询修改数据渲染表单")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "feeId",value = "港口装卸费结算字段",required = true,paramType = "java.math.BigDecimal")
+    })
+    @PostMapping("/getFeeToUpdate/{feeId}")
+    public RESTfulResult getFeeToUpdate(@PathVariable("feeId") BigDecimal feeId) {
+        List<Map<String,Object>> tmsshipLoadShipResult = bmsportHandlingFeeService.getFeeToUpdate(feeId);
+        return success(tmsshipLoadShipResult);
+    }
+
+    /**
+     * 逻辑删除港口装卸费结算
+     * @param feeId
+     * @return
+     */
+    @ApiModelProperty(value = "逻辑删除港口装卸费结算")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "feeId", value = "主键id", required = false, dataType = "java.util.List"),
+    })
+    @PostMapping("/deletePortHandlingFee/{feeId}")
+    public RESTfulResult deletePortHandlingFee(@PathVariable("feeId") String feeId){
+        int code1 = bmsportHandlingFeeService.deleteByUpdate(new BigDecimal(feeId));
+        return success(code1);
+    }
+
+    /**
+     * 获取物资下拉
+     * @return
+     */
+    @GetMapping(value = "/getMaterialId")
+    public RESTfulResult getMaterialId(){
+        List<Map<String,Object>> list= bmsportHandlingFeeService.getMaterialId();
+        return success(list);
+    }
+
+    /**
+     * 获取价格下拉
+     * @return
+     */
+    @GetMapping(value = "/getPriceId")
+    public RESTfulResult getPriceId(){
+        List<Map<String,Object>> list= bmsportHandlingFeeService.getPriceId();
+        return success(list);
+    }
+
+}

+ 85 - 6
src/main/java/com/steerinfo/dil/controller/BmsshipDetailsOrderController.java

@@ -1,5 +1,7 @@
 package com.steerinfo.dil.controller;
 
+import com.alibaba.fastjson.JSON;
+import com.steerinfo.dil.feign.ESFeign;
 import com.steerinfo.dil.service.impl.BmsshipDetailsOrderSerivceImpl;
 import com.steerinfo.dil.util.BaseRESTfulController;
 import com.steerinfo.dil.util.ColumnDataUtil;
@@ -12,7 +14,9 @@ import io.swagger.annotations.ApiModelProperty;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.io.IOException;
 import java.math.BigDecimal;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -30,6 +34,8 @@ public class BmsshipDetailsOrderController extends BaseRESTfulController {
     BmsshipDetailsOrderSerivceImpl bmsshipDetailsOrderSerivce;
     @Autowired
     ColumnDataUtil columnDataUtil;
+    @Autowired
+    ESFeign esFeign;
 
     /**
      * 展示详单信息
@@ -49,15 +55,51 @@ public class BmsshipDetailsOrderController extends BaseRESTfulController {
     public RESTfulResult getDetailsOrderList(@RequestBody(required = false) Map<String,Object> mapValue,
                                           Integer pageNum,
                                           Integer pageSize,
-                                          Integer apiId) {
-        List<Map<String, Object>> list = bmsshipDetailsOrderSerivce.getDetailsOrderList(mapValue);
+                                          Integer apiId)throws IOException {
+        //初始化过滤
+        List<Map<String, Object>> detailListTotal=null;
+        //如果有条件查询则跳过初始化,和创建索引
+        if(mapValue==null){
+            //将查询结果存入索引中
+            detailListTotal = bmsshipDetailsOrderSerivce.getDetailsOrderList(null);
+            Map<String, Object> map = new HashMap<>();
+            //添加索引
+            map.put("index","get_detail_order_list");
+            //添加id
+            map.put("indexId","detailsId");
+            detailListTotal.add(map);
+            //新建索引
+            String s = JSON.toJSONString(detailListTotal);
+            esFeign.insertIndex(detailListTotal);
+            //删除
+            detailListTotal.remove(detailListTotal.size()-1);
+        }
+        if (detailListTotal == null) {
+            detailListTotal = bmsshipDetailsOrderSerivce.getDetailsOrderList(mapValue);
+        }
         PageHelper.startPage(pageNum, pageSize);
         //分页查询数据
         List<Map<String, Object>> columnList = bmsshipDetailsOrderSerivce.getDetailsOrderList(mapValue);
-        PageListAdd data = columnDataUtil.tableColumnData(apiId, list, columnList);
+        PageListAdd data = columnDataUtil.tableColumnData(apiId, detailListTotal, columnList);
         return success(data);
     }
 
+    @PostMapping("/getDetailsOrderList/{apiId}")
+    public RESTfulResult getDetailListByCon(@PathVariable("apiId") Integer apiId,
+                                            @RequestBody(required=false) Map<String,Object> mapValue,
+                                            Integer pageNum,
+                                            Integer pageSize,
+                                            String con){
+        if(mapValue==null){
+            mapValue=new HashMap<>();
+        }
+        //设置要查询的索引名称
+        String index="get_detail_order_list";
+        //获取查询结果
+        PageListAdd list = esFeign.getConResult(mapValue,index,apiId,pageNum,pageSize,con);
+        return success(list);
+    }
+
     /**
      * 展示未生成账单的详单信息
      * @param mapValue
@@ -65,6 +107,7 @@ public class BmsshipDetailsOrderController extends BaseRESTfulController {
      * @param pageSize
      * @param apiId
      * @return
+     * @throws IOException
      */
     @ApiModelProperty(value = "展示未生成账单的详单信息")
     @ApiImplicitParams({
@@ -76,15 +119,51 @@ public class BmsshipDetailsOrderController extends BaseRESTfulController {
     public RESTfulResult getUncomplateDetailsOrderList(@RequestBody(required = false) Map<String,Object> mapValue,
                                              Integer pageNum,
                                              Integer pageSize,
-                                             Integer apiId) {
-        List<Map<String, Object>> list = bmsshipDetailsOrderSerivce.getUncomplateDetailsOrderList(mapValue);
+                                             Integer apiId)throws IOException {
+        //初始化过滤
+        List<Map<String, Object>> detailListTotal=null;
+        //如果有条件查询则跳过初始化,和创建索引
+        if(mapValue==null){
+            //将查询结果存入索引中
+            detailListTotal = bmsshipDetailsOrderSerivce.getUncomplateDetailsOrderList(null);
+            Map<String, Object> map = new HashMap<>();
+            //添加索引
+            map.put("index","get_uncomplate_detail_order_list");
+            //添加id
+            map.put("indexId","detailsId");
+            detailListTotal.add(map);
+            //新建索引
+            String s = JSON.toJSONString(detailListTotal);
+            esFeign.insertIndex(detailListTotal);
+            //删除
+            detailListTotal.remove(detailListTotal.size()-1);
+        }
+        if (detailListTotal==null) {
+            detailListTotal = bmsshipDetailsOrderSerivce.getUncomplateDetailsOrderList(mapValue);
+        }
         PageHelper.startPage(pageNum, pageSize);
         //分页查询数据
         List<Map<String, Object>> columnList = bmsshipDetailsOrderSerivce.getUncomplateDetailsOrderList(mapValue);
-        PageListAdd data = columnDataUtil.tableColumnData(apiId, list, columnList);
+        PageListAdd data = columnDataUtil.tableColumnData(apiId, detailListTotal, columnList);
         return success(data);
     }
 
+    @PostMapping("/getUncomplateDetailsOrderList/{apiId}")
+    public RESTfulResult getUncomplateDetailsOrderList(@PathVariable("apiId") Integer apiId,
+                                            @RequestBody(required=false) Map<String,Object> mapValue,
+                                            Integer pageNum,
+                                            Integer pageSize,
+                                            String con){
+        if(mapValue==null){
+            mapValue=new HashMap<>();
+        }
+        //设置要查询的索引名称
+        String index="get_uncomplate_detail_order_list";
+        //获取查询结果
+        PageListAdd list = esFeign.getConResult(mapValue,index,apiId,pageNum,pageSize,con);
+        return success(list);
+    }
+
     /**
      * 新增详单
      * @param resultId

+ 29 - 29
src/main/java/com/steerinfo/dil/controller/BmsshipStatementController.java

@@ -242,35 +242,35 @@ public class BmsshipStatementController extends BaseRESTfulController {
         return success(data);
     }
 
-    /**
-     * 展示账单下的所有费用
-     * @param batchId
-     * @return
-     */
-    @ApiOperation(value="展示账单下的所有费用")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "batchId", value = "账单id", required = false, dataType = "BigDecimal"),
-    })
-    @PostMapping(value = "/getAllCost")
-    public RESTfulResult getAllCost(BigDecimal batchId) throws Exception {
-        // 损失费
-        BigDecimal lossCost = bmstruckFormulaService.generateLossCost(batchId);
-        // 水分检测费
-        BigDecimal waterFees = new BigDecimal(bmstruckFormulaService.selectWaterFees(batchId));
-        // 总金额和支付单位
-        List<Map<String,Object>> listMap = bmsshipStatementService.getShipperAndAmount(batchId);
-        Map map = listMap.get(0);
-        // 总金额
-        BigDecimal totalAmount = (BigDecimal) map.get("statementTotalAmount");
-        Double shipCostDouble = (totalAmount.doubleValue() - lossCost.doubleValue() - waterFees.doubleValue());
-        DecimalFormat df = new DecimalFormat("0.00");
-        String shipCost = df.format(shipCostDouble);
-        String lossCostStr = df.format(lossCost.doubleValue());
-        map.put("lossCost",lossCostStr);
-        map.put("waterFees",waterFees);
-        map.put("shipCost",shipCost);
-        return success(listMap);
-    }
+//    /**
+//     * 展示账单下的所有费用
+//     * @param batchId
+//     * @return
+//     */
+//    @ApiOperation(value="展示账单下的所有费用")
+//    @ApiImplicitParams({
+//            @ApiImplicitParam(name = "batchId", value = "账单id", required = false, dataType = "BigDecimal"),
+//    })
+//    @PostMapping(value = "/getAllCost")
+//    public RESTfulResult getAllCost(BigDecimal batchId) throws Exception {
+//        // 损失费
+//        BigDecimal lossCost = bmstruckFormulaService.generateLossCost(batchId);
+//        // 水分检测费
+//        BigDecimal waterFees = new BigDecimal(bmstruckFormulaService.selectWaterFees(batchId));
+//        // 总金额和支付单位
+//        List<Map<String,Object>> listMap = bmsshipStatementService.getShipperAndAmount(batchId);
+//        Map map = listMap.get(0);
+//        // 总金额
+//        BigDecimal totalAmount = (BigDecimal) map.get("statementTotalAmount");
+//        Double shipCostDouble = (totalAmount.doubleValue() - lossCost.doubleValue() - waterFees.doubleValue());
+//        DecimalFormat df = new DecimalFormat("0.00");
+//        String shipCost = df.format(shipCostDouble);
+//        String lossCostStr = df.format(lossCost.doubleValue());
+//        map.put("lossCost",lossCostStr);
+//        map.put("waterFees",waterFees);
+//        map.put("shipCost",shipCost);
+//        return success(listMap);
+//    }
 
     /**
      * 展示详单下的船运实绩

+ 3 - 3
src/main/java/com/steerinfo/dil/controller/BmstruckFormulaController.java

@@ -40,17 +40,17 @@ public class BmstruckFormulaController extends BaseRESTfulController {
      * 查询途损费计算公式
      * @return
      */
-    @ApiOperation(value = "查询水运费计算公式")
+    @ApiOperation(value = "查询途损费计算公式")
     @PostMapping("/getLossFeesFormula")
     public RESTfulResult getLossFeesFormula(){
         return success(bmstruckFormulaService.selectAnyFormula(new BigDecimal(5)));
     }
 
     /**
-     * 查询水运费计算公式
+     * 查询水分质检计算公式
      * @return
      */
-    @ApiOperation(value = "查询水运费计算公式")
+    @ApiOperation(value = "查询水分质检计算公式")
     @PostMapping("/getWaterFeesFormula")
     public RESTfulResult getWaterFeesFormula(){
         return success(bmstruckFormulaService.selectAnyFormula(new BigDecimal(6)));

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

@@ -12,7 +12,7 @@ import java.util.Map;
  * @Date 2021/6/23 9:58
  * @Version 1.0
  */
-@FeignClient(value = "DIL-COLUMN-DATA-DEV",url = "192.168.10.167:8083")
+@FeignClient(value = "DIL-COLUMN-DATA-DEV",url = "192.168.0.106:8083")
 public interface ColumnDataFeign {
     @RequestMapping("getColumnData")
     List<Map<String,Object>> getColumnData(@RequestParam("apiId") Integer apiId);

+ 31 - 0
src/main/java/com/steerinfo/dil/feign/ESFeign.java

@@ -0,0 +1,31 @@
+package com.steerinfo.dil.feign;
+
+import com.steerinfo.dil.util.PageListAdd;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.io.IOException;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author zhangnan
+ * @Date 2021/7/27 15:49
+ * @Version 1.0
+ */
+
+@FeignClient(value = "DIL-ES-DEV",url = "https://portal-dev.steerinfo.com/icore.icp.web/pass/dil/dil-es-api")
+public interface ESFeign {
+    @PostMapping("getConResult")
+    PageListAdd getConResult(@RequestBody(required = false) Map<String, Object> mapValue,
+                             @RequestParam String index,
+                             @RequestParam Integer apiId,
+                             @RequestParam Integer pageNum,
+                             @RequestParam Integer pageSize,
+                             @RequestParam String con);
+
+    @PostMapping( value = "insertIndex",consumes = "application/json", produces = "application/json")
+    void insertIndex(@RequestBody List<Map<String, Object>> detailListTotal);
+}

+ 50 - 0
src/main/java/com/steerinfo/dil/mapper/BmsportHandlingFeeMapper.java

@@ -0,0 +1,50 @@
+package com.steerinfo.dil.mapper;
+
+import com.steerinfo.dil.model.BmsportHandlingFee;
+import com.steerinfo.framework.mapper.IBaseMapper;
+import java.math.*;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface BmsportHandlingFeeMapper extends IBaseMapper<BmsportHandlingFee, BigDecimal> {
+    /**
+     * 展示港口装卸费列表
+     * @param mapValue
+     * @return
+     */
+    List<Map<String, Object>> getPortHandlingFeeList(Map<String, Object> mapValue);
+
+    /**
+     * 得到修改渲染
+     * @param feeId
+     * @return
+     */
+    List<Map<String,Object>> getFeeToUpdate(BigDecimal feeId);
+
+    /**
+     * 得到物资id下拉
+     * @return
+     */
+    List<Map<String,Object>> getMaterialId();
+
+    /**
+     * 得到价格id
+     * @return
+     */
+    List<Map<String,Object>> getPriceId();
+
+    /**
+     * 查询最大id
+     * @return
+     */
+    BigDecimal selectMaxId();
+
+    /**
+     * 得到单价id下拉
+     * @return
+     */
+    List<Map<String, Object>> selectPriceId();
+}

+ 7 - 0
src/main/java/com/steerinfo/dil/mapper/BmstruckFormulaMapper.java

@@ -92,4 +92,11 @@ public interface BmstruckFormulaMapper extends IBaseMapper<BmstruckFormula, BigD
      * @return
      */
     Map<String,Object> selectAnyFormula(BigDecimal formulaId);
+
+    /**
+     * 查询港口装卸费单价
+     * @param priceId
+     * @return
+     */
+    BigDecimal getPriceValue(BigDecimal priceId);
 }

+ 213 - 0
src/main/java/com/steerinfo/dil/model/BmsportHandlingFee.java

@@ -0,0 +1,213 @@
+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 BmsportHandlingFee implements IBasePO<BigDecimal> {
+    /**
+     * 主键ID(FEE_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="主键ID",required=true)
+    private BigDecimal feeId;
+
+    /**
+     * 原料物资ID(MATERIAL_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="原料物资ID",required=false)
+    private BigDecimal materialId;
+
+    /**
+     * 外轮船名(FEE_FOREIGN_SHIP_NAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="外轮船名",required=false)
+    private String feeForeignShipName;
+
+    /**
+     * 物资吨位(FEE_MATERIAL_TONNAGE,DECIMAL,0)
+     */
+    @ApiModelProperty(value="物资吨位",required=false)
+    private BigDecimal feeMaterialTonnage;
+
+    /**
+     * 单价ID(PRICE_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="单价ID",required=false)
+    private BigDecimal priceId;
+
+    /**
+     * 港口装卸费=港口商检吨位*单价(FEE_VALUE,DECIMAL,0)
+     */
+    @ApiModelProperty(value="港口装卸费=港口商检吨位*单价",required=false)
+    private BigDecimal feeValue;
+
+    /**
+     * 记录创建人(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;
+
+    /**
+     * 逻辑删除(DELETED,DECIMAL,0)
+     */
+    @ApiModelProperty(value="逻辑删除",required=false)
+    private BigDecimal deleted;
+
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public BigDecimal getId() {
+        return this.feeId;
+    }
+
+    @Override
+    public void setId(BigDecimal feeId) {
+        this.feeId = feeId;
+    }
+
+    public BigDecimal getFeeId() {
+        return feeId;
+    }
+
+    public void setFeeId(BigDecimal feeId) {
+        this.feeId = feeId;
+    }
+
+    public BigDecimal getMaterialId() {
+        return materialId;
+    }
+
+    public void setMaterialId(BigDecimal materialId) {
+        this.materialId = materialId;
+    }
+
+    public String getFeeForeignShipName() {
+        return feeForeignShipName;
+    }
+
+    public void setFeeForeignShipName(String feeForeignShipName) {
+        this.feeForeignShipName = feeForeignShipName == null ? null : feeForeignShipName.trim();
+    }
+
+    public BigDecimal getFeeMaterialTonnage() {
+        return feeMaterialTonnage;
+    }
+
+    public void setFeeMaterialTonnage(BigDecimal feeMaterialTonnage) {
+        this.feeMaterialTonnage = feeMaterialTonnage;
+    }
+
+    public BigDecimal getPriceId() {
+        return priceId;
+    }
+
+    public void setPriceId(BigDecimal priceId) {
+        this.priceId = priceId;
+    }
+
+    public BigDecimal getFeeValue() {
+        return feeValue;
+    }
+
+    public void setFeeValue(BigDecimal feeValue) {
+        this.feeValue = feeValue;
+    }
+
+    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(", feeId=").append(feeId);
+        sb.append(", materialId=").append(materialId);
+        sb.append(", feeForeignShipName=").append(feeForeignShipName);
+        sb.append(", feeMaterialTonnage=").append(feeMaterialTonnage);
+        sb.append(", priceId=").append(priceId);
+        sb.append(", feeValue=").append(feeValue);
+        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();
+    }
+}

+ 68 - 0
src/main/java/com/steerinfo/dil/service/IBmsportHandlingFeeService.java

@@ -0,0 +1,68 @@
+package com.steerinfo.dil.service;
+
+import com.steerinfo.dil.model.BmsportHandlingFee;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:HuJianGuo
+ * @GreateTime:2021/9/27 14:14
+ * @Version:V2.0
+ */
+public interface IBmsportHandlingFeeService {
+    /**
+     * 修改
+     * @param bmsportHandlingFee
+     * @return
+     */
+    int update(BmsportHandlingFee bmsportHandlingFee);
+
+    /**
+     * 删除
+     * @param feeId
+     * @return
+     */
+    int deleteByUpdate(BigDecimal feeId);
+
+    /**
+     * 新增
+     * @param map
+     * @return
+     */
+    int insert(Map<String,Object> map) throws Exception;
+
+    /**
+     * 展示港口装卸费列表
+     * @param mapValue
+     * @return
+     */
+    List<Map<String, Object>> getPortHandlingFeeList(Map<String, Object> mapValue);
+
+    /**
+     * 查询最大id
+     * @return
+     */
+    BigDecimal selectMaxId();
+
+    /**
+     * 得到修改渲染
+     * @param feeId
+     * @return
+     */
+    List<Map<String,Object>> getFeeToUpdate(BigDecimal feeId);
+
+    /**
+     * 得到物资id下拉
+     * @return
+     */
+    List<Map<String,Object>> getMaterialId();
+
+    /**
+     * 得到价格下拉
+     * @return
+     */
+    List<Map<String, Object>> getPriceId();
+}

+ 136 - 0
src/main/java/com/steerinfo/dil/service/impl/BmsportHandlingFeeServiceImpl.java

@@ -0,0 +1,136 @@
+package com.steerinfo.dil.service.impl;
+
+import com.steerinfo.dil.mapper.BmsportHandlingFeeMapper;
+import com.steerinfo.dil.model.BmsportHandlingFee;
+import com.steerinfo.dil.service.IBmsportHandlingFeeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.text.DecimalFormat;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:HuJianGuo
+ * @GreateTime:2021/9/27 14:14
+ * @Version:V2.0
+ */
+@Service
+public class BmsportHandlingFeeServiceImpl implements IBmsportHandlingFeeService {
+
+    @Autowired
+    BmsportHandlingFeeMapper bmsportHandlingFeeMapper;
+    @Autowired
+    BmstruckFormulaServiceImpl bmstruckFormulaService;
+
+    /**
+     * 修改港口装卸费结算
+     * @param bmsportHandlingFee
+     * @return
+     */
+    @Override
+    public int update(BmsportHandlingFee bmsportHandlingFee) {
+        bmsportHandlingFee.setUpdateTime(new Date());
+        return bmsportHandlingFeeMapper.updateByPrimaryKeySelective(bmsportHandlingFee);
+    }
+
+    /**
+     * 逻辑删除港口装卸费结算
+     * @param feeId
+     * @return
+     */
+    @Override
+    public int deleteByUpdate(BigDecimal feeId) {
+        BmsportHandlingFee bmsportHandlingFee = bmsportHandlingFeeMapper.selectByPrimaryKey(feeId);
+        bmsportHandlingFee.setDeleted(new BigDecimal(1));
+        return bmsportHandlingFeeMapper.updateByPrimaryKeySelective(bmsportHandlingFee);
+    }
+
+    /**
+     * 新增港口装卸费结算
+     * @param map
+     * @return
+     */
+    @Override
+    public int insert(Map<String,Object> map) throws Exception {
+        Map<String,Object> mapVal = (Map<String, Object>) map.get("mapVal");
+        Map<String,Object> rowMap = (Map<String, Object>) map.get("rowMap");
+        BigDecimal materialId = new BigDecimal((Integer) rowMap.get("materialId")) ;
+        String feeForeignShipName = (String) rowMap.get("foreignShipName");
+        BigDecimal feeId = selectMaxId();
+        BigDecimal feeMaterialTonnage = new BigDecimal((String) mapVal.get("feeMaterialTonnage"));
+        List<Map<String,Object>> priceList = bmsportHandlingFeeMapper.getPriceId();
+        Map<String, Object> priceMap = priceList.get(0);
+        BigDecimal priceId = (BigDecimal) priceMap.get("priceId");
+        BigDecimal fee = bmstruckFormulaService.generatePortHandlingFee(feeMaterialTonnage, priceId);
+        DecimalFormat df = new DecimalFormat("0.00");
+        String format = df.format(fee.doubleValue());
+        BigDecimal feeValue = new BigDecimal(format);
+        BmsportHandlingFee bmsportHandlingFee = new BmsportHandlingFee();
+        bmsportHandlingFee.setDeleted(new BigDecimal(0));
+        bmsportHandlingFee.setPriceId(priceId);
+        bmsportHandlingFee.setFeeId(feeId);
+        bmsportHandlingFee.setFeeMaterialTonnage(feeMaterialTonnage);
+        bmsportHandlingFee.setFeeValue(feeValue);
+        bmsportHandlingFee.setMaterialId(materialId);
+        bmsportHandlingFee.setFeeForeignShipName(feeForeignShipName);
+        // 设置常规字段
+        bmsportHandlingFee.setInsertTime(new Date());
+        bmsportHandlingFee.setInsertUsername("admin");
+        bmsportHandlingFee.setUpdateTime(new Date());
+        bmsportHandlingFee.setUpdateUsername("admin");
+        bmsportHandlingFee.setInsertUpdateRemark("无");
+        return bmsportHandlingFeeMapper.insertSelective(bmsportHandlingFee);
+    }
+
+    /**
+     * 展示港口装卸费列表
+     * @param mapValue
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getPortHandlingFeeList(Map<String, Object> mapValue) {
+        return bmsportHandlingFeeMapper.getPortHandlingFeeList(mapValue);
+    }
+
+    /**
+     * 查询最大id
+     * @return
+     */
+    @Override
+    public BigDecimal selectMaxId() {
+        BigDecimal feeId = bmsportHandlingFeeMapper.selectMaxId();
+        return feeId == null ? new BigDecimal(1) : new BigDecimal(feeId.intValue() + 1);
+    }
+
+    /**
+     * 查询修改渲染数据
+     * @param feeId
+     * @return
+     */
+    @Override
+    public List<Map<String,Object>> getFeeToUpdate(BigDecimal feeId) {
+        return bmsportHandlingFeeMapper.getFeeToUpdate(feeId);
+    }
+
+    /**
+     * 获取物资id下拉
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getMaterialId() {
+        return bmsportHandlingFeeMapper.getMaterialId();
+    }
+
+    /**
+     * 获取单价下拉
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getPriceId() {
+        return bmsportHandlingFeeMapper.selectPriceId();
+    }
+}

+ 1 - 1
src/main/java/com/steerinfo/dil/service/impl/BmsshipDetailsOrderSerivceImpl.java

@@ -61,7 +61,7 @@ public class BmsshipDetailsOrderSerivceImpl implements IBmsshipDetailsOrderServi
         BigDecimal detailsId = selectMaxId();
         bmsshipDetailsOrder.setDetailsId(detailsId);
         // 设置详单号
-        String detailsNo = noUtil.setResultNo("XD", detailsId);
+        String detailsNo = noUtil.setResultNo("CYXD", detailsId);
         bmsshipDetailsOrder.setDetailsNo(detailsNo);
         // 设置详单时间
         bmsshipDetailsOrder.setDetailsTime(new Date());

+ 1 - 1
src/main/java/com/steerinfo/dil/service/impl/BmsshipStatementServiceImpl.java

@@ -44,7 +44,7 @@ public class BmsshipStatementServiceImpl implements IBmsshipStatementService {
         BmsshipStatement bmsshipStatement = new BmsshipStatement();
         BigDecimal statementId = selectMaxId();
         bmsshipStatement.setStatementId(statementId);
-        String statementNo = noUtil.setResultNo("ZD",statementId);
+        String statementNo = noUtil.setResultNo("CYZD",statementId);
         bmsshipStatement.setStatementNo(statementNo);
         BigDecimal statementShipperId = new BigDecimal((Integer) listMap.get(0).get("statementShipperId"));
         bmsshipStatement.setStatementShipperId(statementShipperId);

+ 19 - 1
src/main/java/com/steerinfo/dil/service/impl/BmstruckFormulaServiceImpl.java

@@ -133,7 +133,7 @@ public class BmstruckFormulaServiceImpl implements IBmstruckFormulaService {
         DecimalFormat df = new DecimalFormat("0.000");
         String averageMoistureContent = df.format(averageContent.doubleValue());
         // 到厂含水值
-        Double arrivalContent = new Double(0.091);
+        Double arrivalContent = new Double(0.031);
         // 替换船运计算公式
         formula_string = formula_string.replace("装船湿吨",shipWeight.toString())
                 .replace("比例",proportion.toString())
@@ -382,6 +382,24 @@ public class BmstruckFormulaServiceImpl implements IBmstruckFormulaService {
         return calSufExpr(s);
     }
 
+    /**
+     * 替换港口装卸费计费公式并进行计算
+     * @param feeMaterialTonnage
+     * @param priceId
+     * @return
+     * @throws Exception
+     */
+    public BigDecimal generatePortHandlingFee(BigDecimal feeMaterialTonnage,BigDecimal priceId) throws Exception {
+        // 得到船运计费公式
+        String formula_string = selectFormula(new BigDecimal(9));
+        BigDecimal priceValue = bmstruckFormulaMapper.getPriceValue(priceId);
+        // 替换船运计算公式
+        formula_string = formula_string.replace("港口商检吨位",feeMaterialTonnage.toString())
+                .replace("单价",priceValue.toString());
+        String s = toSufExpr(formula_string);
+        return calSufExpr(s);
+    }
+
     /**
      * 中缀转换后缀表达式
      */

+ 13 - 3
src/main/java/com/steerinfo/dil/util/NoUtil.java

@@ -19,21 +19,31 @@ public class NoUtil {
         String resultNo = noStr +  now.getYear();
         Integer month = now.getMonthValue();
         String monthStr = month.toString();
+        Integer day = now.getDayOfMonth();
+        String dayStr = day.toString();
         if (monthStr.length() != 2) {
             resultNo = resultNo + "0" + now.getMonthValue();
         }
         else {
             resultNo = resultNo + now.getMonthValue();
         }
-        resultNo = resultNo + now.getDayOfMonth();
+        if (dayStr.length() != 2) {
+            resultNo = resultNo + "0" + now.getDayOfMonth();
+        }
+        else {
+            resultNo = resultNo + now.getDayOfMonth();
+        }
         switch ((resultId.toString()).length()) {
             case 1:
-                resultNo = resultNo + "000" + resultId;
+                resultNo = resultNo + "0000" + resultId;
                 break;
             case 2:
-                resultNo = resultNo + "00" + resultId;
+                resultNo = resultNo + "000" + resultId;
                 break;
             case 3:
+                resultNo = resultNo + "00" + resultId;
+                break;
+            case 4:
                 resultNo = resultNo + "0" + resultId;
                 break;
             default:resultNo = resultNo + resultId;

+ 1 - 1
src/main/resources/application-dev.yml

@@ -5,5 +5,5 @@ spring:
     username: DIL0901
     driver-class-name: oracle.jdbc.OracleDriver
   application:
-    name: [name]
+    name: dil-bmsship-api-dev
 

+ 1 - 1
src/main/resources/application-prod.yml

@@ -5,4 +5,4 @@ spring:
     username: DIL0901
     driver-class-name: oracle.jdbc.OracleDriver
   application:
-    name: [name]
+    name: dil-bmsship-api-dev

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

@@ -12,6 +12,10 @@ spring:
   mvc:
     static-path-pattern:
 
+#openfeign:
+#  ESFeign:
+#    url: ${ESFEIGN_URL:192.168.0.107:8099}
+
 #eureka设置
 eureka:
   client:

+ 493 - 0
src/main/resources/com/steerinfo/dil/mapper/BmsportHandlingFeeMapper.xml

@@ -0,0 +1,493 @@
+<?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.BmsportHandlingFeeMapper">
+    <resultMap id="BaseResultMap" type="com.steerinfo.dil.model.BmsportHandlingFee">
+        <id column="FEE_ID" jdbcType="DECIMAL" property="feeId"/>
+        <result column="MATERIAL_ID" jdbcType="DECIMAL" property="materialId"/>
+        <result column="FEE_FOREIGN_SHIP_NAME" jdbcType="VARCHAR" property="feeForeignShipName"/>
+        <result column="FEE_MATERIAL_TONNAGE" jdbcType="DECIMAL" property="feeMaterialTonnage"/>
+        <result column="PRICE_ID" jdbcType="DECIMAL" property="priceId"/>
+        <result column="FEE_VALUE" jdbcType="DECIMAL" property="feeValue"/>
+        <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">
+        FEE_ID, MATERIAL_ID, FEE_FOREIGN_SHIP_NAME, FEE_MATERIAL_TONNAGE, PRICE_ID, FEE_VALUE,
+    INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK,
+    DELETED
+    </sql>
+    <sql id="columns_alias">
+        t.FEE_ID, t.MATERIAL_ID, t.FEE_FOREIGN_SHIP_NAME, t.FEE_MATERIAL_TONNAGE, t.PRICE_ID,
+    t.FEE_VALUE, 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 BMSPORT_HANDLING_FEE
+    </sql>
+    <sql id="select_alias">
+        SELECT
+        <include refid="columns_alias"/>
+        FROM BMSPORT_HANDLING_FEE t
+    </sql>
+    <sql id="where">
+        <where>
+            <if test="feeId != null">
+                and FEE_ID = #{feeId}
+            </if>
+            <if test="materialId != null">
+                and MATERIAL_ID = #{materialId}
+            </if>
+            <if test="feeForeignShipName != null and feeForeignShipName != ''">
+                and FEE_FOREIGN_SHIP_NAME = #{feeForeignShipName}
+            </if>
+            <if test="feeMaterialTonnage != null">
+                and FEE_MATERIAL_TONNAGE = #{feeMaterialTonnage}
+            </if>
+            <if test="priceId != null">
+                and PRICE_ID = #{priceId}
+            </if>
+            <if test="feeValue != null">
+                and FEE_VALUE = #{feeValue}
+            </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="feeId != null">
+                and FEE_ID = #{feeId}
+            </if>
+            <if test="materialId != null">
+                and MATERIAL_ID = #{materialId}
+            </if>
+            <if test="feeForeignShipName != null and feeForeignShipName != ''">
+                and FEE_FOREIGN_SHIP_NAME LIKE '%${feeForeignShipName}%'
+            </if>
+            <if test="feeMaterialTonnage != null">
+                and FEE_MATERIAL_TONNAGE = #{feeMaterialTonnage}
+            </if>
+            <if test="priceId != null">
+                and PRICE_ID = #{priceId}
+            </if>
+            <if test="feeValue != null">
+                and FEE_VALUE = #{feeValue}
+            </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 BMSPORT_HANDLING_FEE
+        where FEE_ID = #{feeId,jdbcType=DECIMAL}
+    </delete>
+    <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
+        delete from BMSPORT_HANDLING_FEE
+        where 1!=1
+        <if test="materialId != null">
+            or MATERIAL_ID = #{materialId}
+        </if>
+        <if test="feeForeignShipName != null and feeForeignShipName != ''">
+            or FEE_FOREIGN_SHIP_NAME = #{feeForeignShipName}
+        </if>
+        <if test="feeMaterialTonnage != null">
+            or FEE_MATERIAL_TONNAGE = #{feeMaterialTonnage}
+        </if>
+        <if test="priceId != null">
+            or PRICE_ID = #{priceId}
+        </if>
+        <if test="feeValue != null">
+            or FEE_VALUE = #{feeValue}
+        </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.BmsportHandlingFee">
+        insert into BMSPORT_HANDLING_FEE (FEE_ID, MATERIAL_ID, FEE_FOREIGN_SHIP_NAME,
+                                          FEE_MATERIAL_TONNAGE, PRICE_ID, FEE_VALUE,
+                                          INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME,
+                                          UPDATE_TIME, INSERT_UPDATE_REMARK, DELETED)
+        values (#{feeId,jdbcType=DECIMAL}, #{materialId,jdbcType=DECIMAL}, #{feeForeignShipName,jdbcType=VARCHAR},
+                #{feeMaterialTonnage,jdbcType=DECIMAL}, #{priceId,jdbcType=DECIMAL}, #{feeValue,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.BmsportHandlingFee">
+        insert into BMSPORT_HANDLING_FEE
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="feeId != null">
+                FEE_ID,
+            </if>
+            <if test="materialId != null">
+                MATERIAL_ID,
+            </if>
+            <if test="feeForeignShipName != null">
+                FEE_FOREIGN_SHIP_NAME,
+            </if>
+            <if test="feeMaterialTonnage != null">
+                FEE_MATERIAL_TONNAGE,
+            </if>
+            <if test="priceId != null">
+                PRICE_ID,
+            </if>
+            <if test="feeValue != null">
+                FEE_VALUE,
+            </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="feeId != null">
+                #{feeId,jdbcType=DECIMAL},
+            </if>
+            <if test="materialId != null">
+                #{materialId,jdbcType=DECIMAL},
+            </if>
+            <if test="feeForeignShipName != null">
+                #{feeForeignShipName,jdbcType=VARCHAR},
+            </if>
+            <if test="feeMaterialTonnage != null">
+                #{feeMaterialTonnage,jdbcType=DECIMAL},
+            </if>
+            <if test="priceId != null">
+                #{priceId,jdbcType=DECIMAL},
+            </if>
+            <if test="feeValue != null">
+                #{feeValue,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.BmsportHandlingFee">
+        update BMSPORT_HANDLING_FEE
+        set MATERIAL_ID           = #{materialId,jdbcType=DECIMAL},
+            FEE_FOREIGN_SHIP_NAME = #{feeForeignShipName,jdbcType=VARCHAR},
+            FEE_MATERIAL_TONNAGE  = #{feeMaterialTonnage,jdbcType=DECIMAL},
+            PRICE_ID              = #{priceId,jdbcType=DECIMAL},
+            FEE_VALUE             = #{feeValue,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 FEE_ID = #{feeId,jdbcType=DECIMAL}
+    </update>
+    <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.BmsportHandlingFee">
+        update BMSPORT_HANDLING_FEE
+        <set>
+            <if test="materialId != null">
+                MATERIAL_ID = #{materialId,jdbcType=DECIMAL},
+            </if>
+            <if test="feeForeignShipName != null">
+                FEE_FOREIGN_SHIP_NAME = #{feeForeignShipName,jdbcType=VARCHAR},
+            </if>
+            <if test="feeMaterialTonnage != null">
+                FEE_MATERIAL_TONNAGE = #{feeMaterialTonnage,jdbcType=DECIMAL},
+            </if>
+            <if test="priceId != null">
+                PRICE_ID = #{priceId,jdbcType=DECIMAL},
+            </if>
+            <if test="feeValue != null">
+                FEE_VALUE = #{feeValue,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 FEE_ID = #{feeId,jdbcType=DECIMAL}
+    </update>
+    <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
+        <include refid="select"/>
+        where FEE_ID = #{feeId,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 BMSPORT_HANDLING_FEE
+        (FEE_ID,
+        MATERIAL_ID, FEE_FOREIGN_SHIP_NAME,
+        FEE_MATERIAL_TONNAGE, PRICE_ID,
+        FEE_VALUE, INSERT_USERNAME, INSERT_TIME,
+        UPDATE_USERNAME, UPDATE_TIME,
+        INSERT_UPDATE_REMARK, DELETED)
+        ( <foreach collection="list" item="item" separator="union all">
+        select
+        #{item.feeId,jdbcType=DECIMAL},
+        #{item.materialId,jdbcType=DECIMAL}, #{item.feeForeignShipName,jdbcType=VARCHAR},
+        #{item.feeMaterialTonnage,jdbcType=DECIMAL}, #{item.priceId,jdbcType=DECIMAL},
+        #{item.feeValue,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 BMSPORT_HANDLING_FEE
+        set
+        FEE_ID=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.feeId,jdbcType=DECIMAL}
+        </foreach>
+        ,MATERIAL_ID=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.materialId,jdbcType=DECIMAL}
+        </foreach>
+        ,FEE_FOREIGN_SHIP_NAME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.feeForeignShipName,jdbcType=VARCHAR}
+        </foreach>
+        ,FEE_MATERIAL_TONNAGE=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.feeMaterialTonnage,jdbcType=DECIMAL}
+        </foreach>
+        ,PRICE_ID=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.priceId,jdbcType=DECIMAL}
+        </foreach>
+        ,FEE_VALUE=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.feeValue,jdbcType=DECIMAL}
+        </foreach>
+        ,INSERT_USERNAME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.insertUsername,jdbcType=VARCHAR}
+        </foreach>
+        ,INSERT_TIME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.insertTime,jdbcType=TIMESTAMP}
+        </foreach>
+        ,UPDATE_USERNAME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.updateUsername,jdbcType=VARCHAR}
+        </foreach>
+        ,UPDATE_TIME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.updateTime,jdbcType=TIMESTAMP}
+        </foreach>
+        ,INSERT_UPDATE_REMARK=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.insertUpdateRemark,jdbcType=VARCHAR}
+        </foreach>
+        ,DELETED=
+        <foreach collection="list" item="item" index="index" separator=" " open="case FEE_ID" close="end">
+            when #{item.feeId,jdbcType=DECIMAL} then #{item.deleted,jdbcType=DECIMAL}
+        </foreach>
+        where FEE_ID in
+        <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
+            #{item.feeId,jdbcType=DECIMAL}
+        </foreach>
+    </update>
+    <delete id="batchDelete" parameterType="java.util.List">
+        delete from BMSPORT_HANDLING_FEE
+        where FEE_ID in
+        <foreach collection="list" item="id" open="(" close=")" separator=",">
+            #{id}
+        </foreach>
+    </delete>
+    <!-- 友情提示!!!-->
+    <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+    <!-- 查询最大id -->
+    <select id="selectMaxId" resultType="DECIMAL">
+        SELECT MAX(FEE_ID)
+        FROM BMSPORT_HANDLING_FEE
+    </select>
+
+    <!-- 得到港口装卸费价格id -->
+    <select id="getPriceId" resultType="java.util.Map">
+        SELECT acop.PRICE_ID as "priceId"
+        FROM AMS_CONTRACT_OTHER_PRICE acop
+        WHERE acop.PRICE_TYPE = '港口装卸单价'
+        ORDER BY acop.UPDATE_TIME
+    </select>
+    <sql id="orderBy">
+        <if test="orderField != null and orderField != ''">
+            order by "${orderField}"
+            <if test="orderType != null and orderType != ''">
+                ${orderType}
+            </if>
+        </if>
+        <if test="orderField == null  ">
+            order by "insertTime" desc
+        </if>
+    </sql>
+    <!-- 展示港口装卸费列表 -->
+    <select id="getPortHandlingFeeList" parameterType="java.util.Map" resultType="java.util.Map">
+        SELECT *
+        FROM (
+        SELECT
+        bhf.INSERT_TIME as "insertTime",
+        bhf.FEE_ID as "feeId",
+        rm.MATERIAL_NAME as "materialName",
+        bhf.FEE_FOREIGN_SHIP_NAME as "feeForeignShipName",
+        bhf.FEE_VALUE as "feeValue"
+        FROM BMSPORT_HANDLING_FEE bhf
+        LEFT JOIN RMS_MATERIAL rm
+        ON rm.MATERIAL_ID = bhf.MATERIAL_ID
+        WHERE bhf.DELETED = 0
+        )
+        <where>
+            <if test="materialName!= null">
+                and
+                <foreach collection="materialName" item="item" open="(" separator="," close=")">
+                    "materialName" in #{item}
+                </foreach>
+            </if>
+            <if test="feeForeignShipName!= null">
+                and
+                <foreach collection="feeForeignShipName" item="item" open="(" separator="," close=")">
+                    "feeForeignShipName" in #{item}
+                </foreach>
+            </if>
+            <if test="feeValue!= null">
+                and
+                <foreach collection="feeValue" item="item" open="(" separator="," close=")">
+                    "feeValue" in #{item}
+                </foreach>
+            </if>
+        </where>
+        <include refid="orderBy"></include>
+    </select>
+
+    <!-- 查询修改渲染数据 -->
+    <select id="getFeeToUpdate" parameterType="DECIMAL" resultType="java.util.Map">
+        SELECT bhf.MATERIAL_ID           as "materialId",
+               bhf.FEE_FOREIGN_SHIP_NAME as "feeForeignShipName",
+               bhf.FEE_MATERIAL_TONNAGE  as "feeMaterialTonnage",
+               bhf.PRICE_ID              as "priceId",
+               bhf.FEE_VALUE             as "feeValue"
+        FROM BMSPORT_HANDLING_FEE bhf
+--                  LEFT JOIN RMS_MATERIAL rm
+--                            ON rm.MATERIAL_ID = bhf.MATERIAL_ID
+--                  LEFT JOIN AMS_CONTRACT_OTHER_PRICE acop
+--                            ON acop.PRICE_ID = bhf.PRICE_ID
+        WHERE FEE_ID = #{feeId}
+    </select>
+
+    <!-- 下拉框 -->
+    <select id="getMaterialId" resultType="java.util.Map">
+        SELECT MATERIAL_ID   "id",
+               MATERIAL_ID   "value",
+               MATERIAL_NAME "label"
+        FROM RMS_MATERIAL
+        WHERE MATERIAL_TYPE_ID = 1
+    </select>
+
+    <select id="selectPriceId" resultType="java.util.Map">
+        SELECT PRICE_ID    "id",
+               PRICE_ID    "value",
+               PRICE_VALUE "label"
+        FROM AMS_CONTRACT_OTHER_PRICE
+        WHERE PRICE_TYPE = '港口装卸单价'
+    </select>
+</mapper>

+ 2 - 1
src/main/resources/com/steerinfo/dil/mapper/BmsshipStatementMapper.xml

@@ -752,6 +752,7 @@
         SELECT *
         FROM (
         SELECT DISTINCT apo.BATCH_ID as "batchId",
+        db.MATERIAL_ID as "materialId",
         apo.INSERT_TIME as "insertTime",
         apo.PURCHASE_ORDER_NO as "purchaseOrderNo",
         db.RESULT_FOREIGN_SHIP_NAME as "foreignShipName",
@@ -762,7 +763,6 @@
         LEFT JOIN RMS_MATERIAL rm
         ON rm.MATERIAL_ID = db.MATERIAL_ID
         )
-        <include refid="orderBy"></include>
         <where>
             <if test="purchaseOrderNo!= null">
                 and
@@ -783,6 +783,7 @@
                 </foreach>
             </if>
         </where>
+        <include refid="orderBy"></include>
     </select>
 
     <!-- 水分检测 -->

+ 15 - 8
src/main/resources/com/steerinfo/dil/mapper/BmstruckFormulaMapper.xml

@@ -463,8 +463,7 @@
 
     <!-- 查询计算公式 -->
     <select id="selectAnyFormula" resultType="java.util.Map" parameterType="DECIMAL">
-        SELECT
-               bf.FORMULA_NAME as "formula_name",
+        SELECT bf.FORMULA_NAME   as "formula_name",
                bf.FORMULA_STRING as "formula_string"
         FROM BMSTRUCK_FORMULA bf
         WHERE bf.FORMULA_ID = #{formulaId}
@@ -482,10 +481,10 @@
     <select id="selectBatchId" parameterType="DECIMAL" resultType="DECIMAL">
         SELECT db.BATCH_ID
         FROM DIL_BATCH db
-                 LEFT JOIN AMSTRUCK_PURPLAN ap
-                           ON db.BATCH_ID = ap.BATCH_ID
+                 LEFT JOIN AMS_PURCHASE_ORDER apo
+                           ON db.BATCH_ID = apo.BATCH_ID
                  LEFT JOIN OMSTRUCK_ORDER oo
-                           ON ap.PLAN_ID = oo.ORDER_PLAN_ID
+                           ON apo.PURCHASE_ORDER_ID = oo.ORDER_PLAN_ID
                  LEFT JOIN TMSTRUCK_TOTAL_RESULT ttr
                            ON ttr.ORDER_ID = oo.ORDER_ID
         WHERE ttr.RESULT_TOTAL_ID = #{resultTotalId}
@@ -531,11 +530,12 @@
                                     ON trucktr.RESULT_TOTAL_ID = twr.RESULT_TOTAL_ID
                           LEFT JOIN OMSTRUCK_ORDER oo
                                     ON oo.ORDER_ID = trucktr.ORDER_ID
-                          LEFT JOIN AMSTRUCK_PURPLAN ap
-                                    ON oo.ORDER_PLAN_ID = ap.PLAN_ID
+                          LEFT JOIN AMS_PURCHASE_ORDER apo
+                                    ON oo.ORDER_PLAN_ID = apo.PURCHASE_ORDER_ID
                           LEFT JOIN DIL_BATCH db
-                                    ON ap.BATCH_ID = db.BATCH_ID
+                                    ON apo.BATCH_ID = db.BATCH_ID
                  WHERE db.BATCH_ID = #{batchId}
+                   AND oo.ORDER_STATUS = 2
                  GROUP BY db.BATCH_ID
              )
     </select>
@@ -548,4 +548,11 @@
                            ON adn.BATCH_ID = db.BATCH_ID
         WHERE db.BATCH_ID = #{batchId}
     </select>
+
+    <!-- 查询单价 -->
+    <select id="getPriceValue" parameterType="DECIMAL" resultType="DECIMAL">
+        SELECT acop.PRICE_VALUE as "priceValue"
+        FROM AMS_CONTRACT_OTHER_PRICE acop
+        WHERE acop.PRICE_ID = #{priceId}
+    </select>
 </mapper>