luobang 2 tahun lalu
induk
melakukan
a7166fa120

+ 1 - 1
pom.xml

@@ -111,7 +111,7 @@
                     <!--包名-->
                     <targetPackage>com.steerinfo.dil</targetPackage>
                     <tables>
-                        <param>AMS_CONTRACT_TRANSPORT_PRICE</param>
+                        <param>AMSTRUCK_REQUIREMENT_MATERIAL</param>
                     </tables>
                 </configuration>
                 <executions>

+ 36 - 0
src/main/java/com/steerinfo/dil/controller/AmstruckInwardRequirementController.java

@@ -180,6 +180,42 @@ public class AmstruckInwardRequirementController extends BaseRESTfulController {
         PageListAdd data = columnDataUtil.tableColumnData(apiId, null, columnList);
         return success(data);
     }
+
+    @ApiModelProperty(value = "展示钢坯用车需求")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "apiId", value = "207(0,1)/250(2)", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "requirementStatus", value = "需求状态", required = false, dataType = "Integer")
+    })
+    @PostMapping("/getBilletRequirementList")
+    public RESTfulResult getBilletRequirementList(@RequestBody(required = false) Map<String,Object> mapValue,
+                                                 Integer pageNum,
+                                                 Integer pageSize,
+                                                 Integer apiId,
+                                                 String orgCode,
+                                                 String index,
+                                                 String startTime,
+                                                 String endTime) {
+        if (mapValue == null) {
+            mapValue = new HashMap<>();
+        }
+        if (orgCode != null && !orgCode.equals("null")) {
+            String con = "%"+orgCode+"%";
+            mapValue.put("con",con);
+        }
+        if (index != null && !"null".equals(index)) {
+            mapValue.put("index","%"+index+"%");
+        }
+        DataChange.queryDataByDateTime(startTime, endTime, mapValue,sdfDateTime);//根据时间段查询数据
+        PageHelper.startPage(pageNum, pageSize);
+        //分页查询数据
+        List<Map<String, Object>> columnList = amstruckInwardRequirementService.getBilletRequirementList(mapValue);
+        PageListAdd data = columnDataUtil.tableColumnData(apiId, null, columnList);
+        return success(data);
+    }
+
+
     //展示采购内转需求
     @PostMapping("/getPurRequirementList")
     public RESTfulResult getPurRequirementList(@RequestBody(required = false) Map<String,Object> mapValue,

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

@@ -46,4 +46,6 @@ public interface AmstruckInwardRequirementMapper extends IBaseMapper<AmstruckInw
 
     int closeOrderByRequirementId(BigDecimal requirementId);
 
+    List<Map<String, Object>> getBilletRequirementList(Map<String, Object> mapValue);
+
 }

+ 15 - 0
src/main/java/com/steerinfo/dil/model/AmstruckRequirementMaterial.java

