瀏覽代碼

'合并销售采购火运结算'

HUJIANGUO 3 年之前
父節點
當前提交
4c1280ac59

+ 1 - 1
pom.xml

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

+ 18 - 14
src/main/java/com/steerinfo/dil/controller/BmstrainDetailsOrderController.java

@@ -35,6 +35,7 @@ public class BmstrainDetailsOrderController extends BaseRESTfulController {
 
     /**
      * 展示火运详单列表
+     *
      * @param mapValue
      * @param pageNum
      * @param pageSize
@@ -45,13 +46,13 @@ public class BmstrainDetailsOrderController extends BaseRESTfulController {
     @ApiImplicitParams({
             @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
             @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
-            @ApiImplicitParam(name = "apiId", value = "118", required = false, dataType = "BigDecimal")
+            @ApiImplicitParam(name = "apiId", value = "118", required = false, dataType = "Integer")
     })
     @PostMapping("/getTrainDetailsOrderList")
-    public RESTfulResult getTrainDetailsOrderList(@RequestBody(required = false) Map<String,Object> mapValue,
-                                        Integer pageNum,
-                                        Integer pageSize,
-                                        Integer apiId) {
+    public RESTfulResult getTrainDetailsOrderList(@RequestBody(required = false) Map<String, Object> mapValue,
+                                                  Integer pageNum,
+                                                  Integer pageSize,
+                                                  Integer apiId) {
         List<Map<String, Object>> list = bmstrainDetailsOrderService.getTrainDetailsOrderList(mapValue);
         PageHelper.startPage(pageNum, pageSize);
         //分页查询数据
@@ -62,6 +63,7 @@ public class BmstrainDetailsOrderController extends BaseRESTfulController {
 
     /**
      * 展示未转账单的火运详单列表
+     *
      * @param mapValue
      * @param pageNum
      * @param pageSize
@@ -75,10 +77,10 @@ public class BmstrainDetailsOrderController extends BaseRESTfulController {
             @ApiImplicitParam(name = "apiId", value = "118", required = false, dataType = "BigDecimal")
     })
     @PostMapping("/getUncomplateTrainDetailsList")
-    public RESTfulResult getUncomplateTrainDetailsList(@RequestBody(required = false) Map<String,Object> mapValue,
-                                                  Integer pageNum,
-                                                  Integer pageSize,
-                                                  Integer apiId) {
+    public RESTfulResult getUncomplateTrainDetailsList(@RequestBody(required = false) Map<String, Object> mapValue,
+                                                       Integer pageNum,
+                                                       Integer pageSize,
+                                                       Integer apiId) {
         List<Map<String, Object>> list = bmstrainDetailsOrderService.getUmcomplateTrainDetailsList(mapValue);
         PageHelper.startPage(pageNum, pageSize);
         //分页查询数据
@@ -89,6 +91,7 @@ public class BmstrainDetailsOrderController extends BaseRESTfulController {
 
     /**
      * 展示火运实绩
+     *
      * @param mapValue
      * @param pageNum
      * @param pageSize
@@ -102,10 +105,10 @@ public class BmstrainDetailsOrderController extends BaseRESTfulController {
             @ApiImplicitParam(name = "apiId", value = "122", required = false, dataType = "BigDecimal")
     })
     @PostMapping("/getTrainResultList")
-    public RESTfulResult getTrainResultList(@RequestBody(required = false) Map<String,Object> mapValue,
-                                                       Integer pageNum,
-                                                       Integer pageSize,
-                                                       Integer apiId) {
+    public RESTfulResult getTrainResultList(@RequestBody(required = false) Map<String, Object> mapValue,
+                                            Integer pageNum,
+                                            Integer pageSize,
+                                            Integer apiId) {
         List<Map<String, Object>> list = bmstrainDetailsOrderService.getTrainResultList(mapValue);
         PageHelper.startPage(pageNum, pageSize);
         //分页查询数据
@@ -116,6 +119,7 @@ public class BmstrainDetailsOrderController extends BaseRESTfulController {
 
     /**
      * 生成火运详单
+     *
      * @param map
      * @return
      */
@@ -124,7 +128,7 @@ public class BmstrainDetailsOrderController extends BaseRESTfulController {
             @ApiImplicitParam(name = "map", value = "火运实绩", required = false, dataType = "java.util.List"),
     })
     @PostMapping("/addTrainDetails")
