廖井涛
4 天以前 cf4b24b7757bc76bb9c01fe936140073cb150711
north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
@@ -23,6 +23,7 @@
        <result column="process_id" property="processId"/>
        <result column="money" property="money"/>
        <result column="area" property="area"/>
        <result column="square_millimeter" property="squareMillimeter"/>
        <result column="width" property="orderDetail.width"/>
        <result column="height" property="orderDetail.height"/>
@@ -36,6 +37,7 @@
        <result column="project" property="order.project"/>
        <result column="customer_name" property="order.customerName"/>
        <result column="customer_Id" property="order.customerId"/>
        <result column="order_type" property="order.orderType"/>
    </resultMap>
@@ -63,10 +65,23 @@
        fol.money,
        o.customer_name,
        o.project,
        od.price
        od.price,
        CASE
        WHEN #{type} = '入库' THEN
            if(fgi.quantity_available>fol.quantity,fol.quantity,fgi.quantity_available)
        ELSE
            0
        END AS quantity_available,
        CASE
        WHEN #{type} = '入库' THEN
        if(fgi.quantity_available>fol.quantity,fol.quantity,fgi.quantity_available)
        ELSE
        0
        END AS cancelAvailable
        from (select *
        from mm.finished_operate_log aa where aa.operate_type = #{type}  and aa.status!='已作废') fol
        left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number
        left join mm.finished_goods_inventory fgi on fgi.order_id = fol.order_id and fol.operation_number = fgi.order_number and fgi.box_no=fol.remarks
        left join sd.`order` o on o.order_id=fol.order_id
        <where>
            date(fol.operate_time)>=#{startDate} and date(fol.operate_time) &lt;= #{endDate}
@@ -134,16 +149,20 @@
                and o.project regexp #{finishedOperateLog.order.project}
            </if>
        </where>
        group by fol.order_id,fol.operation_number,fol.remarks
        order by fol.operate_time desc
        limit #{offset},#{pageSize};
    </select>
    <select id="getSelectStorageRecordLogPageTotal">
        select CEILING(count(fol.id)/#{pageSize}) as 'pageTotal',
        count(fol.id) as 'total'
        select
        CEILING(count(zu.id)/#{pageSize}) as 'pageTotal',
        count(zu.id) as 'total' from (
        select fol.id
        from (select *
        from mm.finished_operate_log aa where aa.operate_type = #{type}  and aa.status!='已作废') fol
        left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number
        left join mm.finished_goods_inventory fgi on fgi.order_id = fol.order_id and fol.operation_number = fgi.order_number and fgi.box_no=fol.remarks
        left join sd.`order` o on o.order_id=fol.order_id
        <where>
            date(fol.operate_time)>=#{startDate} and date(fol.operate_time) &lt;= #{endDate}
@@ -211,7 +230,9 @@
                and o.project regexp #{finishedOperateLog.order.project}
            </if>
        </where>
        group by fol.order_id,fol.operation_number,fol.remarks
        order by fol.`status` desc
        ) as zu
    </select>
    <update id="updateToExamine">
@@ -220,6 +241,11 @@
    <update id="updateFinishedOperateLogState">
        update mm.finished_operate_log set status=#{type} where id=#{finishedOperateLog.id};
    </update>
    <update id="updateFinishedOperateLogQuantity">
        update mm.finished_operate_log set quantity=quantity-#{finishedOperateLog.cancelAvailable},
                                           area=area-#{deliveryDetailArea},money=money-#{deliveryDetailMoney}  where id=#{finishedOperateLog.id};
    </update>
    <select id="getSelectOperateRecord" resultMap="selectFinishedGoodsInventory">
@@ -483,11 +509,14 @@
        fol.money,
        o.customer_name,
        o.project,
        od.price
        od.price,
        o.order_type,
        p.thickness * fol.area as square_millimeter
        from (select *
        from mm.finished_operate_log aa where  aa.status!='已作废') fol
        left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number
        left join sd.`order` o on o.order_id=fol.order_id
        left join sd.product p on p.id=od.product_id
        <where>
            date(fol.operate_time)>=#{startDate} and date(fol.operate_time) &lt;= #{endDate} and fol.operate_type=#{type}
            <if test="finishedOperateLog.operateType != null and finishedOperateLog.operateType != ''">
@@ -552,6 +581,9 @@
            </if>
            <if test="finishedOperateLog.orderDetail!=null and finishedOperateLog.orderDetail.price != null and finishedOperateLog.orderDetail.price != ''">
                and  od.price regexp #{finishedOperateLog.orderDetail.price}
            </if>
            <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.orderType != null and finishedOperateLog.order.orderType != '')">
                and o.order_type regexp #{finishedOperateLog.order.orderType}
            </if>
        </where>
        order by fol.`status` desc
@@ -565,6 +597,7 @@
        from mm.finished_operate_log aa where  aa.status!='已作废') fol
        left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number
        left join sd.`order` o on o.order_id=fol.order_id
        left join sd.product p on p.id=od.product_id
        <where>
            date(fol.operate_time)>=#{startDate} and date(fol.operate_time) &lt;= #{endDate} and fol.operate_type=#{type}
            <if test="finishedOperateLog.operateType != null and finishedOperateLog.operateType != ''">
@@ -629,6 +662,9 @@
            </if>
            <if test="finishedOperateLog.orderDetail!=null and finishedOperateLog.orderDetail.price != null and finishedOperateLog.orderDetail.price != ''">
                and  od.price regexp #{finishedOperateLog.orderDetail.price}
            </if>
            <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.orderType != null and finishedOperateLog.order.orderType != '')">
                and o.order_type regexp #{finishedOperateLog.order.orderType}
            </if>
        </where>
    </select>
@@ -773,11 +809,14 @@
               fol.money,
               o.customer_name,
               o.project,
               od.price
               od.price,
               o.order_type,
               p.thickness * fol.area as square_millimeter
        from (select *
              from mm.finished_operate_log aa where  aa.status!='已作废') fol
                 left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number
                 left join sd.`order` o on o.order_id=fol.order_id
                 left join sd.product p on p.id=od.product_id
        where  date(fol.operate_time)>=#{dates[0]} and date(fol.operate_time) &lt;= #{dates[1]} and fol.operate_type=#{type}
    </select>
@@ -794,17 +833,18 @@
                                            status,
                                            area,
                                            compute_area,
                                            remarks
                                            remarks,
                                            money
        )
        values (
                   #{oddNumber} ,#{orderDetail.orderId},"",#{orderDetail.orderNumber},"入库",#{userName},#{orderDetail.quantity},now(),"未审核",
                #{orderDetail.computeGrossArea},#{orderDetail.computeArea},""
                   #{oddNumber} ,#{orderDetail.orderId},#{processId},#{orderDetail.orderNumber},"入库",#{userName},#{orderDetail.quantity},now(),"未审核",
                #{orderDetail.computeGrossArea},#{orderDetail.computeArea},"",#{orderDetail.grossAmount}
               )
    </insert>
    <delete id="updateOrderFinishedOperateLog"  >
    <update id="updateOrderFinishedOperateLog"  >
        update  mm.finished_operate_log set status="已作废" where order_id=#{orderDetail.orderId} and operation_number=#{orderDetail.orderNumber} and operate_type="入库";
    </delete>
    </update>
    <select id="getSelectStorageRecordPint" resultMap="selectFinishedGoodsInventory">
        select fol.id,
@@ -1067,4 +1107,8 @@
        left join sd.`order` o on o.order_id=fol.order_id
        where fol.operation_order_number=#{deliveryId}
    </select>
</mapper>