Ver código fonte

'钢材物资排序'

hujg 2 anos atrás
pai
commit
a8326c36f2

+ 2 - 0
src/main/java/com/steerinfo/dil/mapper/AmsSaleMaterialMapper.java

@@ -10,4 +10,6 @@ import org.apache.ibatis.annotations.Select;
 public interface AmsSaleMaterialMapper extends IBaseMapper<AmsSaleMaterial, BigDecimal> {
     @Select("select seq_AMS_SALE_MATERIAL.nextval from dual")
     BigDecimal selectMaxId();
+    // 得到物资出现次数
+    Integer getMaterialCount(BigDecimal materialId);
 }

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

@@ -0,0 +1,23 @@
+package com.steerinfo.dil.mapper;
+
+import com.steerinfo.dil.model.RmsMaterial;
+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 RmsMaterialMapper extends IBaseMapper<RmsMaterial, BigDecimal> {
+
+    @Select("SELECT seq_RMS_MATERIAL.nextval FROM dual")
+    BigDecimal getMaterialId();
+
+    @Override
+    List<RmsMaterial> selectByParameters(Map<String, Object> parameters);
+
+    // 展示物资信息
+    List<Map<String, Object>> getMaterialList(Map<String, Object> mapVal);
+}

+ 304 - 0
src/main/java/com/steerinfo/dil/model/RmsMaterial.java