-    public RESTfulResult addTrainDetails(@RequestBody Map<String,Object> map) {
+    public RESTfulResult addTrainDetails(@RequestBody Map<String, Object> map) {
         int code = bmstrainDetailsOrderService.insertSelective(map);
         return success(code);
     }

+ 123 - 0
src/main/java/com/steerinfo/dil/controller/BmstrainSettlementController.java

@@ -0,0 +1,123 @@
+package com.steerinfo.dil.controller;
+
+import com.steerinfo.dil.model.BmstrainSettlement;
+import com.steerinfo.dil.service.impl.BmstrainSettlementServiceImpl;
+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 org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:HuJianGuo
+ * @GreateTime:2021/10/18 11:53
+ * @Version:V2.0
+ */
+@RestController
+@RequestMapping("/${api.version}/bmstrainsettlement")
+public class BmstrainSettlementController extends BaseRESTfulController {
+    @Autowired
+    BmstrainSettlementServiceImpl bmstrainSettlementService;
+    @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 = "180", required = false, dataType = "BigDecimal")
+    })
+    @PostMapping("/getSettlementList")
+    public RESTfulResult getSettlementList(@RequestBody(required = false) Map<String,Object> mapValue,
+                                          Integer pageNum,
+                                          Integer pageSize,
+                                          Integer apiId) {
+        List<Map<String, Object>> list = bmstrainSettlementService.getSettlementList(mapValue);
+        PageHelper.startPage(pageNum, pageSize);
+        //分页查询数据
+        List<Map<String, Object>> columnList = bmstrainSettlementService.getSettlementList(mapValue);
+        PageListAdd data = columnDataUtil.tableColumnData(apiId, list, columnList);
+        return success(data);
+    }
+
+
+    /**
+     * 新增火运结算
+     * @param bmstrainSettlement
+     * @return
+     */
+    @ApiModelProperty(value = "新增火运结算")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "bmstrainSettlement", value = "火运结算实体", required = false, dataType = "BmstrainSettlement"),
+    })
+    @PostMapping("/addTrainSettlement")
+    public RESTfulResult addTrainSettlement(@RequestBody BmstrainSettlement bmstrainSettlement) {
+        int result = bmstrainSettlementService.addTrainSettlement(bmstrainSettlement);
+        return success(result);
+    }
+
+    /**
+     * 逻辑删除火运结算
+     * @param settlementId
+     * @return
+     */
+    @ApiModelProperty(value = "逻辑删除火运结算")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "settlementId", value = "结算id", required = false, dataType = "BigDecimal"),
+    })
+    @PostMapping("/deleteTrainSettlement/{settlementId}")
+    public RESTfulResult deleteTrainSettlement(@PathVariable("settlementId") BigDecimal settlementId) {
+        int result = bmstrainSettlementService.deleteTrainSettlement(settlementId);
+        return success(result);
+    }
+
+    /**
+     * 修改火运结算
+     * @param bmstrainSettlement
+     * @return
+     */
+    @ApiModelProperty(value = "修改火运结算")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "bmstrainSettlement", value = "火运结算实体", required = false, dataType = "BmstrainSettlement"),
+    })
+    @PostMapping("/updateTrainSettlement")
+    public RESTfulResult updateTrainSettlement(@RequestBody BmstrainSettlement bmstrainSettlement) {
+        int result = bmstrainSettlementService.updateTrainSettlement(bmstrainSettlement);
+        return success(result);
+    }
+
+    /**
+     * 得到修改渲染
+     * @param settlementId
+     * @return
+     */
+    @ApiModelProperty(value = "得到修改渲染")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "settlementId", value = "结算id", required = false, dataType = "BigDecimal"),
+    })
+    @PostMapping("/selectTrainSettlement/{settlementId}")
+    public RESTfulResult selectTrainSettlement(@PathVariable("settlementId") BigDecimal settlementId) {
+        BmstrainSettlement bmstrainSettlement = bmstrainSettlementService.selectTrainSettlement(settlementId);
+        return success(bmstrainSettlement);
+    }
+
+
+}

+ 31 - 0
src/main/java/com/steerinfo/dil/mapper/BmstrainSettlementMapper.java

@@ -0,0 +1,31 @@
+package com.steerinfo.dil.mapper;
+
+import com.steerinfo.dil.model.BmstrainSettlement;
+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 BmstrainSettlementMapper extends IBaseMapper<BmstrainSettlement, BigDecimal> {
+
+    @Select("select seq_BMSTRAIN_SETTLEMENT.nextval from dual")
+    BigDecimal selectSettlementId();
+
+    /**
+     * 展示火运结算列表
+     * @param mapValue
+     * @return
+     */
+    List<Map<String, Object>> getSettlementList(Map<String, Object> mapValue);
+
+    /**
+     * 修改渲染
+     * @param settlementId
+     * @return
+     */
+    BmstrainSettlement selectTrainSettlement(BigDecimal settlementId);
+}

+ 274 - 0
src/main/java/com/steerinfo/dil/model/BmstrainSettlement.java

