hujg 2 سال پیش
والد
کامیت
7599453ef8

+ 41 - 1
src/main/java/com/steerinfo/dil/controller/AmsSaleOrderController.java

@@ -707,7 +707,12 @@ public class AmsSaleOrderController extends BaseRESTfulController {
     @ApiModelProperty(value = "钢材派单")
     @PostMapping("/dispatchSteelOrder")
     public RESTfulResult dispatchSteelOrder(@RequestBody List<Map<String,Object>> mapList) throws Exception {
-        int result = amsSaleOrderService.dispatchSteelOrder(mapList);
+        int result;
+        try {
+            result = amsSaleOrderService.dispatchSteelOrder(mapList);
+        } catch (Exception e) {
+            return failed(e.getMessage());
+        }
         if (result == 0) {
             return failed("匹配不到车牌号!");
         }
@@ -1221,4 +1226,39 @@ public class AmsSaleOrderController extends BaseRESTfulController {
         System.out.println(resultMap);
         return success(result);
     }
+
+    @ApiModelProperty(value = "展示已审核化产焦炭销售订单列表")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "apiId", value = "409/475", required = false, dataType = "BigDecimal")
+    })
+    @PostMapping("/getSaleCokeOrder")
+    public RESTfulResult getSaleCokeOrder(@RequestBody(required = false) Map<String, Object> mapValue,
+                                             Integer pageNum,
+                                             Integer pageSize,
+                                             Integer apiId,
+                                             String con,
+                                             String consigneeSsoId,
+                                             Integer shipperId,
+                                             @RequestParam(required = false) String startTime,
+                                             @RequestParam(required = false) String endTime
+    ) {
+        if (con != null && !"".equals(con) && !"null".equals(con)) {
+            mapValue.put("con", con);
+        }
+        if (consigneeSsoId != null && !"".equals(consigneeSsoId) && !"null".equals(consigneeSsoId)) {
+            mapValue.put("consigneeSsoId",consigneeSsoId);
+        }
+        if (shipperId != null && !"".equals(shipperId) && !"null".equals(shipperId)) {
+            mapValue.put("shipperId", shipperId);
+        }
+        DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
+        //不分页筛选数据
+        PageHelper.startPage(pageNum, pageSize);
+        //分页数据
+        List<Map<String, Object>> saleOrderList = amsSaleOrderService.getSaleCokeOrder(mapValue);
+        PageListAdd pageList = columnDataUtil.tableColumnData4(apiId, null, saleOrderList);
+        return success(pageList);
+    }
 }

+ 3 - 0
src/main/java/com/steerinfo/dil/mapper/AmsSaleOrderMapper.java

@@ -134,4 +134,7 @@ public interface AmsSaleOrderMapper extends IBaseMapper<AmsSaleOrder, BigDecimal
     int updateCapacityNumberInFactory(Map<String, Object> mapValue);
     // 根据省市县id匹配承运商
     List<Map<String, Object>> getCarrierByAddress(BigDecimal addressId);
+
+    List<Map<String, Object>> getSaleCokeOrder(Map<String, Object> mapValue);
+    Integer findStatus(BigDecimal saleOrderMaterialId);
 }

+ 3 - 1
src/main/java/com/steerinfo/dil/service/IAmsSaleOrderService.java

@@ -105,7 +105,7 @@ public interface IAmsSaleOrderService {
     List<Map<String, Object>> getTruckNoAndMaterialList(BigDecimal saleOrderId);
 
     // 钢材派发运输订单
-    int dispatchSteelOrder(List<Map<String, Object>> mapList);
+    int dispatchSteelOrder(List<Map<String, Object>> mapList) throws Exception;
 
     // 根据详细地址id匹配承运商
     List<Map<String,Object>> getCarrierByPlace(BigDecimal placeId);
@@ -163,4 +163,6 @@ public interface IAmsSaleOrderService {
     List<Map<String, Object>> getCarrierTruckNoAndMaterialList(Map<String, Object> map);
     // 关闭单个钢材物资分录
     int closeSteelMaterialId(Map<String, Object> mapValue);
+    // 展示已审核化产焦炭销售订单列表
+    List<Map<String, Object>> getSaleCokeOrder(Map<String, Object> mapValue);
 }

+ 19 - 3
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -373,7 +373,7 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         //删除所有从表信息
         //amsSaleOrderMapper.deleteBySaleOrderId(saleOrderId);
         AmsSaleOrder amsSaleOrder = amsSaleOrderMapper.selectByPrimaryKey(saleOrderId);
-        amsSaleOrder.setDeleted(new BigDecimal(1));
+        amsSaleOrder.setDeleted(new BigDecimal(2));
         return amsSaleOrderMapper.updateByPrimaryKey(amsSaleOrder);
     }
 