@@ -0,0 +1,304 @@
+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 RmsMaterial implements IBasePO<BigDecimal> {
+    /**
+     * 主键ID(MATERIAL_ID,DECIMAL,0)
+     */
+    @ApiModelProperty(value="主键ID",required=true)
+    private BigDecimal materialId;
+
+    /**
+     * 物资类型ID(MATERIAL_TYPE_ID,DECIMAL,0)
+     */
+    @ApiModelProperty(value="物资类型ID",required=false)
+    private BigDecimal materialTypeId;
+
+    /**
+     * 计量单位ID(UNIT_OF_MEASURE_ID,DECIMAL,0)
+     */
+    @ApiModelProperty(value="计量单位ID",required=false)
+    private BigDecimal unitOfMeasureId;
+
+    /**
+     * 物资编码(物资名称+规格型号+物资长度)(MATERIAL_CODE,VARCHAR,200)
+     */
+    @ApiModelProperty(value="物资编码(物资名称+规格型号+物资长度)",required=false)
+    private String materialCode;
+
+    /**
+     * 物资名称(MATERIAL_NAME,VARCHAR,100)
+     */
+    @ApiModelProperty(value="物资名称",required=false)
+    private String materialName;
+
+    /**
+     * 规格(MATERIAL_SPECIFICATION,VARCHAR,500)
+     */
+    @ApiModelProperty(value="规格",required=false)
+    private String materialSpecification;
+
+    /**
+     * 型号(MATERIAL_MODEL,VARCHAR,500)
+     */
+    @ApiModelProperty(value="型号",required=false)
+    private String materialModel;
+
+    /**
+     * 长度(MATERIAL_LENGTH,DECIMAL,0)
+     */
+    @ApiModelProperty(value="长度",required=false)
+    private BigDecimal materialLength;
+
+    /**
+     * 记录创建人(INSERT_USERNAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="记录创建人",required=false)
+    private String insertUsername;
+
+    /**
+     * 记录创建时间(INSERT_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="记录创建时间",required=false)
+    private Date insertTime;
+
+    /**
+     * 记录修改人(UPDATE_USERNAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="记录修改人",required=false)
+    private String updateUsername;
+
+    /**
+     * 记录修改时间(UPDATE_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="记录修改时间",required=false)
+    private Date updateTime;
+
+    /**
+     * 记录创建或修改备注(INSERT_UPDATE_REMARK,VARCHAR,100)
+     */
+    @ApiModelProperty(value="记录创建或修改备注",required=false)
+    private String insertUpdateRemark;
+
+    /**
+     * 金蝶物资主键ID(EAS_MATERIAL_ID,VARCHAR,50)
+     */
+    @ApiModelProperty(value="金蝶物资主键ID",required=false)
+    private String easMaterialId;
+
+    /**
+     * 逻辑删除(DELETED,DECIMAL,0)
+     */
+    @ApiModelProperty(value="逻辑删除",required=false)
+    private BigDecimal deleted;
+
+    /**
+     * 物资理重(MATERIAL_THEORETICAL_WEIGHT,DECIMAL,0)
+     */
+    @ApiModelProperty(value="物资理重",required=false)
+    private BigDecimal materialTheoreticalWeight;
+
+    /**
+     * 装卸货优先次序(MATERIAL_ORDER,DECIMAL,0)
+     */
+    @ApiModelProperty(value="装卸货优先次序",required=false)
+    private BigDecimal materialOrder;
+
+    /**
+     * 钢材订单中出现次数(MATERIAL_COUNT,DECIMAL,0)
+     */
+    @ApiModelProperty(value="钢材订单中出现次数",required=false)
+    private BigDecimal materialCount;
+
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public BigDecimal getId() {
+        return this.materialId;
+    }
+
+    @Override
+    public void setId(BigDecimal materialId) {
+        this.materialId = materialId;
+    }
+
+    public BigDecimal getMaterialId() {
+        return materialId;
+    }
+
+    public void setMaterialId(BigDecimal materialId) {
+        this.materialId = materialId;
+    }
+
+    public BigDecimal getMaterialTypeId() {
+        return materialTypeId;
+    }
+
+    public void setMaterialTypeId(BigDecimal materialTypeId) {
+        this.materialTypeId = materialTypeId;
+    }
+
+    public BigDecimal getUnitOfMeasureId() {
+        return unitOfMeasureId;
+    }
+
+    public void setUnitOfMeasureId(BigDecimal unitOfMeasureId) {
+        this.unitOfMeasureId = unitOfMeasureId;
+    }
+
+    public String getMaterialCode() {
+        return materialCode;
+    }
+
+    public void setMaterialCode(String materialCode) {
+        this.materialCode = materialCode == null ? null : materialCode.trim();
+    }
+
+    public String getMaterialName() {
+        return materialName;
+    }
+
+    public void setMaterialName(String materialName) {
+        this.materialName = materialName == null ? null : materialName.trim();
+    }
+
+    public String getMaterialSpecification() {
+        return materialSpecification;
+    }
+
+    public void setMaterialSpecification(String materialSpecification) {
+        this.materialSpecification = materialSpecification == null ? null : materialSpecification.trim();
+    }
+
+    public String getMaterialModel() {
+        return materialModel;
+    }
+
+    public void setMaterialModel(String materialModel) {
+        this.materialModel = materialModel == null ? null : materialModel.trim();
+    }
+
+    public BigDecimal getMaterialLength() {
+        return materialLength;
+    }
+
+    public void setMaterialLength(BigDecimal materialLength) {
+        this.materialLength = materialLength;
+    }
+
+    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 String getEasMaterialId() {
+        return easMaterialId;
+    }
+
+    public void setEasMaterialId(String easMaterialId) {
+        this.easMaterialId = easMaterialId == null ? null : easMaterialId.trim();
+    }
+
+    public BigDecimal getDeleted() {
+        return deleted;
+    }
+
+    public void setDeleted(BigDecimal deleted) {
+        this.deleted = deleted;
+    }
+
+    public BigDecimal getMaterialTheoreticalWeight() {
+        return materialTheoreticalWeight;
+    }
+
+    public void setMaterialTheoreticalWeight(BigDecimal materialTheoreticalWeight) {
+        this.materialTheoreticalWeight = materialTheoreticalWeight;
+    }
+
+    public BigDecimal getMaterialOrder() {
+        return materialOrder;
+    }
+
+    public void setMaterialOrder(BigDecimal materialOrder) {
+        this.materialOrder = materialOrder;
+    }
+
+    public BigDecimal getMaterialCount() {
+        return materialCount;
+    }
+
+    public void setMaterialCount(BigDecimal materialCount) {
+        this.materialCount = materialCount;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", materialId=").append(materialId);
+        sb.append(", materialTypeId=").append(materialTypeId);
+        sb.append(", unitOfMeasureId=").append(unitOfMeasureId);
+        sb.append(", materialCode=").append(materialCode);
+        sb.append(", materialName=").append(materialName);
+        sb.append(", materialSpecification=").append(materialSpecification);
+        sb.append(", materialModel=").append(materialModel);
+        sb.append(", materialLength=").append(materialLength);
+        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(", easMaterialId=").append(easMaterialId);
+        sb.append(", deleted=").append(deleted);
+        sb.append(", materialTheoreticalWeight=").append(materialTheoreticalWeight);
+        sb.append(", materialOrder=").append(materialOrder);
+        sb.append(", materialCount=").append(materialCount);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 10 - 0
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -65,6 +65,8 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
     EASTestUtil easTestUtil;
     @Autowired
     EASDeleteTestUtil easDeleteTestUtil;
+    @Autowired
+    RmsMaterialMapper rmsMaterialMapper;
 
     @Override
     public List<Map<String, Object>> getSaleOrderInfo(Map<String, Object> map) {
@@ -638,6 +640,14 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
              */
             // 物资
             BigDecimal materialId = DataChange.dataToBigDecimal(map.get("materialId"));
+            Integer materialCount = amsSaleMaterialMapper.getMaterialCount(materialId);
+            RmsMaterial rmsMaterial = new RmsMaterial();
+            rmsMaterial.setMaterialId(materialId);
+            if (materialCount == null) {
+                materialCount = new Integer(0);
+            }
+            rmsMaterial.setMaterialCount(new BigDecimal(materialCount + 1));
+            rmsMaterialMapper.updateByPrimaryKeySelective(rmsMaterial);
             // 物资件数
             BigDecimal materialNumber = DataChange.dataToBigDecimal(map.get("materialNumber"));
             // 物资名称

+ 6 - 0
src/main/resources/com/steerinfo/dil/mapper/AmsSaleMaterialMapper.xml

@@ -496,4 +496,10 @@
   <!-- 友情提示!!!-->
   <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
 
+  <select id="getMaterialCount" parameterType="DECIMAL" resultType="java.lang.Integer">
+    SELECT RM.MATERIAL_COUNT AS "materialCount"
+    FROM RMS_MATERIAL RM
+    WHERE RM.MATERIAL_ID = #{materialId}
+  </select>
+
 </mapper>

+ 600 - 0
src/main/resources/com/steerinfo/dil/mapper/RmsMaterialMapper.xml

@@ -0,0 +1,600 @@
+<?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.RmsMaterialMapper">
+    <resultMap id="BaseResultMap" type="com.steerinfo.dil.model.RmsMaterial">
+        <id column="MATERIAL_ID" jdbcType="DECIMAL" property="materialId" />
+        <result column="MATERIAL_TYPE_ID" jdbcType="DECIMAL" property="materialTypeId" />
+        <result column="UNIT_OF_MEASURE_ID" jdbcType="DECIMAL" property="unitOfMeasureId" />
+        <result column="MATERIAL_CODE" jdbcType="VARCHAR" property="materialCode" />
+        <result column="MATERIAL_NAME" jdbcType="VARCHAR" property="materialName" />
+        <result column="MATERIAL_SPECIFICATION" jdbcType="VARCHAR" property="materialSpecification" />
+        <result column="MATERIAL_MODEL" jdbcType="VARCHAR" property="materialModel" />
+        <result column="MATERIAL_LENGTH" jdbcType="DECIMAL" property="materialLength" />
+        <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="EAS_MATERIAL_ID" jdbcType="VARCHAR" property="easMaterialId" />
+        <result column="DELETED" jdbcType="DECIMAL" property="deleted" />
+        <result column="MATERIAL_THEORETICAL_WEIGHT" jdbcType="DECIMAL" property="materialTheoreticalWeight" />
+        <result column="MATERIAL_ORDER" jdbcType="DECIMAL" property="materialOrder" />
+        <result column="MATERIAL_COUNT" jdbcType="DECIMAL" property="materialCount" />
+    </resultMap>
+    <sql id="columns">
+        MATERIAL_ID, MATERIAL_TYPE_ID, UNIT_OF_MEASURE_ID, MATERIAL_CODE, MATERIAL_NAME,
+    MATERIAL_SPECIFICATION, MATERIAL_MODEL, MATERIAL_LENGTH, INSERT_USERNAME, INSERT_TIME,
+    UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK, EAS_MATERIAL_ID, DELETED, MATERIAL_THEORETICAL_WEIGHT,
+    MATERIAL_ORDER, MATERIAL_COUNT
+    </sql>
+    <sql id="columns_alias">
+        t.MATERIAL_ID, t.MATERIAL_TYPE_ID, t.UNIT_OF_MEASURE_ID, t.MATERIAL_CODE, t.MATERIAL_NAME,
+    t.MATERIAL_SPECIFICATION, t.MATERIAL_MODEL, t.MATERIAL_LENGTH, t.INSERT_USERNAME,
+    t.INSERT_TIME, t.UPDATE_USERNAME, t.UPDATE_TIME, t.INSERT_UPDATE_REMARK, t.EAS_MATERIAL_ID,
+    t.DELETED, t.MATERIAL_THEORETICAL_WEIGHT, t.MATERIAL_ORDER, t.MATERIAL_COUNT
+    </sql>
+    <sql id="select">
+        SELECT <include refid="columns" /> FROM RMS_MATERIAL
+    </sql>
+    <sql id="select_alias">
+        SELECT <include refid="columns_alias" /> FROM RMS_MATERIAL t
+    </sql>
+    <sql id="where">
+        <where>
+            <if test="materialId != null">
+                and MATERIAL_ID = #{materialId}
+            </if>
+            <if test="materialTypeId != null">
+                and MATERIAL_TYPE_ID = #{materialTypeId}
+            </if>
+            <if test="unitOfMeasureId != null">
+                and UNIT_OF_MEASURE_ID = #{unitOfMeasureId}
+            </if>
+            <if test="materialCode != null and materialCode != ''">
+                and MATERIAL_CODE = #{materialCode}
+            </if>
+            <if test="materialName != null and materialName != ''">
+                and MATERIAL_NAME = #{materialName}
+            </if>
+            <if test="materialSpecification != null and materialSpecification != ''">
+                and MATERIAL_SPECIFICATION = #{materialSpecification}
+            </if>
+            <if test="materialModel != null and materialModel != ''">
+                and MATERIAL_MODEL = #{materialModel}
+            </if>
+            <if test="materialLength != null">
+                and MATERIAL_LENGTH = #{materialLength}
+            </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="easMaterialId != null and easMaterialId != ''">
+                and EAS_MATERIAL_ID = #{easMaterialId}
+            </if>
+            <if test="deleted != null">
+                and DELETED = #{deleted}
+            </if>
+            <if test="materialTheoreticalWeight != null">
+                and MATERIAL_THEORETICAL_WEIGHT = #{materialTheoreticalWeight}
+            </if>
+            <if test="materialOrder != null">
+                and MATERIAL_ORDER = #{materialOrder}
+            </if>
+            <if test="materialCount != null">
+                and MATERIAL_COUNT = #{materialCount}
+            </if>
+        </where>
+    </sql>
+    <sql id="whereLike">
+        <where>
+            <if test="materialId != null">
+                and MATERIAL_ID = #{materialId}
+            </if>
+            <if test="materialTypeId != null">
+                and MATERIAL_TYPE_ID = #{materialTypeId}
+            </if>
+            <if test="unitOfMeasureId != null">
+                and UNIT_OF_MEASURE_ID = #{unitOfMeasureId}
+            </if>
+            <if test="materialCode != null and materialCode != ''">
+                and MATERIAL_CODE LIKE '%${materialCode}%'
+            </if>
+            <if test="materialName != null and materialName != ''">
+                and MATERIAL_NAME LIKE '%${materialName}%'
+            </if>
+            <if test="materialSpecification != null and materialSpecification != ''">
+                and MATERIAL_SPECIFICATION LIKE '%${materialSpecification}%'
+            </if>
+            <if test="materialModel != null and materialModel != ''">
+                and MATERIAL_MODEL LIKE '%${materialModel}%'
+            </if>
+            <if test="materialLength != null">
+                and MATERIAL_LENGTH = #{materialLength}
+            </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="easMaterialId != null and easMaterialId != ''">
+                and EAS_MATERIAL_ID LIKE '%${easMaterialId}%'
+            </if>
+            <if test="deleted != null">
+                and DELETED = #{deleted}
+            </if>
+            <if test="materialTheoreticalWeight != null">
+                and MATERIAL_THEORETICAL_WEIGHT = #{materialTheoreticalWeight}
+            </if>
+            <if test="materialOrder != null">
+                and MATERIAL_ORDER = #{materialOrder}
+            </if>
+            <if test="materialCount != null">
+                and MATERIAL_COUNT = #{materialCount}
+            </if>
+        </where>
+    </sql>
+    <delete id="deleteByPrimaryKey" parameterType="DECIMAL">
+        delete from RMS_MATERIAL
+        where MATERIAL_ID = #{materialId,jdbcType=DECIMAL}
+    </delete>
+    <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
+        delete from RMS_MATERIAL
+        where 1!=1
+        <if test="materialTypeId != null">
+            or MATERIAL_TYPE_ID = #{materialTypeId}
+        </if>
+        <if test="unitOfMeasureId != null">
+            or UNIT_OF_MEASURE_ID = #{unitOfMeasureId}
+        </if>
+        <if test="materialCode != null and materialCode != ''">
+            or MATERIAL_CODE = #{materialCode}
+        </if>
+        <if test="materialName != null and materialName != ''">
+            or MATERIAL_NAME = #{materialName}
+        </if>
+        <if test="materialSpecification != null and materialSpecification != ''">
+            or MATERIAL_SPECIFICATION = #{materialSpecification}
+        </if>
+        <if test="materialModel != null and materialModel != ''">
+            or MATERIAL_MODEL = #{materialModel}
+        </if>
+        <if test="materialLength != null">
+            or MATERIAL_LENGTH = #{materialLength}
+        </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="easMaterialId != null and easMaterialId != ''">
+            or EAS_MATERIAL_ID = #{easMaterialId}
+        </if>
+        <if test="deleted != null">
+            or DELETED = #{deleted}
+        </if>
+        <if test="materialTheoreticalWeight != null">
+            or MATERIAL_THEORETICAL_WEIGHT = #{materialTheoreticalWeight}
+        </if>
+        <if test="materialOrder != null">
+            or MATERIAL_ORDER = #{materialOrder}
+        </if>
+        <if test="materialCount != null">
+            or MATERIAL_COUNT = #{materialCount}
+        </if>
+    </delete>
+    <insert id="insert" parameterType="com.steerinfo.dil.model.RmsMaterial">
+        insert into RMS_MATERIAL (MATERIAL_ID, MATERIAL_TYPE_ID, UNIT_OF_MEASURE_ID,
+                                  MATERIAL_CODE, MATERIAL_NAME, MATERIAL_SPECIFICATION,
+                                  MATERIAL_MODEL, MATERIAL_LENGTH, INSERT_USERNAME,
+                                  INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME,
+                                  INSERT_UPDATE_REMARK, EAS_MATERIAL_ID, DELETED,
+                                  MATERIAL_THEORETICAL_WEIGHT, MATERIAL_ORDER,
+                                  MATERIAL_COUNT)
+        values (#{materialId,jdbcType=DECIMAL}, #{materialTypeId,jdbcType=DECIMAL}, #{unitOfMeasureId,jdbcType=DECIMAL},
+                #{materialCode,jdbcType=VARCHAR}, #{materialName,jdbcType=VARCHAR}, #{materialSpecification,jdbcType=VARCHAR},
+                #{materialModel,jdbcType=VARCHAR}, #{materialLength,jdbcType=DECIMAL}, #{insertUsername,jdbcType=VARCHAR},
+                #{insertTime,jdbcType=TIMESTAMP}, #{updateUsername,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP},
+                #{insertUpdateRemark,jdbcType=VARCHAR}, #{easMaterialId,jdbcType=VARCHAR}, #{deleted,jdbcType=DECIMAL},
+                #{materialTheoreticalWeight,jdbcType=DECIMAL}, #{materialOrder,jdbcType=DECIMAL},
+                #{materialCount,jdbcType=DECIMAL})
+    </insert>
+    <insert id="insertSelective" parameterType="com.steerinfo.dil.model.RmsMaterial">
+        insert into RMS_MATERIAL
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="materialId != null">
+                MATERIAL_ID,
+            </if>
+            <if test="materialTypeId != null">
+                MATERIAL_TYPE_ID,
+            </if>
+            <if test="unitOfMeasureId != null">
+                UNIT_OF_MEASURE_ID,
+            </if>
+            <if test="materialCode != null">
+                MATERIAL_CODE,
+            </if>
+            <if test="materialName != null">
+                MATERIAL_NAME,
+            </if>
+            <if test="materialSpecification != null">
+                MATERIAL_SPECIFICATION,
+            </if>
+            <if test="materialModel != null">
+                MATERIAL_MODEL,
+            </if>
+            <if test="materialLength != null">
+                MATERIAL_LENGTH,
+            </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="easMaterialId != null">
+                EAS_MATERIAL_ID,
+            </if>
+            <if test="deleted != null">
+                DELETED,
+            </if>
+            <if test="materialTheoreticalWeight != null">
+                MATERIAL_THEORETICAL_WEIGHT,
+            </if>
+            <if test="materialOrder != null">
+                MATERIAL_ORDER,
+            </if>
+            <if test="materialCount != null">
+                MATERIAL_COUNT,
+            </if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="materialId != null">
+                #{materialId,jdbcType=DECIMAL},
+            </if>
+            <if test="materialTypeId != null">
+                #{materialTypeId,jdbcType=DECIMAL},
+            </if>
+            <if test="unitOfMeasureId != null">
+                #{unitOfMeasureId,jdbcType=DECIMAL},
+            </if>
+            <if test="materialCode != null">
+                #{materialCode,jdbcType=VARCHAR},
+            </if>
+            <if test="materialName != null">
+                #{materialName,jdbcType=VARCHAR},
+            </if>
+            <if test="materialSpecification != null">
+                #{materialSpecification,jdbcType=VARCHAR},
+            </if>
+            <if test="materialModel != null">
+                #{materialModel,jdbcType=VARCHAR},
+            </if>
+            <if test="materialLength != null">
+                #{materialLength,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="easMaterialId != null">
+                #{easMaterialId,jdbcType=VARCHAR},
+            </if>
+            <if test="deleted != null">
+                #{deleted,jdbcType=DECIMAL},
+            </if>
+            <if test="materialTheoreticalWeight != null">
+                #{materialTheoreticalWeight,jdbcType=DECIMAL},
+            </if>
+            <if test="materialOrder != null">
+                #{materialOrder,jdbcType=DECIMAL},
+            </if>
+            <if test="materialCount != null">
+                #{materialCount,jdbcType=DECIMAL},
+            </if>
+        </trim>
+    </insert>
+    <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.RmsMaterial">
+        update RMS_MATERIAL
+        set MATERIAL_TYPE_ID = #{materialTypeId,jdbcType=DECIMAL},
+            UNIT_OF_MEASURE_ID = #{unitOfMeasureId,jdbcType=DECIMAL},
+            MATERIAL_CODE = #{materialCode,jdbcType=VARCHAR},
+            MATERIAL_NAME = #{materialName,jdbcType=VARCHAR},
+            MATERIAL_SPECIFICATION = #{materialSpecification,jdbcType=VARCHAR},
+            MATERIAL_MODEL = #{materialModel,jdbcType=VARCHAR},
+            MATERIAL_LENGTH = #{materialLength,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},
+            EAS_MATERIAL_ID = #{easMaterialId,jdbcType=VARCHAR},
+            DELETED = #{deleted,jdbcType=DECIMAL},
+            MATERIAL_THEORETICAL_WEIGHT = #{materialTheoreticalWeight,jdbcType=DECIMAL},
+            MATERIAL_ORDER = #{materialOrder,jdbcType=DECIMAL},
+            MATERIAL_COUNT = #{materialCount,jdbcType=DECIMAL}
+        where MATERIAL_ID = #{materialId,jdbcType=DECIMAL}
+    </update>
+    <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.RmsMaterial">
+        update RMS_MATERIAL
+        <set>
+            <if test="materialTypeId != null">
+                MATERIAL_TYPE_ID = #{materialTypeId,jdbcType=DECIMAL},
+            </if>
+            <if test="unitOfMeasureId != null">
+                UNIT_OF_MEASURE_ID = #{unitOfMeasureId,jdbcType=DECIMAL},
+            </if>
+            <if test="materialCode != null">
+                MATERIAL_CODE = #{materialCode,jdbcType=VARCHAR},
+            </if>
+            <if test="materialName != null">
+                MATERIAL_NAME = #{materialName,jdbcType=VARCHAR},
+            </if>
+            <if test="materialSpecification != null">
+                MATERIAL_SPECIFICATION = #{materialSpecification,jdbcType=VARCHAR},
+            </if>
+            <if test="materialModel != null">
+                MATERIAL_MODEL = #{materialModel,jdbcType=VARCHAR},
+            </if>
+            <if test="materialLength != null">
+                MATERIAL_LENGTH = #{materialLength,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="easMaterialId != null">
+                EAS_MATERIAL_ID = #{easMaterialId,jdbcType=VARCHAR},
+            </if>
+            <if test="deleted != null">
+                DELETED = #{deleted,jdbcType=DECIMAL},
+            </if>
+            <if test="materialTheoreticalWeight != null">
+                MATERIAL_THEORETICAL_WEIGHT = #{materialTheoreticalWeight,jdbcType=DECIMAL},
+            </if>
+            <if test="materialOrder != null">
+                MATERIAL_ORDER = #{materialOrder,jdbcType=DECIMAL},
+            </if>
+            <if test="materialCount != null">
+                MATERIAL_COUNT = #{materialCount,jdbcType=DECIMAL},
+            </if>
+        </set>
+        where MATERIAL_ID = #{materialId,jdbcType=DECIMAL}
+    </update>
+    <select id="selectByPrimaryKey" parameterType="DECIMAL" resultMap="BaseResultMap">
+        <include refid="select" />
+        where MATERIAL_ID = #{materialId,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 RMS_MATERIAL
+        (MATERIAL_ID,
+        MATERIAL_TYPE_ID, UNIT_OF_MEASURE_ID,
+        MATERIAL_CODE, MATERIAL_NAME, MATERIAL_SPECIFICATION,
+        MATERIAL_MODEL, MATERIAL_LENGTH,
+        INSERT_USERNAME, INSERT_TIME,
+        UPDATE_USERNAME, UPDATE_TIME,
+        INSERT_UPDATE_REMARK, EAS_MATERIAL_ID,
+        DELETED, MATERIAL_THEORETICAL_WEIGHT,
+        MATERIAL_ORDER, MATERIAL_COUNT)
+        ( <foreach collection="list" item="item" separator="union all">
+        select
+        #{item.materialId,jdbcType=DECIMAL},
+        #{item.materialTypeId,jdbcType=DECIMAL}, #{item.unitOfMeasureId,jdbcType=DECIMAL},
+        #{item.materialCode,jdbcType=VARCHAR}, #{item.materialName,jdbcType=VARCHAR}, #{item.materialSpecification,jdbcType=VARCHAR},
+        #{item.materialModel,jdbcType=VARCHAR}, #{item.materialLength,jdbcType=DECIMAL},
+        #{item.insertUsername,jdbcType=VARCHAR}, #{item.insertTime,jdbcType=TIMESTAMP},
+        #{item.updateUsername,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=TIMESTAMP},
+        #{item.insertUpdateRemark,jdbcType=VARCHAR}, #{item.easMaterialId,jdbcType=VARCHAR},
+        #{item.deleted,jdbcType=DECIMAL}, #{item.materialTheoreticalWeight,jdbcType=DECIMAL},
+        #{item.materialOrder,jdbcType=DECIMAL}, #{item.materialCount,jdbcType=DECIMAL} from dual
+    </foreach> )
+    </insert>
+    <update id="batchUpdate" parameterType="java.util.List">
+        update RMS_MATERIAL
+        set
+        MATERIAL_ID=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialId,jdbcType=DECIMAL}
+        </foreach>
+        ,MATERIAL_TYPE_ID=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialTypeId,jdbcType=DECIMAL}
+        </foreach>
+        ,UNIT_OF_MEASURE_ID=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.unitOfMeasureId,jdbcType=DECIMAL}
+        </foreach>
+        ,MATERIAL_CODE=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialCode,jdbcType=VARCHAR}
+        </foreach>
+        ,MATERIAL_NAME=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialName,jdbcType=VARCHAR}
+        </foreach>
+        ,MATERIAL_SPECIFICATION=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialSpecification,jdbcType=VARCHAR}
+        </foreach>
+        ,MATERIAL_MODEL=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialModel,jdbcType=VARCHAR}
+        </foreach>
+        ,MATERIAL_LENGTH=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialLength,jdbcType=DECIMAL}
+        </foreach>
+        ,INSERT_USERNAME=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.insertUsername,jdbcType=VARCHAR}
+        </foreach>
+        ,INSERT_TIME=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.insertTime,jdbcType=TIMESTAMP}
+        </foreach>
+        ,UPDATE_USERNAME=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.updateUsername,jdbcType=VARCHAR}
+        </foreach>
+        ,UPDATE_TIME=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.updateTime,jdbcType=TIMESTAMP}
+        </foreach>
+        ,INSERT_UPDATE_REMARK=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.insertUpdateRemark,jdbcType=VARCHAR}
+        </foreach>
+        ,EAS_MATERIAL_ID=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.easMaterialId,jdbcType=VARCHAR}
+        </foreach>
+        ,DELETED=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.deleted,jdbcType=DECIMAL}
+        </foreach>
+        ,MATERIAL_THEORETICAL_WEIGHT=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialTheoreticalWeight,jdbcType=DECIMAL}
+        </foreach>
+        ,MATERIAL_ORDER=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialOrder,jdbcType=DECIMAL}
+        </foreach>
+        ,MATERIAL_COUNT=
+        <foreach close="end" collection="list" index="index" item="item" open="case MATERIAL_ID" separator=" ">
+            when #{item.materialId,jdbcType=DECIMAL} then #{item.materialCount,jdbcType=DECIMAL}
+        </foreach>
+        where MATERIAL_ID in
+        <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
+            #{item.materialId,jdbcType=DECIMAL}
+        </foreach>
+    </update>
+    <delete id="batchDelete" parameterType="java.util.List">
+        delete from RMS_MATERIAL
+        where MATERIAL_ID in
+        <foreach close=")" collection="list" item="id" open="(" separator=",">
+            #{id}
+        </foreach>
+    </delete>
+    <!-- 友情提示!!!-->
+    <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+
+    <!-- 展示物资信息 -->
+    <select id="getMaterialList" parameterType="java.util.Map" resultType="java.util.Map">
+        SELECT *
+        FROM (
+        SELECT RM.MATERIAL_CODE AS "materialCode",
+        RM.MATERIAL_NAME AS "materialName",
+        RMT.MATERIAL_TYPE_NAME AS "materialTypeName",
+        RMT.MATERIAL_TYPE_STATUS AS "materialTypeStatus",
+        RUOM.UNIT_OF_MEASURE_NAME AS "unitOfMeasureName"
+        FROM RMS_MATERIAL RM
+        LEFT JOIN RMS_MATERIAL_TYPE RMT
+        ON RM.MATERIAL_TYPE_ID = RMT.MATERIAL_TYPE_ID
+        LEFT JOIN RMS_UNIT_OF_MEASURE RUOM
+        ON RM.UNIT_OF_MEASURE_ID = RUOM.UNIT_OF_MEASURE_ID
+        )
+        <where>
+            <if test="materialCode!= null">
+                and
+                <foreach collection="materialCode" item="item" open="(" separator="," close=")">
+                    "materialCode" in #{item}
+                </foreach>
+            </if>
+            <if test="materialName!= null">
+                and
+                <foreach collection="materialName" item="item" open="(" separator="," close=")">
+                    "materialName" in #{item}
+                </foreach>
+            </if>
+            <if test="materialTypeName!= null">
+                and
+                <foreach collection="materialTypeName" item="item" open="(" separator="," close=")">
+                    "materialTypeName" in #{item}
+                </foreach>
+            </if>
+            <if test="materialTypeStatus!= null">
+                and
+                <foreach collection="materialTypeStatus" item="item" open="(" separator="," close=")">
+                    "materialTypeStatus" in #{item}
+                </foreach>
+            </if>
+            <if test="unitOfMeasureName!= null">
+                and
+                <foreach collection="unitOfMeasureName" item="item" open="(" separator="," close=")">
+                    "unitOfMeasureName" in #{item}
+                </foreach>
+            </if>
+        </where>
+    </select>
+</mapper>