@@ -0,0 +1,274 @@
+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 BmstrainSettlement implements IBasePO<BigDecimal> {
+    /**
+     * 主键ID(SETTLEMENT_ID,DECIMAL,38)
+     */
+    @ApiModelProperty(value="主键ID",required=true)
+    private BigDecimal settlementId;
+
+    /**
+     * 日期(SETTLEMENT_DATE,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="日期",required=false)
+    private Date settlementDate;
+
+    /**
+     * 当日发生车皮数(SETTLEMENT_DAY_WAGONS,DECIMAL,0)
+     */
+    @ApiModelProperty(value="当日发生车皮数",required=false)
+    private BigDecimal settlementDayWagons;
+
+    /**
+     * 当日发生吨位(SETTLEMENT_DAY_TONNAGE,DECIMAL,0)
+     */
+    @ApiModelProperty(value="当日发生吨位",required=false)
+    private BigDecimal settlementDayTonnage;
+
+    /**
+     * 当日产生运费(SETTLEMENT_DAY_TRANSPORT_COST,DECIMAL,0)
+     */
+    @ApiModelProperty(value="当日产生运费",required=false)
+    private BigDecimal settlementDayTransportCost;
+
+    /**
+     * 当日下浮后运费(SETTLEMENT_DAY_FLOAT_COST,DECIMAL,0)
+     */
+    @ApiModelProperty(value="当日下浮后运费",required=false)
+    private BigDecimal settlementDayFloatCost;
+
+    /**
+     * 当日保证金(SETTLEMENT_DAY_MARGIN,DECIMAL,0)
+     */
+    @ApiModelProperty(value="当日保证金",required=false)
+    private BigDecimal settlementDayMargin;
+
+    /**
+     * 当月累计车皮数(SETTLEMENT_MONTH_WAGONS,DECIMAL,38)
+     */
+    @ApiModelProperty(value="当月累计车皮数",required=false)
+    private BigDecimal settlementMonthWagons;
+
+    /**
+     * 当月累计吨位(SETTLEMENT_MONTH_TONNAGE,DECIMAL,0)
+     */
+    @ApiModelProperty(value="当月累计吨位",required=false)
+    private BigDecimal settlementMonthTonnage;
+
+    /**
+     * 当月累计运费(SETTLEMENT_MONTH_TOTAL_MONTH,DECIMAL,0)
+     */
+    @ApiModelProperty(value="当月累计运费",required=false)
+    private BigDecimal settlementMonthTotalMonth;
+
+    /**
+     * 记录创建人(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.settlementId;
+    }
+
+    @Override
+    public void setId(BigDecimal settlementId) {
+        this.settlementId = settlementId;
+    }
+
+    public BigDecimal getSettlementId() {
+        return settlementId;
+    }
+
+    public void setSettlementId(BigDecimal settlementId) {
+        this.settlementId = settlementId;
+    }
+
+    public Date getSettlementDate() {
+        return settlementDate;
+    }
+
+    public void setSettlementDate(Date settlementDate) {
+        this.settlementDate = settlementDate;
+    }
+
+    public BigDecimal getSettlementDayWagons() {
+        return settlementDayWagons;
+    }
+
+    public void setSettlementDayWagons(BigDecimal settlementDayWagons) {
+        this.settlementDayWagons = settlementDayWagons;
+    }
+
+    public BigDecimal getSettlementDayTonnage() {
+        return settlementDayTonnage;
+    }
+
+    public void setSettlementDayTonnage(BigDecimal settlementDayTonnage) {
+        this.settlementDayTonnage = settlementDayTonnage;
+    }
+
+    public BigDecimal getSettlementDayTransportCost() {
+        return settlementDayTransportCost;
+    }
+
+    public void setSettlementDayTransportCost(BigDecimal settlementDayTransportCost) {
+        this.settlementDayTransportCost = settlementDayTransportCost;
+    }
+
+    public BigDecimal getSettlementDayFloatCost() {
+        return settlementDayFloatCost;
+    }
+
+    public void setSettlementDayFloatCost(BigDecimal settlementDayFloatCost) {
+        this.settlementDayFloatCost = settlementDayFloatCost;
+    }
+
+    public BigDecimal getSettlementDayMargin() {
+        return settlementDayMargin;
+    }
+
+    public void setSettlementDayMargin(BigDecimal settlementDayMargin) {
+        this.settlementDayMargin = settlementDayMargin;
+    }
+
+    public BigDecimal getSettlementMonthWagons() {
+        return settlementMonthWagons;
+    }
+
+    public void setSettlementMonthWagons(BigDecimal settlementMonthWagons) {
+        this.settlementMonthWagons = settlementMonthWagons;
+    }
+
+    public BigDecimal getSettlementMonthTonnage() {
+        return settlementMonthTonnage;
+    }
+
+    public void setSettlementMonthTonnage(BigDecimal settlementMonthTonnage) {
+        this.settlementMonthTonnage = settlementMonthTonnage;
+    }
+
+    public BigDecimal getSettlementMonthTotalMonth() {
+        return settlementMonthTotalMonth;
+    }
+
+    public void setSettlementMonthTotalMonth(BigDecimal settlementMonthTotalMonth) {
+        this.settlementMonthTotalMonth = settlementMonthTotalMonth;
+    }
+
+    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(", settlementId=").append(settlementId);
+        sb.append(", settlementDate=").append(settlementDate);
+        sb.append(", settlementDayWagons=").append(settlementDayWagons);
+        sb.append(", settlementDayTonnage=").append(settlementDayTonnage);
+        sb.append(", settlementDayTransportCost=").append(settlementDayTransportCost);
+        sb.append(", settlementDayFloatCost=").append(settlementDayFloatCost);
+        sb.append(", settlementDayMargin=").append(settlementDayMargin);
+        sb.append(", settlementMonthWagons=").append(settlementMonthWagons);
+        sb.append(", settlementMonthTonnage=").append(settlementMonthTonnage);
+        sb.append(", settlementMonthTotalMonth=").append(settlementMonthTotalMonth);
+        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();
+    }
+}

+ 57 - 0
src/main/java/com/steerinfo/dil/service/IBmstrainSettlementService.java

@@ -0,0 +1,57 @@
+package com.steerinfo.dil.service;
+
+import com.steerinfo.dil.model.BmstrainSettlement;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * BmstrainSettlement服务接口:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-18 05:29
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-18
+ * 作者:generator
+ * 参考:
+ * 描述:BmstrainSettlement服务接口
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+public interface IBmstrainSettlementService {
+    /**
+     * 修改渲染
+     * @param settlementId
+     * @return
+     */
+    BmstrainSettlement selectTrainSettlement(BigDecimal settlementId);
+
+    /**
+     * 修改火运结算
+     * @param bmstrainSettlement
+     * @return
+     */
+    int updateTrainSettlement(BmstrainSettlement bmstrainSettlement);
+
+    /**
+     * 逻辑删除火运结算
+     * @param settlementId
+     * @return
+     */
+    int deleteTrainSettlement(BigDecimal settlementId);
+
+    /**
+     * 新增火运结算
+     * @param bmstrainSettlement
+     * @return
+     */
+    int addTrainSettlement(BmstrainSettlement bmstrainSettlement);
+
+    /**
+     * 展示火运结算列表
+     * @param mapValue
+     * @return
+     */
+    List<Map<String, Object>> getSettlementList(Map<String, Object> mapValue);
+}