@@ -726,7 +726,12 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
      */
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public int dispatchSteelOrder(List<Map<String, Object>> mapList) {
+    public int dispatchSteelOrder(List<Map<String, Object>> mapList) throws Exception {
+        Map<String, Object> stringObjectMap = mapList.get(0);
+        Integer saleStatus = amsSaleOrderMapper.findStatus(DataChange.dataToBigDecimal(stringObjectMap.get("saleOrderMaterialId")));
+        if (saleStatus == 1) {
+            throw new Exception("订单未审核,无法派车!");
+        }
         int result = 0;
         // 遍历每一行
         for (Map<String,Object> map : mapList) {
@@ -958,7 +963,7 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         int result = 0;
         AmsSaleOrder amsSaleOrder = new AmsSaleOrder();
         amsSaleOrder.setSaleOrderId(saleOrderId);
-        amsSaleOrder.setDeleted(new BigDecimal(1));
+        amsSaleOrder.setDeleted(new BigDecimal(2));
         // 如果是已经上传金蝶的销售订单,则同步删除
         AmsSaleOrder amsSaleOrder1 = amsSaleOrderMapper.selectByPrimaryKey(saleOrderId);
         if (amsSaleOrder1.getSaleOrderStatus().intValue() == 1 || amsSaleOrder1.getSaleOrderStatus().intValue() == 2 || amsSaleOrder1.getSaleOrderStatus().intValue() == 4) {
@@ -1683,4 +1688,15 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         result += amsSaleMaterialMapper.deleteWmspOutResult(mapValue);
         return result;
     }
+
+    /**
+     * 展示已审核化产焦炭销售订单列表
+     * @param mapValue
+     * @return
+     */
+    @Override
+    public List<Map<String, Object>> getSaleCokeOrder(Map<String, Object> mapValue) {
+        List<Map<String, Object>> resultList = amsSaleOrderMapper.getSaleCokeOrder(mapValue);
+        return resultList;
+    }
 }

+ 228 - 49
src/main/resources/com/steerinfo/dil/mapper/AmsSaleOrderMapper.xml

@@ -2456,51 +2456,54 @@
   </select>
 
   <select id="getTruckNoAndMaterial" parameterType="java.util.Map" resultType="java.util.Map" >
-    SELECT DISTINCT ASOM.SALE_ORDER_MATERIAL_TRUCK_NO              AS "truckNo",
-                    RM.MATERIAL_NAME                               AS "materialName",
-                    ASM.MATERIAL_ID                                AS "materialId",
-                    ASM.MATERIAL_NUMBER                            AS "materialNumber",
-                    ASM.MATERIAL_WEIGHT                            AS "materialWeight",
-                    ASOM.SALE_DATE_OF_RECEIPT                      AS "receiptDate",
-                    RM.MATERIAL_SPECIFICATION || RM.MATERIAL_MODEL AS "materialModelSpecification",
-                    RM.MATERIAL_CODE                               AS "materialCode",
-                    RRA.ADDRESS_PROVINCE || RRA.ADDRESS_DISTRICT || RRA.ADDRESS_TOWN ||
-                    RRP.ADDRESS_DELIVERY_ADDRESS                   AS "place",
-                    ASOM.SALE_DATE_OF_RECEIPT                      AS "receiptDate",
-                    ASOM.SALE_ORDER_CONSIGNEE_TEL                  AS "saleOrderConsigneeTel",
-                    ASOM.SALE_ORDER_CONSIGNEE                      AS "saleOrderConsignee",
-                    ASOM.SALE_ORDER_MATERIAL_ID                    AS "saleOrderMaterialId",
-                    ASOM.SALE_SHIPPING_ADDRESS_ID                  AS "placeId",
-                    RC.CAPACITY_NUMBER                             AS "capacityNumber",
-                    ADSO.CARRIER_ID                                AS "carrierId",
-                    RCA.CARRIER_NAME                               AS "carrierName",
-                    ASOM.TRUCK_REMARK                              AS "truckRemark"
+    SELECT DISTINCT ASOM.SALE_ORDER_MATERIAL_TRUCK_NO AS "truckNo",
+    RM.MATERIAL_NAME AS "materialName",
+    ASM.MATERIAL_ID AS "materialId",
+    ASM.MATERIAL_NUMBER AS "materialNumber",
+    ASM.MATERIAL_WEIGHT AS "materialWeight",
+    ASOM.SALE_DATE_OF_RECEIPT AS "receiptDate",
+    RM.MATERIAL_SPECIFICATION || RM.MATERIAL_MODEL AS "materialModelSpecification",
+    RM.MATERIAL_CODE AS "materialCode",
+    RRA.ADDRESS_PROVINCE || RRA.ADDRESS_DISTRICT || RRA.ADDRESS_TOWN ||
+    RRP.ADDRESS_DELIVERY_ADDRESS AS "place",
+    ASOM.SALE_DATE_OF_RECEIPT AS "receiptDate",
+    ASOM.SALE_ORDER_CONSIGNEE_TEL AS "saleOrderConsigneeTel",
+    ASOM.SALE_ORDER_CONSIGNEE AS "saleOrderConsignee",
+    ASOM.SALE_ORDER_MATERIAL_ID AS "saleOrderMaterialId",
+    ASOM.SALE_SHIPPING_ADDRESS_ID AS "placeId",
+    RC.CAPACITY_NUMBER AS "capacityNumber",
+    ADSO.CARRIER_ID AS "carrierId",
+    RCA.CARRIER_NAME AS "carrierName",
+    ASOM.TRUCK_REMARK AS "truckRemark",
+    DECODE(ASO.SALE_ORDER_STATUS,1,'订单已上报',2,'销售已提交',4,'财务已审批') "statusStr"
     FROM AMS_SALE_TRUCKNO_MATERIAL ASTM
-           LEFT JOIN AMS_SALE_ORDER_MATERIAL ASOM
-                     ON ASOM.SALE_ORDER_MATERIAL_ID = ASTM.SALE_ORDER_MATERIAL_ID
-           LEFT JOIN RMS_RECEIVE_PLACE RRP
-                     ON RRP.PLACE_ID = ASOM.SALE_SHIPPING_ADDRESS_ID
-           LEFT JOIN RMS_RECEIVE_ADDRESS RRA
-                     ON RRA.ADDRESS_ID = RRP.ADDRESS_ID
-           LEFT JOIN AMS_SALE_MATERIAL ASM
-                     ON ASTM.MATERIAL_ID = ASM.SALE_MATERIAL_ID
-           LEFT JOIN RMS_MATERIAL RM
-                     ON RM.MATERIAL_ID = ASM.MATERIAL_ID
-           LEFT JOIN OMSTRUCK_ORDER OO
-                     ON OO.ORDER_PLAN_ID = ASOM.SALE_ORDER_MATERIAL_ID
-           LEFT JOIN RMS_CAPACITY RC
-                     ON RC.CAPACITY_ID = OO.CAPACITY_ID
-           LEFT JOIN AMS_DISPATCH_SALE_ORDER ADSO
-                     ON ADSO.SALE_ORDER_MATERIAL_ID = ASOM.SALE_ORDER_MATERIAL_ID
-           LEFT JOIN RMS_CARRIER RCA
-                     ON RCA.CARRIER_ID = ADSO.CARRIER_ID
+    LEFT JOIN AMS_SALE_ORDER_MATERIAL ASOM
+    ON ASOM.SALE_ORDER_MATERIAL_ID = ASTM.SALE_ORDER_MATERIAL_ID
+    LEFT JOIN AMS_SALE_ORDER ASO
+    ON ASO.SALE_ORDER_ID = ASOM.SALE_ORDER_ID
+    LEFT JOIN RMS_RECEIVE_PLACE RRP
+    ON RRP.PLACE_ID = ASOM.SALE_SHIPPING_ADDRESS_ID
+    LEFT JOIN RMS_RECEIVE_ADDRESS RRA
+    ON RRA.ADDRESS_ID = RRP.ADDRESS_ID
+    LEFT JOIN AMS_SALE_MATERIAL ASM
+    ON ASTM.MATERIAL_ID = ASM.SALE_MATERIAL_ID
+    LEFT JOIN RMS_MATERIAL RM
+    ON RM.MATERIAL_ID = ASM.MATERIAL_ID
+    LEFT JOIN OMSTRUCK_ORDER OO
+    ON OO.ORDER_PLAN_ID = ASOM.SALE_ORDER_MATERIAL_ID
+    LEFT JOIN RMS_CAPACITY RC
+    ON RC.CAPACITY_ID = OO.CAPACITY_ID
+    LEFT JOIN AMS_DISPATCH_SALE_ORDER ADSO
+    ON ADSO.SALE_ORDER_MATERIAL_ID = ASOM.SALE_ORDER_MATERIAL_ID
+    LEFT JOIN RMS_CARRIER RCA
+    ON RCA.CARRIER_ID = ADSO.CARRIER_ID
     WHERE ASOM.SALE_ORDER_ID = #{saleOrderId}
-      <if test="carrierSsoId != null" >
-        AND RCA.CARRIER_SSO_ID = #{carrierSsoId}
-      </if>
-      AND OO.ORDER_ID IS NULL
-      AND ADSO.DISPATCH_ID IS NOT NULL
-      AND ASM.DELETED IS NULL
+    <if test="carrierSsoId != null">
+      AND RCA.CARRIER_SSO_ID = #{carrierSsoId}
+    </if>
+    AND OO.ORDER_ID IS NULL
+    AND ADSO.DISPATCH_ID IS NOT NULL
+    AND ASM.DELETED IS NULL
     ORDER BY ASOM.SALE_ORDER_MATERIAL_TRUCK_NO ASC
   </select>
 
@@ -2555,7 +2558,7 @@
     a_s_order.SALE_ORDER_TAX "saleOrderTax",
     a_s_order.SALE_REMARK "saleRemark",
     a_s_order.INSERT_TIME "insertTime",
-    DECODE(a_s_order.SALE_ORDER_STATUS,2,'销售已提交',4,'财务已审批') "statusStr",
+    DECODE(a_s_order.SALE_ORDER_STATUS,1,'订单已上报',2,'销售已提交',4,'财务已审批') "statusStr",
     a_s_order.UPDATE_TIME "updateTime",
     RM.MATERIAL_NAME "materialName",
     RM.MATERIAL_SPECIFICATION "materialSpecification",
@@ -2582,7 +2585,7 @@
     ON ASM.SALE_MATERIAL_ID = ASTM.MATERIAL_ID
     LEFT JOIN RMS_MATERIAL RM
     ON RM.MATERIAL_ID = ASM.MATERIAL_ID
-    where a_s_order.SALE_ORDER_STATUS in (2,4)
+    where a_s_order.SALE_ORDER_STATUS in (1,2,4)
     and a_s_order.CLOSE_STATUS is null
     and a_s_order.DELETED = 0
     and ADSO.DISPATCH_TYPE = 2
@@ -2856,7 +2859,7 @@
     RRA.ADDRESS_PROVINCE || RRA.ADDRESS_DISTRICT || RRA.ADDRESS_TOWN || RRP.ADDRESS_DELIVERY_ADDRESS AS
     "addressDeliveryAddress",
     ASOM.SALE_DATE_OF_RECEIPT AS "saleDateOfReceipt",
-    DECODE(ASO.SALE_ORDER_STATUS,2, '销售已提交',4, '财务已审批')
+    DECODE(ASO.SALE_ORDER_STATUS,1,'订单已上报',2, '销售已提交',4, '财务已审批')
     AS "approvalStatus",
     ASOM.SALE_ORDER_CONSIGNEE_TEL AS "saleOrderConsigneeTel",
     RSH.SHIPPER_NAME AS "shipperName",
@@ -2890,7 +2893,7 @@
     ON ASM.SALE_MATERIAL_ID = ASTM.MATERIAL_ID
     LEFT JOIN RMS_MATERIAL RM
     ON RM.MATERIAL_ID = ASM.MATERIAL_ID
-    WHERE ASO.SALE_ORDER_STATUS IN (2,4)
+    WHERE ASO.SALE_ORDER_STATUS IN (1,2,4)
     AND ASOM.ISSUE_STATUS IS NULL
     AND ADSO.CARRIER_ID IS NULL
     AND ASO.DELETED = 0
@@ -3009,7 +3012,7 @@
     RRA.ADDRESS_PROVINCE || RRA.ADDRESS_DISTRICT || RRA.ADDRESS_TOWN || RRP.ADDRESS_DELIVERY_ADDRESS AS
     "addressDeliveryAddress",
     ASOM.SALE_DATE_OF_RECEIPT AS "saleDateOfReceipt",
-    DECODE(ASO.SALE_ORDER_STATUS,2, '销售已提交',4, '财务已审批')
+    DECODE(ASO.SALE_ORDER_STATUS,1,'订单已上报',2, '销售已提交',4, '财务已审批')
     AS "approvalStatus",
     ASOM.SALE_ORDER_CONSIGNEE_TEL AS "saleOrderConsigneeTel",
     RSH.SHIPPER_NAME AS "shipperName",
@@ -3200,7 +3203,7 @@
     RRA.ADDRESS_PROVINCE || RRA.ADDRESS_DISTRICT || RRA.ADDRESS_TOWN || RRP.ADDRESS_DELIVERY_ADDRESS AS
     "addressDeliveryAddress",
     ASOM.SALE_DATE_OF_RECEIPT AS "saleDateOfReceipt",
-    DECODE(ASO.SALE_ORDER_STATUS,2, '销售已提交',4, '财务已审批')
+    DECODE(ASO.SALE_ORDER_STATUS,1,'订单已上报',2, '销售已提交',4, '财务已审批')
     AS "approvalStatus",
     ASOM.SALE_ORDER_CONSIGNEE_TEL AS "saleOrderConsigneeTel",
     RSH.SHIPPER_NAME AS "shipperName",
@@ -4195,4 +4198,180 @@
                      ON RRP.PLACE_ID = ACTP.PLACE_ID
     WHERE RRP.ADDRESS_ID = #{addressId}
   </select>
+
+  <select id="getSaleCokeOrder" parameterType="java.util.Map" resultType="java.util.Map">
+    SELECT DISTINCT * FROM(
+    SELECT a_s_order.SALE_ORDER_ID "saleOrderId",
+    a_s_order.SALE_NUMBER "saleNumber",
+    r_shipper.SHIPPER_NAME "shipperName",
+    r_consignee.CONSIGNEE_COMPANY_NAME "consigneeCompanyName",
+    r_consignee.CONSIGNEE_WARRANTY_AMOUNT "consigneeWarrantyAmount",
+    r_consignee.CONSIGNEE_WARRANTY_WEIGHT "consigneeWarrantyWeight",
+    a_s_order.SALE_ORDER_ISSELF_MENTION "saleOrderIsselfMention",
+    a_s_order.SALE_ACCOUNT_BALANCE "saleAccountBalance",
+    a_s_order.SALE_CURRENT_ORDER_AMOUNT "saleCurrentOrderAmount",
+    a_s_order.SALE_HISTORICAL_ORDER_AMOUNT "saleHistoricalOrderAmout",
+    a_s_order.SALE_ORDER_RECEIVE_CUSTOMER "saleOrderReceiveCustomer",
+    a_s_order.SALE_UNIT_PRICE "saleUnitPrice",
+    a_s_order.SALE_ORDER_TAX "saleOrderTax",
+    a_s_order.SALE_REMARK "saleRemark",
+    a_s_order.INSERT_TIME "insertTime",
+    DECODE(a_s_order.SALE_ORDER_STATUS,2,'销售已提交',4,'财务已审批') "statusStr",
+    RM.MATERIAL_NAME "materialName",
+    ASM.MATERIAL_NUMBER "materialNumber",
+    ASM.SALE_WAREHOUSE "saleWareHouse",
+    a_s_order.DELETED "deleted",
+    a_s_order.SHIPPER_ID "shipperId",
+    a_s_order.RECEIVE_ID "receiveId",
+    a_s_order.SALE_ORDER_ISSELF_MENTION "isSelfMention"
+    from AMS_SALE_ORDER a_s_order
+    left join RMS_SHIPPER r_shipper
+    on a_s_order.SHIPPER_ID=r_shipper.SHIPPER_ID
+    left join RMS_CONSIGNEE r_consignee
+    on a_s_order.RECEIVE_ID=r_consignee.CONSIGNEE_ID
+    LEFT JOIN AMS_SALE_MATERIAL ASM
+    ON ASM.SALE_ORDER_ID = a_s_order.SALE_ORDER_ID
+    LEFT JOIN RMS_MATERIAL RM
+    ON RM.MATERIAL_ID = ASM.MATERIAL_ID
+    where a_s_order.SALE_ORDER_STATUS in (2,4)
+    and a_s_order.CLOSE_STATUS is null
+    and a_s_order.DELETED = 0
+    and ASM.DELETED IS NULL
+    <if test="con != null">
+      and (instr(r_consignee.CONSIGNEE_COMPANY_NAME, #{con}) > 0 or instr(a_s_order.SALE_NUMBER, #{con}) > 0 or instr(RM.MATERIAL_NAME, #{con}) > 0 )
+    </if>
+    <if test="oneDate != null">
+      and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= a_s_order.UPDATE_TIME
+    </if>
+    <if test="startDate != null">
+      and to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= a_s_order.UPDATE_TIME
+      and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= a_s_order.UPDATE_TIME
+    </if>
+    <if test="shipperId != null">
+      and a_s_order.SHIPPER_ID = #{shipperId}
+    </if>
+    <if test="consigneeSsoId != null">
+      and r_consignee.CONSIGNEE_SSO_ID = #{consigneeSsoId}
+    </if>
+    <if test="saleType == null">
+      and a_s_order.SALE_TYPE is null
+    </if>
+    ORDER BY a_s_order.UPDATE_TIME DESC
+    )
+    <where>
+      <if test="saleNumber != null">
+        <foreach collection="saleNumber" item="item" open="(" separator="or" close=")">
+          "saleNumber" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="materialName != null">
+        <foreach collection="materialName" item="item" open="(" separator="or" close=")">
+          "materialName" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="materialSpecification != null">
+        <foreach collection="materialSpecification" item="item" open="(" separator="or" close=")">
+          "materialSpecification" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="materialModel != null">
+        <foreach collection="materialModel" item="item" open="(" separator="or" close=")">
+          "materialModel" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="statusStr != null">
+        <foreach collection="statusStr" item="item" open="(" separator="or" close=")">
+          and "statusStr" like '%${item}%'
+        </foreach>
+      </if>
+
+      <!--      <if test="startTime != null">-->
+      <!--        and "insertTime" &gt;= to_date('${startTime}','yyyy-mm-dd')-->
+      <!--      </if>-->
+      <!--      <if test="endTime != null">-->
+      <!--        and "insertTime" &lt;= to_date('${endTime}','yyyy-mm-dd')-->
+      <!--      </if>-->
+
+      <if test="shipperName != null">
+        and
+        <foreach collection="shipperName" item="item" open="(" separator="or" close=")">
+          "shipperName" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="consigneeCompanyName != null">
+        and
+        <foreach collection="consigneeCompanyName" item="item" open="(" separator="or" close=")">
+          "consigneeCompanyName" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="consigneeWarrantyAmount != null">
+        and
+        <foreach collection="consigneeWarrantyAmount" item="item" open="(" separator="or" close=")">
+          "consigneeWarrantyAmount" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="consigneeWarrantyWeight != null">
+        and
+        <foreach collection="consigneeWarrantyWeight" item="item" open="(" separator="or" close=")">
+          "consigneeWarrantyWeight" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="saleOrderIsselfMention != null">
+        and
+        <foreach collection="saleOrderIsselfMention" item="item" open="(" separator="or" close=")">
+          "saleOrderIsselfMention" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="saleAccountBalance != null">
+        and
+        <foreach collection="saleAccountBalance" item="item" open="(" separator="or" close=")">
+          "saleAccountBalance" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="saleCurrentOrderAmount != null">
+        and
+        <foreach collection="saleCurrentOrderAmount" item="item" open="(" separator="or" close=")">
+          "saleCurrentOrderAmount" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="saleHistoricalOrderAmout != null">
+        and
+        <foreach collection="saleHistoricalOrderAmout" item="item" open="(" separator="or" close=")">
+          "saleHistoricalOrderAmout" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="saleOrderReceiveCustomer != null">
+        and
+        <foreach collection="saleOrderReceiveCustomer" item="item" open="(" separator="or" close=")">
+          "saleOrderReceiveCustomer" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="saleUnitPrice != null">
+        and
+        <foreach collection="saleUnitPrice" item="item" open="(" separator="or" close=")">
+          "saleUnitPrice" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="saleOrderTax != null">
+        and
+        <foreach collection="saleOrderTax" item="item" open="(" separator="or" close=")">
+          "saleOrderTax" like '%${item}%'
+        </foreach>
+      </if>
+      <if test="saleRemark != null">
+        and
+        <foreach collection="saleRemark" item="item" open="(" separator="or" close=")">
+          "saleRemark" like '%${item}%'
+        </foreach>
+      </if>
+    </where>
+  </select>
+
+  <select id="findStatus" parameterType="DECIMAL" resultType="java.lang.Integer" >
+    SELECT ASO.SALE_ORDER_STATUS AS "saleStatus"
+    FROM AMS_SALE_ORDER_MATERIAL ASOM
+           LEFT JOIN AMS_SALE_ORDER ASO
+                     ON ASO.SALE_ORDER_ID = ASOM.SALE_ORDER_ID
+    WHERE ASOM.SALE_ORDER_MATERIAL_ID = #{saleOrderMaterialId}
+  </select>
 </mapper>