廖井涛
2024-07-28 dffdcaa14f32c51a63b4ab2cc7a38eebf17f8f44
north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml
@@ -108,6 +108,7 @@
        <result column="creator" property="order.creator"/>
        <result column="verifier" property="order.verifier"/>
        <result column="customer_batch" property="order.customerBatch"/>
        <result column="other_money" property="order.otherMoney"/>
    </resultMap>
@@ -136,7 +137,9 @@
        <if test="orderDetail.order!=null and  orderDetail.order.customerId != null and orderDetail.order.customerId != ''">
            and b.customer_id like concat('%',#{orderDetail.order.customerId},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.customerName != null and orderDetail.order.customerName != ''">
            and b.customer_name like concat('%',#{orderDetail.order.customerName},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.project != null and orderDetail.order.project != ''">
            and b.project like concat('%',#{orderDetail.order.project},'%')
        </if>
@@ -276,7 +279,9 @@
        <if test="orderDetail.order!=null and  orderDetail.order.customerId != null and orderDetail.order.customerId != ''">
            and b.customer_id like concat('%',#{orderDetail.order.customerId},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.customerName != null and orderDetail.order.customerName != ''">
            and b.customer_name like concat('%',#{orderDetail.order.customerName},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.project != null and orderDetail.order.project != ''">
            and b.project like concat('%',#{orderDetail.order.project},'%')
        </if>
@@ -424,6 +429,7 @@
        b.batch,
        a.product_id,
        a.product_name,
        b.other_money,
        sum(a.quantity) as quantity,
        sum(a.gross_area) as gross_area,
        sum(a.compute_gross_area) as compute_gross_area,
@@ -464,7 +470,9 @@
        <if test="orderDetail.order!=null and  orderDetail.order.customerId != null and orderDetail.order.customerId != ''">
            and b.customer_id like concat('%',#{orderDetail.order.customerId},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.customerName != null and orderDetail.order.customerName != ''">
            and b.customer_name like concat('%',#{orderDetail.order.customerName},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.project != null and orderDetail.order.project != ''">
            and b.project like concat('%',#{orderDetail.order.project},'%')
        </if>
@@ -579,6 +587,10 @@
        <if test="orderDetail.order!=null and  orderDetail.order.customerBatch != null and orderDetail.order.customerBatch != ''">
            and b.customer_batch like concat('%',#{orderDetail.order.customerBatch},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.otherMoney != null ">
            and b.other_money  regexp REGEXP_REPLACE(#{orderDetail.order.otherMoney},'\\.0+$','')
        </if>
        group by b.order_id,a.product_id
        order by b.order_id desc
@@ -607,7 +619,9 @@
        <if test="orderDetail.order!=null and  orderDetail.order.customerId != null and orderDetail.order.customerId != ''">
            and b.customer_id like concat('%',#{orderDetail.order.customerId},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.customerName != null and orderDetail.order.customerName != ''">
            and b.customer_name like concat('%',#{orderDetail.order.customerName},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.project != null and orderDetail.order.project != ''">
            and b.project like concat('%',#{orderDetail.order.project},'%')
        </if>
@@ -723,6 +737,10 @@
        <if test="orderDetail.order!=null and  orderDetail.order.customerBatch != null and orderDetail.order.customerBatch != ''">
            and b.customer_batch like concat('%',#{orderDetail.order.customerBatch},'%')
        </if>
        <if test="orderDetail.order!=null and  orderDetail.order.otherMoney != null ">
            and b.other_money  regexp REGEXP_REPLACE(#{orderDetail.order.otherMoney},'\\.0+$','')
        </if>
        group by b.order_id,a.product_id
        ) as ss
    </select>
@@ -736,9 +754,7 @@
               a.product_name,
               a.price,
               sum(a.quantity) as quantity,
               a.gross_amount,
               a.width,
               a.height,
               sum(a.gross_amount) as gross_amount,
               a.shape,
               sum(a.area) as area,
               sum(a.gross_area) as gross_area,
@@ -796,10 +812,14 @@
               b.delivery,
               b.create_time,
               b.update_time,
               d.type_name as level_one, e.type_name as level_two
               d.type_name as level_one,
               e.type_name as level_two,
               f.customer_abbreviation
        from sd.order_detail as a
                 left join sd.`order` as b
                           on b.order_id = a.order_id
                 left join sd.customer as f
                           on f.id = b.customer_id
                 left join sd.product as c
                           on c.id = a.product_id
                 left join sd.basic_glass_type as d
@@ -863,6 +883,15 @@
        order by id;
    </select>
    <select id="getOrderProductByProductIds">
        select *
        from sd.order_detail od
                 left join sd.product_detail pd on od.product_id = pd.prod_id
        where od.order_id = #{orderId} and od.product_id=#{productId}
          and pd.detail_type = 'glass'
        group by od.product_id,pd.detail
    </select>