+ 93 - 0
src/main/java/com/steerinfo/dil/service/impl/BmstrainSettlementServiceImpl.java

@@ -0,0 +1,93 @@
+package com.steerinfo.dil.service.impl;
+
+import com.steerinfo.dil.mapper.BmstrainSettlementMapper;
+import com.steerinfo.dil.model.BmstrainSettlement;
+import com.steerinfo.dil.service.IBmstrainSettlementService;
+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;
+
+/**
+ * BmstrainSettlement服务实现:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2021-10-18 05:29
+ * 类描述
+ * 修订历史:
+ * 日期:2021-10-18
+ * 作者:generator
+ * 参考:
+ * 描述:BmstrainSettlement服务实现
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+@Service(value = "bmstrainSettlementService")
+public class BmstrainSettlementServiceImpl implements IBmstrainSettlementService {
+
+    @Autowired
+    private BmstrainSettlementMapper bmstrainSettlementMapper;
+
+
+    /**
+     * 修改渲染
+     * @param settlementId
+     * @return
+     */
+    @Override
+    public BmstrainSettlement selectTrainSettlement(BigDecimal settlementId) {
+        return bmstrainSettlementMapper.selectTrainSettlement(settlementId);
+    }
+
+    /**
+     * 修改火运结算
+     * @param bmstrainSettlement
+     * @return
+     */
+    @Override
+    public int updateTrainSettlement(BmstrainSettlement bmstrainSettlement) {
+        bmstrainSettlement.setUpdateTime(new Date());
+        return bmstrainSettlementMapper.updateByPrimaryKeySelective(bmstrainSettlement);
+    }
+
+    /**
+     * 逻辑删除火运结算
+     * @param settlementId
+     * @return
+     */
+    @Override
+    public int deleteTrainSettlement(BigDecimal settlementId) {
+        BmstrainSettlement bmstrainSettlement = bmstrainSettlementMapper.selectByPrimaryKey(settlementId);
+        bmstrainSettlement.setDeleted(new BigDecimal(1));
+        return bmstrainSettlementMapper.updateByPrimaryKeySelective(bmstrainSettlement);
+    }
+
+    /**
+     * 新增火运结算
+     * @param bmstrainSettlement
+     * @return
+     */
+    @Override
+    public int addTrainSettlement(BmstrainSettlement bmstrainSettlement) {
+        BigDecimal settlementId = bmstrainSettlementMapper.selectSettlementId();
+        bmstrainSettlement.setSettlementId(settlementId);
+        bmstrainSettlement.setInsertTime(new Date());
+        bmstrainSettlement.setUpdateTime(new Date());
+        bmstrainSettlement.setInsertUsername("admin");
+        bmstrainSettlement.setUpdateUsername("admin");
+        bmstrainSettlement.setInsertUpdateRemark("无");
+        return bmstrainSettlementMapper.insertSelective(bmstrainSettlement);
+    }
+
+    /**
+     * 展示火运结算列表
+     * @param mapValue
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getSettlementList(Map<String, Object> mapValue) {
+        return bmstrainSettlementMapper.getSettlementList(mapValue);
+    }
+}

+ 2 - 0
src/main/resources/com/steerinfo/dil/mapper/BmstrainDetailsOrderMapper.xml

@@ -510,6 +510,7 @@
         ON tlr.RESULT_ID = bdo.TRAIN_LOADING_RESULT_ID
         LEFT JOIN AMS_CONTRACT_TRAIN_PRICE actp
         ON bdo.PRICE_ID = actp.PRICE_ID
+        WHERE bdo.PURCHASE_ORDER_ID is not null
         )
         <where>
             <if test="purchaseOrderNo!= null">
@@ -630,6 +631,7 @@
         LEFT JOIN AMS_CONTRACT_TRAIN_PRICE actp
         ON bdo.PRICE_ID = actp.PRICE_ID
         WHERE bdo.WETHER_TO_STATEMENT = 0
+        AND bdo.PURCHASE_ORDER_ID is not null
         )
         <where>
             <if test="purchaseOrderNo!= null">

+ 611 - 0
src/main/resources/com/steerinfo/dil/mapper/BmstrainSettlementMapper.xml

@@ -0,0 +1,611 @@
+<?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.BmstrainSettlementMapper">
+    <resultMap id="BaseResultMap" type="com.steerinfo.dil.model.BmstrainSettlement">
+        <id column="SETTLEMENT_ID" jdbcType="DECIMAL" property="settlementId"/>
+        <result column="SETTLEMENT_DATE" jdbcType="TIMESTAMP" property="settlementDate"/>
+        <result column="SETTLEMENT_DAY_WAGONS" jdbcType="DECIMAL" property="settlementDayWagons"/>
+        <result column="SETTLEMENT_DAY_TONNAGE" jdbcType="DECIMAL" property="settlementDayTonnage"/>
+        <result column="SETTLEMENT_DAY_TRANSPORT_COST" jdbcType="DECIMAL" property="settlementDayTransportCost"/>
+        <result column="SETTLEMENT_DAY_FLOAT_COST" jdbcType="DECIMAL" property="settlementDayFloatCost"/>
+        <result column="SETTLEMENT_DAY_MARGIN" jdbcType="DECIMAL" property="settlementDayMargin"/>
+        <result column="SETTLEMENT_MONTH_WAGONS" jdbcType="DECIMAL" property="settlementMonthWagons"/>
+        <result column="SETTLEMENT_MONTH_TONNAGE" jdbcType="DECIMAL" property="settlementMonthTonnage"/>
+        <result column="SETTLEMENT_MONTH_TOTAL_MONTH" jdbcType="DECIMAL" property="settlementMonthTotalMonth"/>
+        <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">
+        SETTLEMENT_ID, SETTLEMENT_DATE, SETTLEMENT_DAY_WAGONS, SETTLEMENT_DAY_TONNAGE, SETTLEMENT_DAY_TRANSPORT_COST,
+    SETTLEMENT_DAY_FLOAT_COST, SETTLEMENT_DAY_MARGIN, SETTLEMENT_MONTH_WAGONS, SETTLEMENT_MONTH_TONNAGE, 
+    SETTLEMENT_MONTH_TOTAL_MONTH, INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME, 
+    INSERT_UPDATE_REMARK, DELETED
+    </sql>
+    <sql id="columns_alias">
+        t.SETTLEMENT_ID, t.SETTLEMENT_DATE, t.SETTLEMENT_DAY_WAGONS, t.SETTLEMENT_DAY_TONNAGE,
+    t.SETTLEMENT_DAY_TRANSPORT_COST, t.SETTLEMENT_DAY_FLOAT_COST, t.SETTLEMENT_DAY_MARGIN, 
+    t.SETTLEMENT_MONTH_WAGONS, t.SETTLEMENT_MONTH_TONNAGE, t.SETTLEMENT_MONTH_TOTAL_MONTH, 
+    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 BMSTRAIN_SETTLEMENT
+    </sql>
+    <sql id="select_alias">
+        SELECT
+        <include refid="columns_alias"/>
+        FROM BMSTRAIN_SETTLEMENT t
+    </sql>
+    <sql id="where">
+        <where>
+            <if test="settlementId != null">
+                and SETTLEMENT_ID = #{settlementId}
+            </if>
+            <if test="settlementDate != null">
+                and TO_CHAR(SETTLEMENT_DATE,'yyyy-MM-dd') = #{settlementDate}
+            </if>
+            <if test="settlementDayWagons != null">
+                and SETTLEMENT_DAY_WAGONS = #{settlementDayWagons}
+            </if>
+            <if test="settlementDayTonnage != null">
+                and SETTLEMENT_DAY_TONNAGE = #{settlementDayTonnage}
+            </if>
+            <if test="settlementDayTransportCost != null">
+                and SETTLEMENT_DAY_TRANSPORT_COST = #{settlementDayTransportCost}
+            </if>
+            <if test="settlementDayFloatCost != null">
+                and SETTLEMENT_DAY_FLOAT_COST = #{settlementDayFloatCost}
+            </if>
+            <if test="settlementDayMargin != null">
+                and SETTLEMENT_DAY_MARGIN = #{settlementDayMargin}
+            </if>
+            <if test="settlementMonthWagons != null">
+                and SETTLEMENT_MONTH_WAGONS = #{settlementMonthWagons}
+            </if>
+            <if test="settlementMonthTonnage != null">
+                and SETTLEMENT_MONTH_TONNAGE = #{settlementMonthTonnage}
+            </if>
+            <if test="settlementMonthTotalMonth != null">
+                and SETTLEMENT_MONTH_TOTAL_MONTH = #{settlementMonthTotalMonth}
+            </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="settlementId != null">
+                and SETTLEMENT_ID = #{settlementId}
+            </if>
+            <if test="settlementDate != null">
+                and TO_CHAR(SETTLEMENT_DATE,'yyyy-MM-dd') = #{settlementDate}
+            </if>
+            <if test="settlementDayWagons != null">
+                and SETTLEMENT_DAY_WAGONS = #{settlementDayWagons}
+            </if>
+            <if test="settlementDayTonnage != null">
+                and SETTLEMENT_DAY_TONNAGE = #{settlementDayTonnage}
+            </if>
+            <if test="settlementDayTransportCost != null">
+                and SETTLEMENT_DAY_TRANSPORT_COST = #{settlementDayTransportCost}
+            </if>
+            <if test="settlementDayFloatCost != null">
+                and SETTLEMENT_DAY_FLOAT_COST = #{settlementDayFloatCost}
+            </if>
+            <if test="settlementDayMargin != null">
+                and SETTLEMENT_DAY_MARGIN = #{settlementDayMargin}
+            </if>
+            <if test="settlementMonthWagons != null">
+                and SETTLEMENT_MONTH_WAGONS = #{settlementMonthWagons}
+            </if>
+            <if test="settlementMonthTonnage != null">
+                and SETTLEMENT_MONTH_TONNAGE = #{settlementMonthTonnage}
+            </if>
+            <if test="settlementMonthTotalMonth != null">
+                and SETTLEMENT_MONTH_TOTAL_MONTH = #{settlementMonthTotalMonth}
+            </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 BMSTRAIN_SETTLEMENT
+        where SETTLEMENT_ID = #{settlementId,jdbcType=DECIMAL}
+    </delete>
+    <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
+        delete from BMSTRAIN_SETTLEMENT
+        where 1!=1
+        <if test="settlementDate != null">
+            or TO_CHAR(SETTLEMENT_DATE,'yyyy-MM-dd') = '#{settlementDate}'
+        </if>
+        <if test="settlementDayWagons != null">
+            or SETTLEMENT_DAY_WAGONS = #{settlementDayWagons}
+        </if>
+        <if test="settlementDayTonnage != null">
+            or SETTLEMENT_DAY_TONNAGE = #{settlementDayTonnage}
+        </if>
+        <if test="settlementDayTransportCost != null">
+            or SETTLEMENT_DAY_TRANSPORT_COST = #{settlementDayTransportCost}
+        </if>
+        <if test="settlementDayFloatCost != null">
+            or SETTLEMENT_DAY_FLOAT_COST = #{settlementDayFloatCost}
+        </if>
+        <if test="settlementDayMargin != null">
+            or SETTLEMENT_DAY_MARGIN = #{settlementDayMargin}
+        </if>
+        <if test="settlementMonthWagons != null">
+            or SETTLEMENT_MONTH_WAGONS = #{settlementMonthWagons}
+        </if>
+        <if test="settlementMonthTonnage != null">
+            or SETTLEMENT_MONTH_TONNAGE = #{settlementMonthTonnage}
+        </if>
+        <if test="settlementMonthTotalMonth != null">
+            or SETTLEMENT_MONTH_TOTAL_MONTH = #{settlementMonthTotalMonth}
+        </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.BmstrainSettlement">
+        insert into BMSTRAIN_SETTLEMENT (SETTLEMENT_ID, SETTLEMENT_DATE, SETTLEMENT_DAY_WAGONS,
+                                         SETTLEMENT_DAY_TONNAGE, SETTLEMENT_DAY_TRANSPORT_COST,
+                                         SETTLEMENT_DAY_FLOAT_COST, SETTLEMENT_DAY_MARGIN,
+                                         SETTLEMENT_MONTH_WAGONS, SETTLEMENT_MONTH_TONNAGE,
+                                         SETTLEMENT_MONTH_TOTAL_MONTH, INSERT_USERNAME,
+                                         INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME,
+                                         INSERT_UPDATE_REMARK, DELETED)
+        values (#{settlementId,jdbcType=DECIMAL}, #{settlementDate,jdbcType=TIMESTAMP},
+                #{settlementDayWagons,jdbcType=DECIMAL},
+                #{settlementDayTonnage,jdbcType=DECIMAL}, #{settlementDayTransportCost,jdbcType=DECIMAL},
+                #{settlementDayFloatCost,jdbcType=DECIMAL}, #{settlementDayMargin,jdbcType=DECIMAL},
+                #{settlementMonthWagons,jdbcType=DECIMAL}, #{settlementMonthTonnage,jdbcType=DECIMAL},
+                #{settlementMonthTotalMonth,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.BmstrainSettlement">
+        insert into BMSTRAIN_SETTLEMENT
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="settlementId != null">
+                SETTLEMENT_ID,
+            </if>
+            <if test="settlementDate != null">
+                SETTLEMENT_DATE,
+            </if>
+            <if test="settlementDayWagons != null">
+                SETTLEMENT_DAY_WAGONS,
+            </if>
+            <if test="settlementDayTonnage != null">
+                SETTLEMENT_DAY_TONNAGE,
+            </if>
+            <if test="settlementDayTransportCost != null">
+                SETTLEMENT_DAY_TRANSPORT_COST,
+            </if>
+            <if test="settlementDayFloatCost != null">
+                SETTLEMENT_DAY_FLOAT_COST,
+            </if>
+            <if test="settlementDayMargin != null">
+                SETTLEMENT_DAY_MARGIN,
+            </if>
+            <if test="settlementMonthWagons != null">
+                SETTLEMENT_MONTH_WAGONS,
+            </if>
+            <if test="settlementMonthTonnage != null">
+                SETTLEMENT_MONTH_TONNAGE,
+            </if>
+            <if test="settlementMonthTotalMonth != null">
+                SETTLEMENT_MONTH_TOTAL_MONTH,
+            </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="settlementId != null">
+                #{settlementId,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementDate != null">
+                #{settlementDate,jdbcType=TIMESTAMP},
+            </if>
+            <if test="settlementDayWagons != null">
+                #{settlementDayWagons,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementDayTonnage != null">
+                #{settlementDayTonnage,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementDayTransportCost != null">
+                #{settlementDayTransportCost,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementDayFloatCost != null">
+                #{settlementDayFloatCost,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementDayMargin != null">
+                #{settlementDayMargin,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementMonthWagons != null">
+                #{settlementMonthWagons,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementMonthTonnage != null">
+                #{settlementMonthTonnage,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementMonthTotalMonth != null">
+                #{settlementMonthTotalMonth,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.BmstrainSettlement">
+        update BMSTRAIN_SETTLEMENT
+        set SETTLEMENT_DATE               = #{settlementDate,jdbcType=TIMESTAMP},
+            SETTLEMENT_DAY_WAGONS         = #{settlementDayWagons,jdbcType=DECIMAL},
+            SETTLEMENT_DAY_TONNAGE        = #{settlementDayTonnage,jdbcType=DECIMAL},
+            SETTLEMENT_DAY_TRANSPORT_COST = #{settlementDayTransportCost,jdbcType=DECIMAL},
+            SETTLEMENT_DAY_FLOAT_COST     = #{settlementDayFloatCost,jdbcType=DECIMAL},
+            SETTLEMENT_DAY_MARGIN         = #{settlementDayMargin,jdbcType=DECIMAL},
+            SETTLEMENT_MONTH_WAGONS       = #{settlementMonthWagons,jdbcType=DECIMAL},
+            SETTLEMENT_MONTH_TONNAGE      = #{settlementMonthTonnage,jdbcType=DECIMAL},
+            SETTLEMENT_MONTH_TOTAL_MONTH  = #{settlementMonthTotalMonth,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 SETTLEMENT_ID = #{settlementId,jdbcType=DECIMAL}
+    </update>
+    <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.BmstrainSettlement">
+        update BMSTRAIN_SETTLEMENT
+        <set>
+            <if test="settlementDate != null">
+                SETTLEMENT_DATE = #{settlementDate,jdbcType=TIMESTAMP},
+            </if>
+            <if test="settlementDayWagons != null">
+                SETTLEMENT_DAY_WAGONS = #{settlementDayWagons,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementDayTonnage != null">
+                SETTLEMENT_DAY_TONNAGE = #{settlementDayTonnage,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementDayTransportCost != null">
+                SETTLEMENT_DAY_TRANSPORT_COST = #{settlementDayTransportCost,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementDayFloatCost != null">
+                SETTLEMENT_DAY_FLOAT_COST = #{settlementDayFloatCost,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementDayMargin != null">
+                SETTLEMENT_DAY_MARGIN = #{settlementDayMargin,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementMonthWagons != null">
+                SETTLEMENT_MONTH_WAGONS = #{settlementMonthWagons,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementMonthTonnage != null">
+                SETTLEMENT_MONTH_TONNAGE = #{settlementMonthTonnage,jdbcType=DECIMAL},
+            </if>
+            <if test="settlementMonthTotalMonth != null">
+                SETTLEMENT_MONTH_TOTAL_MONTH = #{settlementMonthTotalMonth,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 SETTLEMENT_ID = #{settlementId,jdbcType=DECIMAL}
+    </update>
+    <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
+        <include refid="select"/>
+        where SETTLEMENT_ID = #{settlementId,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 BMSTRAIN_SETTLEMENT
+        (SETTLEMENT_ID,
+        SETTLEMENT_DATE, SETTLEMENT_DAY_WAGONS,
+        SETTLEMENT_DAY_TONNAGE, SETTLEMENT_DAY_TRANSPORT_COST,
+        SETTLEMENT_DAY_FLOAT_COST, SETTLEMENT_DAY_MARGIN,
+        SETTLEMENT_MONTH_WAGONS, SETTLEMENT_MONTH_TONNAGE,
+        SETTLEMENT_MONTH_TOTAL_MONTH, INSERT_USERNAME,
+        INSERT_TIME, UPDATE_USERNAME,
+        UPDATE_TIME, INSERT_UPDATE_REMARK,
+        DELETED)
+        ( <foreach collection="list" item="item" separator="union all">
+        select
+        #{item.settlementId,jdbcType=DECIMAL},
+        #{item.settlementDate,jdbcType=TIMESTAMP}, #{item.settlementDayWagons,jdbcType=DECIMAL},
+        #{item.settlementDayTonnage,jdbcType=DECIMAL}, #{item.settlementDayTransportCost,jdbcType=DECIMAL},
+        #{item.settlementDayFloatCost,jdbcType=DECIMAL}, #{item.settlementDayMargin,jdbcType=DECIMAL},
+        #{item.settlementMonthWagons,jdbcType=DECIMAL}, #{item.settlementMonthTonnage,jdbcType=DECIMAL},
+        #{item.settlementMonthTotalMonth,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 BMSTRAIN_SETTLEMENT
+        set
+        SETTLEMENT_ID=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementId,jdbcType=DECIMAL}
+        </foreach>
+        ,SETTLEMENT_DATE=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementDate,jdbcType=TIMESTAMP}
+        </foreach>
+        ,SETTLEMENT_DAY_WAGONS=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementDayWagons,jdbcType=DECIMAL}
+        </foreach>
+        ,SETTLEMENT_DAY_TONNAGE=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementDayTonnage,jdbcType=DECIMAL}
+        </foreach>
+        ,SETTLEMENT_DAY_TRANSPORT_COST=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementDayTransportCost,jdbcType=DECIMAL}
+        </foreach>
+        ,SETTLEMENT_DAY_FLOAT_COST=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementDayFloatCost,jdbcType=DECIMAL}
+        </foreach>
+        ,SETTLEMENT_DAY_MARGIN=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementDayMargin,jdbcType=DECIMAL}
+        </foreach>
+        ,SETTLEMENT_MONTH_WAGONS=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementMonthWagons,jdbcType=DECIMAL}
+        </foreach>
+        ,SETTLEMENT_MONTH_TONNAGE=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementMonthTonnage,jdbcType=DECIMAL}
+        </foreach>
+        ,SETTLEMENT_MONTH_TOTAL_MONTH=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.settlementMonthTotalMonth,jdbcType=DECIMAL}
+        </foreach>
+        ,INSERT_USERNAME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.insertUsername,jdbcType=VARCHAR}
+        </foreach>
+        ,INSERT_TIME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.insertTime,jdbcType=TIMESTAMP}
+        </foreach>
+        ,UPDATE_USERNAME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.updateUsername,jdbcType=VARCHAR}
+        </foreach>
+        ,UPDATE_TIME=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.updateTime,jdbcType=TIMESTAMP}
+        </foreach>
+        ,INSERT_UPDATE_REMARK=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.insertUpdateRemark,jdbcType=VARCHAR}
+        </foreach>
+        ,DELETED=
+        <foreach collection="list" item="item" index="index" separator=" " open="case SETTLEMENT_ID" close="end">
+            when #{item.settlementId,jdbcType=DECIMAL} then #{item.deleted,jdbcType=DECIMAL}
+        </foreach>
+        where SETTLEMENT_ID in
+        <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
+            #{item.settlementId,jdbcType=DECIMAL}
+        </foreach>
+    </update>
+    <delete id="batchDelete" parameterType="java.util.List">
+        delete from BMSTRAIN_SETTLEMENT
+        where SETTLEMENT_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>
+    <if test="orderField == null  ">
+      order by "insertTime" desc
+    </if>
+  </sql>
+    <!-- 展示火运结算列表 -->
+    <select id="getSettlementList" parameterType="java.util.Map" resultType="java.util.Map">
+        SELECT * FROM(
+        SELECT BS.SETTLEMENT_ID AS "settlementId",
+        BS.INSERT_TIME AS "insertTime",
+        BS.SETTLEMENT_DATE AS "settlementDate",
+        BS.SETTLEMENT_DAY_WAGONS AS "settlementDayWagons",
+        BS.SETTLEMENT_DAY_TONNAGE AS "settlementDayTonnage",
+        BS.SETTLEMENT_DAY_TRANSPORT_COST AS "settlementDayTransportCost",
+        BS.SETTLEMENT_DAY_FLOAT_COST AS "settlementDayFloatCost",
+        BS.SETTLEMENT_DAY_MARGIN AS "settlementDayMargin",
+        BS.SETTLEMENT_MONTH_WAGONS AS "settlementMonthWagons",
+        BS.SETTLEMENT_MONTH_TONNAGE AS "settlementMonthTonnage",
+        BS.SETTLEMENT_MONTH_TOTAL_MONTH AS "settlementMonthTotalMonth"
+        FROM BMSTRAIN_SETTLEMENT BS
+        WHERE BS.DELETED = 0
+        )
+        <where>
+            <if test="settlementDate!= null">
+                and
+                <foreach collection="settlementDate" item="item" open="(" separator="," close=")">
+                    "settlementDate" in to_date('${item}','yyyy-mm-dd hh24:mi:ss')
+                </foreach>
+            </if>
+            <if test="settlementDayWagons!= null">
+                and
+                <foreach collection="settlementDayWagons" item="item" open="(" separator="," close=")">
+                    "settlementDayWagons" in #{item}
+                </foreach>
+            </if>
+            <if test="settlementDayTonnage!= null">
+                and
+                <foreach collection="settlementDayTonnage" item="item" open="(" separator="," close=")">
+                    "settlementDayTonnage" in #{item}
+                </foreach>
+            </if>
+            <if test="settlementDayTransportCost!= null">
+                and
+                <foreach collection="settlementDayTransportCost" item="item" open="(" separator="," close=")">
+                    "settlementDayTransportCost" in #{item}
+                </foreach>
+            </if>
+            <if test="settlementDayFloatCost!= null">
+                and
+                <foreach collection="settlementDayFloatCost" item="item" open="(" separator="," close=")">
+                    "settlementDayFloatCost" in #{item}
+                </foreach>
+            </if>
+            <if test="settlementDayMargin!= null">
+                and
+                <foreach collection="settlementDayMargin" item="item" open="(" separator="," close=")">
+                    "settlementDayMargin" in #{item}
+                </foreach>
+            </if>
+            <if test="settlementMonthWagons!= null">
+                and
+                <foreach collection="settlementMonthWagons" item="item" open="(" separator="," close=")">
+                    "settlementMonthWagons" in #{item}
+                </foreach>
+            </if>
+            <if test="settlementMonthTonnage!= null">
+                and
+                <foreach collection="settlementMonthTonnage" item="item" open="(" separator="," close=")">
+                    "settlementMonthTonnage" in #{item}
+                </foreach>
+            </if>
+            <if test="settlementMonthTotalMonth!= null">
+                and
+                <foreach collection="settlementMonthTotalMonth" item="item" open="(" separator="," close=")">
+                    "settlementMonthTotalMonth" in #{item}
+                </foreach>
+            </if>
+        </where>
+        <include refid="orderBy"></include>
+    </select>
+
+    <!--修改渲染-->
+    <select id="selectTrainSettlement" parameterType="DECIMAL" resultType="java.util.Map">
+        SELECT BS.SETTLEMENT_DATE               AS "settlementDate",
+               BS.SETTLEMENT_DAY_WAGONS         AS "settlementDayWagons",
+               BS.SETTLEMENT_DAY_TONNAGE        AS "settlementDayTonnage",
+               BS.SETTLEMENT_DAY_TRANSPORT_COST AS "settlementDayTransportCost",
+               BS.SETTLEMENT_DAY_FLOAT_COST     AS "settlementDayFloatCost",
+               BS.SETTLEMENT_DAY_MARGIN         AS "settlementDayMargin",
+               BS.SETTLEMENT_MONTH_WAGONS       AS "settlementMonthWagons",
+               BS.SETTLEMENT_MONTH_TONNAGE      AS "settlementMonthTonnage",
+               BS.SETTLEMENT_MONTH_TOTAL_MONTH  AS "settlementMonthTotalMonth"
+        FROM BMSTRAIN_SETTLEMENT BS
+        WHERE BS.SETTLEMENT_ID = #{settlementId}
+    </select>
+</mapper>