@@ -87,6 +87,12 @@ public class AmstruckRequirementMaterial implements IBasePO<BigDecimal> {
     @ApiModelProperty(value="装卸货次序",required=false)
     private BigDecimal loadUnloadSequence;
 
+    /**
+     * 炉号(MATERIAL_LUNO,VARCHAR,50)
+     */
+    @ApiModelProperty(value="炉号",required=false)
+    private String materialLuno;
+
     private static final long serialVersionUID = 1L;
 
     @Override
@@ -203,6 +209,14 @@ public class AmstruckRequirementMaterial implements IBasePO<BigDecimal> {
         this.loadUnloadSequence = loadUnloadSequence;
     }
 
+    public String getMaterialLuno() {
+        return materialLuno;
+    }
+
+    public void setMaterialLuno(String materialLuno) {
+        this.materialLuno = materialLuno == null ? null : materialLuno.trim();
+    }
+
     @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
@@ -222,6 +236,7 @@ public class AmstruckRequirementMaterial implements IBasePO<BigDecimal> {
         sb.append(", requirementUnloadUnitId=").append(requirementUnloadUnitId);
         sb.append(", requirementPlatformId=").append(requirementPlatformId);
         sb.append(", loadUnloadSequence=").append(loadUnloadSequence);
+        sb.append(", materialLuno=").append(materialLuno);
         sb.append(", serialVersionUID=").append(serialVersionUID);
         sb.append("]");
         return sb.toString();

+ 1 - 0
src/main/java/com/steerinfo/dil/service/IAmstruckInwardRequirementService.java

@@ -60,6 +60,7 @@ public interface IAmstruckInwardRequirementService extends IBaseService<Amstruck
 
     int addBilletRequirement(Map<String, Object> mapvalue);
 
+    List<Map<String, Object>> getBilletRequirementList(Map<String, Object> mapValue);
 
 
 //    int insertInwardRequirementPlan(Map<String, Object> mapValue);

+ 5 - 2
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -1481,15 +1481,18 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         AmsSaleOrderMaterial amsSaleOrderMaterial = amsSaleOrderMaterialMapper.selectByPrimaryKey(saleOrderMaterialId);
         if (place != null && !("".equals(place))) {
             List<Map<String, Object>> placeIdList = amsSaleOrderMaterialMapper.getPlaceId(place,shippingAddressId);
-            addressid2 =(BigDecimal) placeIdList.get(0).get("placeId");
+
             if (placeIdList == null || placeIdList.size() == 0) {
                 RmsReceivePlace rmsReceivePlace = new RmsReceivePlace();
-                rmsReceivePlace.setPlaceId(rmsReceivePlaceMapper.selectMaxId());
+                BigDecimal placeId = rmsReceivePlaceMapper.selectMaxId();
+                rmsReceivePlace.setPlaceId(placeId);
                 rmsReceivePlace.setAddressId(shippingAddressId);
                 rmsReceivePlace.setAddressDeliveryAddress(place);
                 amsSaleOrderMaterial.setSaleShippingAddressId(rmsReceivePlace.getPlaceId());
                 rmsReceivePlaceMapper.insertSelective(rmsReceivePlace);
+                addressid2 = placeId;
             } else {
+                addressid2 =(BigDecimal) placeIdList.get(0).get("placeId");
                 amsSaleOrderMaterial.setSaleShippingAddressId((BigDecimal) placeIdList.get(0).get("placeId"));
             }
         }

+ 17 - 22
src/main/java/com/steerinfo/dil/service/impl/AmstruckInwardPlanServiceImpl.java

@@ -78,9 +78,11 @@ public class AmstruckInwardPlanServiceImpl extends BaseServiceImpl<AmstruckInwar
         amstruckInwardPlan.setPlanNumber(DataChange.generateEightDigitsNumber("YSJH",planId.intValue()));
         //设置计划状态为未下发
         amstruckInwardPlan.setPlanStatus(new BigDecimal(0));
-        //if(mapValue.get("addBilletRequirement") != null) {
-        //    addBilletOrder(mapValue);
-        //}
+        if(mapValue.get("addBilletRequirement") != null) {
+            amstruckInwardPlan.setPlanStatus(new BigDecimal(3));
+            mapValue.put("planId",planId);
+            addBilletOrder(mapValue);
+        }
         // 设置常规字段
         // 设置常规字段
         amstruckInwardPlan.setInsertTime(new Date());
@@ -106,17 +108,13 @@ public class AmstruckInwardPlanServiceImpl extends BaseServiceImpl<AmstruckInwar
 
     public int addBilletOrder(Map<String,Object> mapValue) {
         int result = 0;
-        List<Map<String,Object>> mapList = (List<Map<String, Object>>) mapValue.get("mapList");
+        List<Map<String,Object>> mapList = (List<Map<String, Object>>) mapValue.get("capacityList");
         BigDecimal planId = DataChange.dataToBigDecimal(mapValue.get("planId")) ;
         String orgCode =(String) mapValue.get("orgCode");
         Integer carrierId = (Integer) mapValue.get("carrierId");
-        AmstruckInwardPlan amstruckInwardPlan = amstruckInwardPlanMapper.selectByPrimaryKey(planId);
-        amstruckInwardPlan.setPlanStatus(new BigDecimal(3));
-        result += amstruckInwardPlanMapper.updateByPrimaryKeySelective(amstruckInwardPlan);
         for (Map<String,Object> orderMap : mapList) {
             OmstruckOrder omstruckOrder = new OmstruckOrder();
-            BigDecimal capacityId = DataChange.dataToBigDecimal(orderMap.get("capacityNumber"));
-            List<Map<String,Object>>orderMaterialList = (List<Map<String,Object>>)orderMap.get("orderMaterialList");
+            BigDecimal capacityId = DataChange.dataToBigDecimal(orderMap.get("capacityId"));
             BigDecimal orderId = omstruckOrderMapper.selectMaxId();
             // 添加总实绩
             Map<String,Object> orderIdMap = new HashMap<>();
@@ -137,20 +135,17 @@ public class AmstruckInwardPlanServiceImpl extends BaseServiceImpl<AmstruckInwar
             omstruckOrder.setOrderType(new BigDecimal(11));
             omstruckOrder.setCarrierId(new BigDecimal(carrierId));
             result +=omstruckOrderMapper.insertSelective(omstruckOrder);
-            for (Map<String,Object>orderMaterial:orderMaterialList
-            ) {
-                OmstruckOrderMaterial omstruckOrderMaterial = new OmstruckOrderMaterial();
-                BigDecimal orderMaterialId = omstruckOrderMaterialMapper.selectMaxId();
-                BigDecimal materialId = DataChange.dataToBigDecimal(orderMaterial.get("materialId"));
-                omstruckOrderMaterial.setOrderMaterialId(orderMaterialId);
-                omstruckOrderMaterial.setOrderId(orderId);
-                omstruckOrderMaterial.setMaterialId(materialId);
-                omstruckOrderMaterial.setInsertTime(new Date());
-                omstruckOrderMaterial.setUpdateTime(new Date());
-                result +=omstruckOrderMaterialMapper.insertSelective(omstruckOrderMaterial);
-            }
+            OmstruckOrderMaterial omstruckOrderMaterial = new OmstruckOrderMaterial();
+            BigDecimal orderMaterialId = omstruckOrderMaterialMapper.selectMaxId();
+            BigDecimal materialId = DataChange.dataToBigDecimal(mapValue.get("materialId"));
+            omstruckOrderMaterial.setOrderMaterialId(orderMaterialId);
+            omstruckOrderMaterial.setOrderId(orderId);
+            omstruckOrderMaterial.setMaterialId(materialId);
+            omstruckOrderMaterial.setOrderMaterialNumber(DataChange.dataToBigDecimal(mapValue.get("count")));
+            omstruckOrderMaterial.setInsertTime(new Date());
+            omstruckOrderMaterial.setUpdateTime(new Date());
+            result +=omstruckOrderMaterialMapper.insertSelective(omstruckOrderMaterial);
         }
-
         return result;
     }
 

+ 46 - 42
src/main/java/com/steerinfo/dil/service/impl/AmstruckInwardRequirementServiceImpl.java

@@ -1,13 +1,7 @@
 package com.steerinfo.dil.service.impl;
 
-import com.steerinfo.dil.mapper.AmstruckInwardPlanMapper;
-import com.steerinfo.dil.mapper.AmstruckInwardRequirementMapper;
-import com.steerinfo.dil.mapper.AmstruckRequirementMaterialMapper;
-import com.steerinfo.dil.mapper.AmstruckRequirementPlanMapper;
-import com.steerinfo.dil.model.AmstruckInwardPlan;
-import com.steerinfo.dil.model.AmstruckInwardRequirement;
-import com.steerinfo.dil.model.AmstruckRequirementMaterial;
-import com.steerinfo.dil.model.AmstruckRequirementPlan;
+import com.steerinfo.dil.mapper.*;
+import com.steerinfo.dil.model.*;
 import com.steerinfo.dil.service.IAmstruckInwardRequirementService;
 import com.steerinfo.dil.util.DataChange;
 import com.steerinfo.framework.mapper.IBaseMapper;
@@ -53,6 +47,9 @@ public class AmstruckInwardRequirementServiceImpl extends BaseServiceImpl<Amstru
     @Autowired
     AmstruckInwardPlanServiceImpl amstruckInwardPlanService;
 
+    @Autowired
+    RmsMaterialMapper rmsMaterialMapper;
+
     @Override
     protected IBaseMapper<AmstruckInwardRequirement, BigDecimal> getMapper() {
         return amstruckInwardRequirementMapper;
@@ -164,6 +161,7 @@ public class AmstruckInwardRequirementServiceImpl extends BaseServiceImpl<Amstru
 
     //新增钢坯车辆用车需求
     @Override
+    @Transactional
     public int addBilletRequirement(Map<String, Object> mapValue) {
         String requirementType = (String) mapValue.get("requirementType");
         Integer requirementShipperId = (Integer) mapValue.get("requirementShipperId");
@@ -178,7 +176,7 @@ public class AmstruckInwardRequirementServiceImpl extends BaseServiceImpl<Amstru
         amstruckInwardRequirement.setRequirementStatus(new BigDecimal(2));
         amstruckInwardRequirement.setRequirementType(requirementType);
         //设置截止日期为2099年
-        amstruckInwardRequirement.setDueDate(new Date(4095805350L));
+        amstruckInwardRequirement.setDueDate(new Date(4095805350000L));
         //用车单位
         amstruckInwardRequirement.setRequirementShipperId(new BigDecimal(requirementShipperId));
         //判断截止日期是否为空
@@ -186,55 +184,61 @@ public class AmstruckInwardRequirementServiceImpl extends BaseServiceImpl<Amstru
         amstruckInwardRequirement.setInsertTime(new Date());
         amstruckInwardRequirement.setInsertUsername((String) mapValue.get("orgCode"));
         amstruckInwardRequirement.setInsertUpdateRemark(InsertUpdateRemark);
+        amstruckInwardRequirement.setInsertUpdateRemark("内转钢坯专用");
         amstruckInwardRequirement.setDeleted(new BigDecimal(0));
+        amstruckInwardRequirement.setLineId(new BigDecimal(1));
         int result = 0;
         result += amstruckInwardRequirementMapper.insertSelective(amstruckInwardRequirement);
         // 物资中间表
         BigDecimal materialId = amstruckRequirementMaterialMapper.getMaterialId(mapValue);
-        //for (Map<String,Object> requireMaterialMap:mapList
-        //) {
-        //    BigDecimal materialId = DataChange.dataToBigDecimal(requireMaterialMap.get("materialId"));
-        //    if(materialId.intValue() == 0)
-        //        if(purchaseOrderId != null)
-        //            materialId = amstruckInwardRequirementMapper.getMaterialId(new BigDecimal(purchaseOrderId));
-        //    AmstruckRequirementMaterial amstruckRequirementMaterial = new AmstruckRequirementMaterial();
-        //    requireMaterialMap.get("requirementPlatformId");
-        //    requireMaterialMap.get("requirementUnloadUnitId");
-        //    BigDecimal materialNumber = DataChange.dataToBigDecimal(requireMaterialMap.get("orderMaterialNumber"));
-        //    BigDecimal materialWeight = DataChange.dataToBigDecimal(requireMaterialMap.get("orderMaterialWeight"));
-        //    BigDecimal materialPriority = DataChange.dataToBigDecimal(requireMaterialMap.get("materialPriority"));
-        //    BigDecimal requirementPlatformId = DataChange.dataToBigDecimal(requireMaterialMap.get("requirementPlatformId"));
-        //    BigDecimal requirementUnloadUnitId = DataChange.dataToBigDecimal(requireMaterialMap.get("requirementUnloadUnitId"));
-        //    amstruckRequirementMaterial.setRequirementMaterialId(amstruckRequirementMaterialMapper.selectRequirementMaterialId());
-        //    amstruckRequirementMaterial.setRequirementId(requirementId);
-        //    amstruckRequirementMaterial.setLoadUnloadSequence(materialPriority);
-        //    if(materialNumber.intValue() != 0)
-        //        amstruckRequirementMaterial.setMaterialCount(materialNumber);
-        //    if(materialWeight.intValue() != 0)
-        //        amstruckRequirementMaterial.setMaterialWeight(materialWeight);
-        //    if(requirementPlatformId.intValue() !=0){
-        //        amstruckRequirementMaterial.setRequirementPlatformId(requirementPlatformId);
-        //    }
-        //    if(requirementUnloadUnitId.intValue() !=0){
-        //        amstruckRequirementMaterial.setRequirementUnloadUnitId(requirementUnloadUnitId);
-        //    }
-        //    amstruckRequirementMaterial.setMaterialId(materialId);
-        //    amstruckRequirementMaterial.setInsertTime(new Date());
-        //    amstruckRequirementMaterial.setInsertUsername("admin");
-        //    amstruckRequirementMaterial.setInsertUpdateRemark(InsertUpdateRemark);
-        //    result += amstruckRequirementMaterialMapper.insertSelective(amstruckRequirementMaterial);
-        //}
+        if (materialId == null){
+            RmsMaterial rmsMaterial = new RmsMaterial();
+            materialId = rmsMaterialMapper.getMaterialId();
+            rmsMaterial.setMaterialId(materialId);
+            rmsMaterial.setMaterialName("钢坯");
+            rmsMaterial.setMaterialSpecification((String)mapValue.get("type"));
+            rmsMaterial.setMaterialModel((String)mapValue.get("model"));
+            rmsMaterialMapper.insertSelective(rmsMaterial);
+        }
+        AmstruckRequirementMaterial amstruckRequirementMaterial = new AmstruckRequirementMaterial();
+        BigDecimal materialNumber = DataChange.dataToBigDecimal(mapValue.get("count"));
+        BigDecimal requirementPlatformId = DataChange.dataToBigDecimal(mapValue.get("requirementPlatformId"));
+        BigDecimal requirementUnloadUnitId = DataChange.dataToBigDecimal(mapValue.get("requirementUnloadUnitId"));
+        String luNo =  mapValue.get("heatNo").toString();
+        amstruckRequirementMaterial.setRequirementMaterialId(amstruckRequirementMaterialMapper.selectRequirementMaterialId());
+        amstruckRequirementMaterial.setMaterialLuno(luNo);
+        amstruckRequirementMaterial.setRequirementId(requirementId);
+        if (materialNumber.intValue() != 0)
+                amstruckRequirementMaterial.setMaterialCount(materialNumber);
+        if (requirementPlatformId.intValue() !=0){
+                amstruckRequirementMaterial.setRequirementPlatformId(requirementPlatformId);
+            }
+        if (requirementUnloadUnitId.intValue() !=0){
+                amstruckRequirementMaterial.setRequirementUnloadUnitId(requirementUnloadUnitId);
+            }
+        amstruckRequirementMaterial.setMaterialId(materialId);
+        amstruckRequirementMaterial.setInsertTime(new Date());
+        amstruckRequirementMaterial.setInsertUsername("admin");
+        amstruckRequirementMaterial.setInsertUpdateRemark(InsertUpdateRemark);
+        result += amstruckRequirementMaterialMapper.insertSelective(amstruckRequirementMaterial);
         //制定计划
         Map<String, Object> planMap = new HashMap<>();
         planMap.put("carrierId",5848);
         planMap.put("requirementId",requirementId);
         planMap.put("addBilletRequirement",1);
+        planMap.put("materialId",materialId);
+        planMap.putAll(mapValue);
         result =+ amstruckInwardPlanService.insert(planMap);
         //分解计划-车牌号,物资
 
         return result;
     }
 
+    @Override
+    public List<Map<String, Object>> getBilletRequirementList(Map<String, Object> mapValue) {
+        return amstruckInwardRequirementMapper.getBilletRequirementList(mapValue);
+    }
+
     /**
      * 查询用车需求
      * @param mapValue

+ 1 - 0
src/main/resources/com/steerinfo/dil/mapper/AmsSaleOrderMapper.xml

@@ -4588,6 +4588,7 @@
            LEFT JOIN TMSTRUCK_ARRIVAL_RESULT  TAR ON TAR.RESULT_TOTAL_ID=TTR.RESULT_TOTAL_ID
            LEFT JOIN TMSTRUCK_RECEIPT_RESULT TRR ON TRR.RESULT_TOTAL_ID=TTR.RESULT_TOTAL_ID
     where RC.CAPACITY_NUMBER=#{capacityNumber} and OO.order_status=5
+    and oo.order_type = 1
       fetch next 1 rows only
   </select>
   <select id="getOrderMes" resultType="java.util.Map" parameterType="java.util.Map">

+ 42 - 1
src/main/resources/com/steerinfo/dil/mapper/AmstruckInwardRequirementMapper.xml

@@ -832,10 +832,11 @@
         LEFT JOIN RMS_TRANS_RANGE RTR ON RTR.TRANS_RANGE_ID = AIR.LINE_ID
         LEFT JOIN RMS_MATERIAL_TYPE RMT ON RMT.MATERIAL_TYPE_ID = RM.MATERIAL_TYPE_ID
         LEFT JOIN RMS_CAPACITY_TYPE r_c_type ON air.capacity_type_id = r_c_type.CAPACITY_TYPE_ID
-        left join ams_contract_transport_price actp on actp.capacity_type_id =r_c_type.capacity_type_id
+        left join ams_contract_transport_price actp on actp.capacity_type_id = r_c_type.capacity_type_id
         WHERE
         AIR.DELETED = 0
         AND AIR.PURCHASE_ORDER_ID IS NULL
+        AND ACTP.DELETED = 0
         <if test="con !=null ">
             AND AIR.INSERT_USERNAME LIKE #{con}
         </if>
@@ -1005,6 +1006,7 @@
         WHERE
         AIR.REQUIREMENT_STATUS = #{ requirementStatus }
         AND AIR.DELETED = 0
+        AND ACTP.DELETED = 0
         <if test="con !=null ">
             AND AIR.INSERT_USERNAME LIKE #{con}
         </if>
@@ -1430,6 +1432,45 @@
         select AIR.PURCHASE_ORDER_ID from AMSTRUCK_INWARD_REQUIREMENT AIR
         WHERE AIR.REQUIREMENT_ID = #{requirementId}
     </select>
+    <select id="getBilletRequirementList" resultType="java.util.Map">
+        SELECT * FROM (
+            SELECT
+            AIR.REQUIREMENT_NUMBER AS "requirementNumber",
+            AIR.REQUIREMENT_TYPE AS "requirementType",
+            RTR.TRANS_RANGE_VALUE AS "rangeValue",
+            RS.SHIPPER_NAME AS "shipperName",
+            AIR.INSERT_TIME AS "insertTime",
+            rw1.warehouse_name "unloadName",
+            rw2.warehouse_name "loadName",
+            arm.material_count "materialCount",
+            rm.material_name "materialName",
+            rm.material_specification "materialSpe",
+            rm.MATERIAL_MODEL "materialModel",
+            ARM.MATERIAL_LUNO "materialLuNo",
+            AIR.REQUIREMENT_ID "requirementId"
+            FROM
+            AMSTRUCK_INWARD_REQUIREMENT AIR
+            LEFT JOIN RMS_SHIPPER RS ON RS.SHIPPER_ID = AIR.REQUIREMENT_SHIPPER_ID
+            LEFT JOIN amstruck_requirement_material arm ON air.requirement_id = arm.requirement_id
+            LEFT JOIN rms_warehouse rw1 ON rw1.warehouse_id = arm.requirement_unload_unit_id
+            LEFT JOIN rms_warehouse rw2 ON rw2.warehouse_id = arm.requirement_platform_id
+            LEFT JOIN rms_material rm ON rm.material_id = arm.material_id
+            LEFT JOIN amstruck_inward_requirement air ON air.requirement_id = arm.requirement_id
+            LEFT JOIN RMS_TRANS_RANGE RTR ON RTR.TRANS_RANGE_ID = AIR.LINE_ID
+            LEFT JOIN RMS_MATERIAL_TYPE RMT ON RMT.MATERIAL_TYPE_ID = RM.MATERIAL_TYPE_ID
+            WHERE
+            AIR.DELETED = 0
+            AND AIR.PURCHASE_ORDER_ID IS NULL
+            AND ARM.MATERIAL_LUNO IS NOT NULL
+        <if test="oneDate != null">
+            and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= AIR.INSERT_TIME
+        </if>
+        <if test="startDate != null">
+            and to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= AIR.INSERT_TIME
+            and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= AIR.INSERT_TIME
+        </if>
+        )
+    </select>
     <update id="closeOrderByRequirementId" parameterType="decimal">
         update OMSTRUCK_ORDER OO
         set oo.ORDER_STATUS = 7,

+ 63 - 58
src/main/resources/com/steerinfo/dil/mapper/AmstruckRequirementMaterialMapper.xml

@@ -15,16 +15,18 @@
     <result column="REQUIREMENT_UNLOAD_UNIT_ID" jdbcType="DECIMAL" property="requirementUnloadUnitId" />
     <result column="REQUIREMENT_PLATFORM_ID" jdbcType="DECIMAL" property="requirementPlatformId" />
     <result column="LOAD_UNLOAD_SEQUENCE" jdbcType="DECIMAL" property="loadUnloadSequence" />
+    <result column="MATERIAL_LUNO" jdbcType="VARCHAR" property="materialLuno" />
   </resultMap>
   <sql id="columns">
-    REQUIREMENT_MATERIAL_ID, REQUIREMENT_ID, MATERIAL_ID, MATERIAL_WEIGHT, MATERIAL_COUNT,
-    INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK,
-    REQUIREMENT_UNLOAD_UNIT_ID, REQUIREMENT_PLATFORM_ID, LOAD_UNLOAD_SEQUENCE
+    REQUIREMENT_MATERIAL_ID, REQUIREMENT_ID, MATERIAL_ID, MATERIAL_WEIGHT, MATERIAL_COUNT, 
+    INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK, 
+    REQUIREMENT_UNLOAD_UNIT_ID, REQUIREMENT_PLATFORM_ID, LOAD_UNLOAD_SEQUENCE, MATERIAL_LUNO
   </sql>
   <sql id="columns_alias">
-    t.REQUIREMENT_MATERIAL_ID, t.REQUIREMENT_ID, t.MATERIAL_ID, t.MATERIAL_WEIGHT, t.MATERIAL_COUNT,
-    t.INSERT_USERNAME, t.INSERT_TIME, t.UPDATE_USERNAME, t.UPDATE_TIME, t.INSERT_UPDATE_REMARK,
-    t.REQUIREMENT_UNLOAD_UNIT_ID, t.REQUIREMENT_PLATFORM_ID, t.LOAD_UNLOAD_SEQUENCE
+    t.REQUIREMENT_MATERIAL_ID, t.REQUIREMENT_ID, t.MATERIAL_ID, t.MATERIAL_WEIGHT, t.MATERIAL_COUNT, 
+    t.INSERT_USERNAME, t.INSERT_TIME, t.UPDATE_USERNAME, t.UPDATE_TIME, t.INSERT_UPDATE_REMARK, 
+    t.REQUIREMENT_UNLOAD_UNIT_ID, t.REQUIREMENT_PLATFORM_ID, t.LOAD_UNLOAD_SEQUENCE, 
+    t.MATERIAL_LUNO
   </sql>
   <sql id="select">
     SELECT <include refid="columns" /> FROM AMSTRUCK_REQUIREMENT_MATERIAL
@@ -73,6 +75,9 @@
       <if test="loadUnloadSequence != null">
         and LOAD_UNLOAD_SEQUENCE = #{loadUnloadSequence}
       </if>
+      <if test="materialLuno != null and materialLuno != ''">
+        and MATERIAL_LUNO = #{materialLuno}
+      </if>
     </where>
   </sql>
   <sql id="whereLike">
@@ -116,6 +121,9 @@
       <if test="loadUnloadSequence != null">
         and LOAD_UNLOAD_SEQUENCE = #{loadUnloadSequence}
       </if>
+      <if test="materialLuno != null and materialLuno != ''">
+        and MATERIAL_LUNO LIKE '%${materialLuno}%'
+      </if>
     </where>
   </sql>
   <delete id="deleteByPrimaryKey" parameterType="DECIMAL">
@@ -161,20 +169,23 @@
     <if test="loadUnloadSequence != null">
       or LOAD_UNLOAD_SEQUENCE = #{loadUnloadSequence}
     </if>
+    <if test="materialLuno != null and materialLuno != ''">
+      or MATERIAL_LUNO = #{materialLuno}
+    </if>
   </delete>
   <insert id="insert" parameterType="com.steerinfo.dil.model.AmstruckRequirementMaterial">
     insert into AMSTRUCK_REQUIREMENT_MATERIAL (REQUIREMENT_MATERIAL_ID, REQUIREMENT_ID,
-      MATERIAL_ID, MATERIAL_WEIGHT, MATERIAL_COUNT,
-      INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME,
-      UPDATE_TIME, INSERT_UPDATE_REMARK, REQUIREMENT_UNLOAD_UNIT_ID,
-      REQUIREMENT_PLATFORM_ID, LOAD_UNLOAD_SEQUENCE
-      )
+                                               MATERIAL_ID, MATERIAL_WEIGHT, MATERIAL_COUNT,
+                                               INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME,
+                                               UPDATE_TIME, INSERT_UPDATE_REMARK, REQUIREMENT_UNLOAD_UNIT_ID,
+                                               REQUIREMENT_PLATFORM_ID, LOAD_UNLOAD_SEQUENCE,
+                                               MATERIAL_LUNO)
     values (#{requirementMaterialId,jdbcType=DECIMAL}, #{requirementId,jdbcType=DECIMAL},
-      #{materialId,jdbcType=DECIMAL}, #{materialWeight,jdbcType=DECIMAL}, #{materialCount,jdbcType=DECIMAL},
-      #{insertUsername,jdbcType=VARCHAR}, #{insertTime,jdbcType=TIMESTAMP}, #{updateUsername,jdbcType=VARCHAR},
-      #{updateTime,jdbcType=TIMESTAMP}, #{insertUpdateRemark,jdbcType=VARCHAR}, #{requirementUnloadUnitId,jdbcType=DECIMAL},
-      #{requirementPlatformId,jdbcType=DECIMAL}, #{loadUnloadSequence,jdbcType=DECIMAL}
-      )
+            #{materialId,jdbcType=DECIMAL}, #{materialWeight,jdbcType=DECIMAL}, #{materialCount,jdbcType=DECIMAL},
+            #{insertUsername,jdbcType=VARCHAR}, #{insertTime,jdbcType=TIMESTAMP}, #{updateUsername,jdbcType=VARCHAR},
+            #{updateTime,jdbcType=TIMESTAMP}, #{insertUpdateRemark,jdbcType=VARCHAR}, #{requirementUnloadUnitId,jdbcType=DECIMAL},
+            #{requirementPlatformId,jdbcType=DECIMAL}, #{loadUnloadSequence,jdbcType=DECIMAL},
+            #{materialLuno,jdbcType=VARCHAR})
   </insert>
   <insert id="insertSelective" parameterType="com.steerinfo.dil.model.AmstruckRequirementMaterial">
     insert into AMSTRUCK_REQUIREMENT_MATERIAL
@@ -218,6 +229,9 @@
       <if test="loadUnloadSequence != null">
         LOAD_UNLOAD_SEQUENCE,
       </if>
+      <if test="materialLuno != null">
+        MATERIAL_LUNO,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="requirementMaterialId != null">
@@ -259,22 +273,26 @@
       <if test="loadUnloadSequence != null">
         #{loadUnloadSequence,jdbcType=DECIMAL},
       </if>
+      <if test="materialLuno != null">
+        #{materialLuno,jdbcType=VARCHAR},
+      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.AmstruckRequirementMaterial">
     update AMSTRUCK_REQUIREMENT_MATERIAL
     set REQUIREMENT_ID = #{requirementId,jdbcType=DECIMAL},
-      MATERIAL_ID = #{materialId,jdbcType=DECIMAL},
-      MATERIAL_WEIGHT = #{materialWeight,jdbcType=DECIMAL},
-      MATERIAL_COUNT = #{materialCount,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},
-      REQUIREMENT_UNLOAD_UNIT_ID = #{requirementUnloadUnitId,jdbcType=DECIMAL},
-      REQUIREMENT_PLATFORM_ID = #{requirementPlatformId,jdbcType=DECIMAL},
-      LOAD_UNLOAD_SEQUENCE = #{loadUnloadSequence,jdbcType=DECIMAL}
+        MATERIAL_ID = #{materialId,jdbcType=DECIMAL},
+        MATERIAL_WEIGHT = #{materialWeight,jdbcType=DECIMAL},
+        MATERIAL_COUNT = #{materialCount,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},
+        REQUIREMENT_UNLOAD_UNIT_ID = #{requirementUnloadUnitId,jdbcType=DECIMAL},
+        REQUIREMENT_PLATFORM_ID = #{requirementPlatformId,jdbcType=DECIMAL},
+        LOAD_UNLOAD_SEQUENCE = #{loadUnloadSequence,jdbcType=DECIMAL},
+        MATERIAL_LUNO = #{materialLuno,jdbcType=VARCHAR}
     where REQUIREMENT_MATERIAL_ID = #{requirementMaterialId,jdbcType=DECIMAL}
   </update>
   <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.AmstruckRequirementMaterial">
@@ -316,6 +334,9 @@
       <if test="loadUnloadSequence != null">
         LOAD_UNLOAD_SEQUENCE = #{loadUnloadSequence,jdbcType=DECIMAL},
       </if>
+      <if test="materialLuno != null">
+        MATERIAL_LUNO = #{materialLuno,jdbcType=VARCHAR},
+      </if>
     </set>
     where REQUIREMENT_MATERIAL_ID = #{requirementMaterialId,jdbcType=DECIMAL}
   </update>
@@ -331,30 +352,7 @@
     <include refid="select" />
     <include refid="whereLike" />
   </select>
-    <select id="getRequirementMaterial" resultType="java.util.Map">
-      select rw1.warehouse_name "unloadName",
-             rw1.WAREHOUSE_ID "unloadId",
-             rw2.warehouse_name "loadName",
-             rw2.WAREHOUSE_ID "loadId",
-             arm.material_weight "materialWeight",
-             arm.material_count "materialCount",
-             arm.MATERIAL_ID "materialId",
-             rm.material_name || rm.material_specification || '(' ||
-             rm.material_model || ')' "materialName",
-             arm.load_unload_sequence "loadSequence"
-      from amstruck_requirement_material arm
-             left join rms_warehouse rw1
-                       on rw1.warehouse_id = arm.requirement_unload_unit_id
-             left join rms_warehouse rw2
-                       on rw2.warehouse_id = arm.requirement_platform_id
-             left join rms_material rm
-                       on rm.material_id = arm.material_id
-             left join amstruck_inward_requirement air
-                       on air.requirement_id = arm.requirement_id
-      where air.requirement_id = #{requirementId}
-    </select>
-
-    <insert id="batchInsert" parameterType="java.util.List">
+  <insert id="batchInsert" parameterType="java.util.List">
     insert into AMSTRUCK_REQUIREMENT_MATERIAL
     (REQUIREMENT_MATERIAL_ID,
     REQUIREMENT_ID, MATERIAL_ID, MATERIAL_WEIGHT,
@@ -362,7 +360,8 @@
     INSERT_TIME, UPDATE_USERNAME,
     UPDATE_TIME, INSERT_UPDATE_REMARK,
     REQUIREMENT_UNLOAD_UNIT_ID, REQUIREMENT_PLATFORM_ID,
-    LOAD_UNLOAD_SEQUENCE)
+    LOAD_UNLOAD_SEQUENCE, MATERIAL_LUNO
+    )
     ( <foreach collection="list" item="item" separator="union all">
     select
     #{item.requirementMaterialId,jdbcType=DECIMAL},
@@ -371,7 +370,8 @@
     #{item.insertTime,jdbcType=TIMESTAMP}, #{item.updateUsername,jdbcType=VARCHAR},
     #{item.updateTime,jdbcType=TIMESTAMP}, #{item.insertUpdateRemark,jdbcType=VARCHAR},
     #{item.requirementUnloadUnitId,jdbcType=DECIMAL}, #{item.requirementPlatformId,jdbcType=DECIMAL},
-    #{item.loadUnloadSequence,jdbcType=DECIMAL} from dual
+    #{item.loadUnloadSequence,jdbcType=DECIMAL}, #{item.materialLuno,jdbcType=VARCHAR}
+    from dual
   </foreach> )
   </insert>
   <update id="batchUpdate" parameterType="java.util.List">
@@ -429,6 +429,10 @@
     <foreach close="end" collection="list" index="index" item="item" open="case REQUIREMENT_MATERIAL_ID" separator=" ">
       when #{item.requirementMaterialId,jdbcType=DECIMAL} then #{item.loadUnloadSequence,jdbcType=DECIMAL}
     </foreach>
+    ,MATERIAL_LUNO=
+    <foreach close="end" collection="list" index="index" item="item" open="case REQUIREMENT_MATERIAL_ID" separator=" ">
+      when #{item.requirementMaterialId,jdbcType=DECIMAL} then #{item.materialLuno,jdbcType=VARCHAR}
+    </foreach>
     where REQUIREMENT_MATERIAL_ID in
     <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
       #{item.requirementMaterialId,jdbcType=DECIMAL}
@@ -442,13 +446,14 @@
     </foreach>
   </delete>
   <!-- 友情提示!!!-->
+  <!-- 友情提示!!!-->
+  <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+  <!-- 友情提示!!!-->
   <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
   <select id="getMaterialId" resultType="java.math.BigDecimal" parameterType="map">
     select RM.MATERIAL_ID from RMS_MATERIAL RM
-    left join RMS_MATERIAL_TYPE RMT
-    on rmt.MATERIAL_TYPE_ID = rm.MATERIAL_TYPE_ID
-    where rmt.MATERIAL_TYPE_NAME = '钢坯'
-    and rm.MATERIAL_MODEL = #{model}
-    and rm.MATERIAL_SPECIFICATION = #{type}
+    where rm.MATERIAL_NAME = '钢坯'
+    AND RM.MATERIAL_SPECIFICATION = #{type}
+    AND RM.MATERIAL_MODEL = #{model}
   </select>
 </mapper>