廖井涛
2025-10-15 ce06fcc3113dc45647910deef0e4adeaa97bfa3f
north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
@@ -95,7 +95,7 @@
                and  od.product_name regexp #{finishedOperateLog.orderDetail.productName}
            </if>
            <if test="finishedOperateLog.orderDetail.price != null and finishedOperateLog.orderDetail.price != ''">
                and  od.price regexp #{finishedOperateLog.orderDetail.price}
                and  od.price regexp  REGEXP_REPLACE(#{finishedOperateLog.orderDetail.price},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.orderDetail.width != null and finishedOperateLog.orderDetail.width != ''">
                and  od.width regexp  REGEXP_REPLACE(#{finishedOperateLog.orderDetail.width},'\\.0+$','')
@@ -122,10 +122,10 @@
                and fol.remarks regexp #{finishedOperateLog.remarks}
            </if>
            <if test="finishedOperateLog.area != null and finishedOperateLog.area != ''">
                and fol.area regexp #{finishedOperateLog.area}
                and fol.area regexp REGEXP_REPLACE(#{finishedOperateLog.area},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.money != null and finishedOperateLog.money != ''">
                and fol.money regexp #{finishedOperateLog.money}
                and fol.money regexp REGEXP_REPLACE(#{finishedOperateLog.money},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.customerName != null and finishedOperateLog.order.customerName != '')">
                and o.customer_name regexp #{finishedOperateLog.order.customerName}
@@ -159,6 +159,9 @@
            <if test="finishedOperateLog.quantity != null and finishedOperateLog.quantity != ''">
                and fol.quantity regexp #{finishedOperateLog.quantity}
            </if>
            <if test="finishedOperateLog.processId != null and finishedOperateLog.processId != ''">
                and fol.process_id regexp #{finishedOperateLog.processId}
            </if>
            <if test="finishedOperateLog.operator != null and finishedOperateLog.operator != ''">
                and fol.operator regexp #{finishedOperateLog.operator}
            </if>
@@ -169,7 +172,7 @@
                and  od.product_name regexp #{finishedOperateLog.orderDetail.productName}
            </if>
            <if test="finishedOperateLog.orderDetail.price != null and finishedOperateLog.orderDetail.price != ''">
                and  od.price regexp #{finishedOperateLog.orderDetail.price}
                and  od.price regexp  REGEXP_REPLACE(#{finishedOperateLog.orderDetail.price},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.orderDetail.width != null and finishedOperateLog.orderDetail.width != ''">
                and  od.width regexp  REGEXP_REPLACE(#{finishedOperateLog.orderDetail.width},'\\.0+$','')
@@ -196,10 +199,10 @@
                and fol.remarks regexp #{finishedOperateLog.remarks}
            </if>
            <if test="finishedOperateLog.area != null and finishedOperateLog.area != ''">
                and fol.area regexp #{finishedOperateLog.area}
                and fol.area regexp REGEXP_REPLACE(#{finishedOperateLog.area},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.money != null and finishedOperateLog.money != ''">
                and fol.money regexp #{finishedOperateLog.money}
                and fol.money regexp REGEXP_REPLACE(#{finishedOperateLog.money},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.customerName != null and finishedOperateLog.order.customerName != '')">
                and o.customer_name regexp #{finishedOperateLog.order.customerName}
@@ -475,10 +478,16 @@
        fol.reviewed,
        fol.reviewed_time,
        fol.type,
        fol.remarks
        fol.remarks,
        fol.area,
        fol.money,
        o.customer_name,
        o.project,
        od.price
        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
        <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 != ''">
@@ -528,6 +537,21 @@
            </if>
            <if test="finishedOperateLog.remarks != null and finishedOperateLog.remarks != ''">
                and fol.remarks regexp #{finishedOperateLog.remarksr}
            </if>
            <if test="finishedOperateLog.area != null and finishedOperateLog.area != ''">
                and fol.area regexp REGEXP_REPLACE(#{finishedOperateLog.area},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.money != null and finishedOperateLog.money != ''">
                and fol.money regexp REGEXP_REPLACE(#{finishedOperateLog.money},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.customerName != null and finishedOperateLog.order.customerName != '')">
                and o.customer_name regexp #{finishedOperateLog.order.customerName}
            </if>
            <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.project != null and finishedOperateLog.order.project != '')">
                and o.project regexp #{finishedOperateLog.order.project}
            </if>
            <if test="finishedOperateLog.orderDetail!=null and finishedOperateLog.orderDetail.price != null and finishedOperateLog.orderDetail.price != ''">
                and  od.price regexp #{finishedOperateLog.orderDetail.price}
            </if>
        </where>
        order by fol.`status` desc
@@ -540,6 +564,7 @@
        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
        <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 != ''">
@@ -589,6 +614,21 @@
            </if>
            <if test="finishedOperateLog.remarks != null and finishedOperateLog.remarks != ''">
                and fol.remarks regexp #{finishedOperateLog.remarksr}
            </if>
            <if test="finishedOperateLog.area != null and finishedOperateLog.area != ''">
                and fol.area regexp REGEXP_REPLACE(#{finishedOperateLog.area},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.money != null and finishedOperateLog.money != ''">
                and fol.money regexp REGEXP_REPLACE(#{finishedOperateLog.money},'\\.0+$','')
            </if>
            <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.customerName != null and finishedOperateLog.order.customerName != '')">
                and o.customer_name regexp #{finishedOperateLog.order.customerName}
            </if>
            <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.project != null and finishedOperateLog.order.project != '')">
                and o.project regexp #{finishedOperateLog.order.project}
            </if>
            <if test="finishedOperateLog.orderDetail!=null and finishedOperateLog.orderDetail.price != null and finishedOperateLog.orderDetail.price != ''">
                and  od.price regexp #{finishedOperateLog.orderDetail.price}
            </if>
        </where>
    </select>
@@ -618,7 +658,8 @@
                                            status,
                                            remarks,
                                            money,
                                            area
                                            area,
                                            compute_area
        )
        values (
                   #{oddNumber} ,#{flowCard.order.orderId},#{flowCard.processId},#{flowCard.orderNumber},"入库",#{userName},
@@ -629,7 +670,7 @@
        <if test="createTime == null">
            now()
        </if>
                ,"未审核",#{container},#{deliveryDetailMoney},#{deliveryDetailArea}
                ,"未审核",#{container},#{deliveryDetailMoney},#{deliveryDetailArea},#{getComputeArea}
               )
    </insert>
@@ -643,11 +684,12 @@
                                            quantity,
                                            operate_time,
                                            status,
                                            remarks
                                            remarks,
                                            area
        )
        values (
                   #{orderDetail.deliveryDetail.deliveryId} ,#{orderDetail.deliveryDetail.orderId},#{orderDetail.deliveryDetail.orderNumber}
                   ,"出库",#{userName},#{orderDetail.deliveryDetail.quantity},now(),"未审核",#{boxNo}
                   ,"出库",#{userName},#{orderDetail.deliveryDetail.quantity},now(),"未审核",#{boxNo},#{orderDetail.deliveryDetail.area}
               )
    </insert>
@@ -726,10 +768,16 @@
               fol.reviewed,
               fol.reviewed_time,
               fol.type,
               fol.remarks
               fol.remarks,
               fol.area,
               fol.money,
               o.customer_name,
               o.project,
               od.price
        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
        where  date(fol.operate_time)>=#{dates[0]} and date(fol.operate_time) &lt;= #{dates[1]} and fol.operate_type=#{type}
    </select>
@@ -743,10 +791,14 @@
                                            operator,
                                            quantity,
                                            operate_time,
                                            status
                                            status,
                                            area,
                                            compute_area,
                                            remarks
        )
        values (
                   #{oddNumber} ,#{orderDetail.orderId},"",#{orderDetail.orderNumber},"入库",#{userName},#{orderDetail.quantity},now(),"未审核"
                   #{oddNumber} ,#{orderDetail.orderId},"",#{orderDetail.orderNumber},"入库",#{userName},#{orderDetail.quantity},now(),"未审核",
                #{orderDetail.computeGrossArea},#{orderDetail.computeArea},""
               )
    </insert>
@@ -900,7 +952,8 @@
                                                                             o.batch,
                                                                             fol.remarks,
                                                                             SUM(fol.quantity) as quantity,
                                                                             ROUND( sum(od.width * od.height * fol.quantity) / 1000000, 2 ) as area,
                                                                             /*ROUND( sum(od.width * od.height * fol.quantity) / 1000000, 2 ) as area,*/
                                                                             fol.area as area,
                                                                             ROUND( sum(od.width * od.height * fol.quantity*p.total_thickness*2.5) / 1000000, 2 ) as weight,
                                                                             fol.process_id,
                                                                             aaa.teams_groups_name,
@@ -953,7 +1006,8 @@
            sum(fol.quantity) as quantity,
            od.product_name,
            od.product_id,
            ROUND(sum(od.width * od.height * fol.quantity / 1000000) , 2 ) as area,
            /*ROUND(sum(od.width * od.height * fol.quantity / 1000000) , 2 ) as area,*/
            ROUND(sum(fol.compute_area * fol.quantity) , 2 ) as area,
            ROUND(sum(od.width * od.height * fol.quantity / 1000000) , 2 )*#{thickness}*2.5 as weight
        FROM
            ( SELECT * FROM mm.finished_operate_log aa WHERE aa.operate_type = '入库' AND aa.STATUS != '已作废' ) fol