chenlu
2025-08-11 8bcd0cc77b0c7aa2c00ffd926ee87f1f09a3a3b5
north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
@@ -102,7 +102,7 @@
    </select>
    <select id="SelectWorkBasicTeamsMp">
        select * from erp_user_info.`user` WHERE address=#{process}
        select id,login_name,user_name,address from erp_user_info.`user` WHERE address=#{process}
    </select>
    <!--    查询流程卡工艺流程-->
@@ -135,8 +135,8 @@
            ogd.child_width,
            ogd.child_height,
            if(od.shape=1,'普形',if(od.shape=2,'异形','')) as shape,
            fc.quantity -fc.export_number + ifnull(patch.patch_num,0) -odpd.reporting_work_num -odpd.broken_num   as quantity,
            fc.quantity -fc.export_number + ifnull(patch.patch_num,0) -odpd.reporting_work_num -odpd.broken_num   as completedQuantity,
            fc.quantity -fc.export_number + ifnull(patch.patch_num,0) -odpd.reporting_work_num -odpd.broken_num - ifnull(fc.termination_quantity,0)  as quantity,
            fc.quantity -fc.export_number + ifnull(patch.patch_num,0) -odpd.reporting_work_num -odpd.broken_num - ifnull(fc.termination_quantity,0)   as completedQuantity,
            odpd.reporting_work_num as completed,
            odpd.broken_num as onceBroken,
            if(fc.quantity -odpd.reporting_work_num = 0 ,true,false) as saveFlag, -- 判断是否已经完成,已经完成不序号和同序号数量相同才能提交
@@ -178,7 +178,7 @@
          AND  POSITION(fc.technology_number in #{technologyStr})
          AND odpd.process = #{process}
          and if(#{reportType}=1,o.order_type!='样品订单',o.order_id!='')
        and o.create_order>0
        and o.create_order>0 and fc.quantity - ifnull(fc.termination_quantity,0)>0
        group by fc.order_number,
                 ogd.technology_number
        order by fc.order_number
@@ -298,15 +298,13 @@
    <select id="historyTeamsMp">
        SELECT
            bdp.id,
            bdp.basic_type,
            bd.id,
            bd.basic_type,
            rw.teams  as basic_name,
            bd.basic_name,bd.id AS basic_category,
            rw.process
        FROM
            sd.basic_data AS bd
                LEFT JOIN `basic_data_produce` AS bdp
                          ON bd.id = bdp.basic_category
                right join (
                select distinct process,teams from
                    (   select distinct rw.this_process as  process,rw.teams_groups_name as teams
@@ -315,8 +313,6 @@
                    ) as t
            ) as  rw
                           on rw.process=bd.basic_name
        WHERE
            bdp.basic_type = 'teamsgroups'
        GROUP BY rw.process,rw.teams
    </select>
@@ -326,10 +322,9 @@
            bd.basic_name AS basic_category
        FROM
            sd.basic_data AS bd
                LEFT JOIN `basic_data_produce` AS bdp ON bd.id = bdp.basic_category
        WHERE
            bd.basic_category = 'process'
          AND bdp.basic_type = 'teamsgroups'
          AND POSITION(bd.basic_name in CONCAT(#{historyProcess},#{process}))
    </select>
@@ -416,7 +411,7 @@
<!--查询修改报工明细数据-->
    <select id="selectByReportingWorkId" >
        select
        select * from(select
            a.reporting_work_id,
            d.order_number,
            d.glass_child,
@@ -427,7 +422,7 @@
            d.child_height,
            if(e.shape=1,'普形',if(e.shape=2,'异形','')) as shape,
            if(ifnull(a.completed_quantity+a.breakage_quantity,0)=0,
                c.quantity-ifnull(a.completed_quantity+a.breakage_quantity,0),
                0,
                ifnull(a.completed_quantity+a.breakage_quantity,0)) as 'quantity', -- 可报工数
            ifnull(a.completed_quantity,0) as 'completedQuantity', -- 完工数
            ifnull(a.breakage_quantity,0) as 'breakageQuantity', -- 破损数
@@ -442,7 +437,7 @@
                    -ifnull(g.completed_quantity,0))
                    >
                   a.completed_quantity,
                a.completed_quantity,
                a.completed_quantity+ a.breakage_quantity,
                   (f.completed_quantity
                       -ifnull(g.completed_quantity,0))
                    )  as minQuantity -- 修改最小数
@@ -486,6 +481,7 @@
                       from reporting_work as rw
                       left join  reporting_work_detail  as rwd
                       on rw.reporting_work_id = rwd.reporting_work_id
              where rw.reviewed_state>-1
                       group by rw.process_id,
                                rw.this_process,
                                rwd.order_number,
@@ -517,6 +513,7 @@
        </if>
        where b.reporting_work_id = #{reportingWorkId}
        GROUP BY c.order_number,c.technology_number
        order BY c.order_number,c.technology_number) as result
    </select>
<select id="selectReportingWorkMp" resultMap="reportingWorkMap">
    select rw.reporting_work_id,
@@ -545,8 +542,8 @@
            left join sd.`order` as o on o.order_id=rw.order_id
        where rw.reviewed_state != 2
          and rw.reporting_work_time >= #{selectTime1}
    AND rw.reporting_work_time &lt;  #{selectTime2}
          and date(rw.reporting_work_time) >= date(#{selectTime1})
    AND date(rw.reporting_work_time) &lt;=  date(#{selectTime2})
          and position(#{orderId} in rw.order_id)
          and rw.reviewed_state!=-1
          and o.create_order>0
@@ -557,7 +554,8 @@
            and o.order_id regexp #{reportingWork.orderId}
        </if>
        <if test="reportingWork.processId != null and reportingWork.processId != ''">
            and rw.process_id regexp #{reportingWork.processId}
            and CONCAT(rw.process_id,'/',rwd.goup) LIKE CONCAT('%', #{reportingWork.processId}, '%')
        </if>
        <if test="reportingWork.order.project != null and reportingWork.order.project != ''">
            and o.project regexp #{reportingWork.order.project}
@@ -1040,8 +1038,8 @@
        AND ogd.technology_number = rwd.technology_number*/
        LEFT JOIN sd.`order` AS o ON o.order_id = rw.order_id
        WHERE rw.reviewed_state != 2
        and rw.reporting_work_time >= #{selectTime1}
        AND rw.reporting_work_time &lt;  #{selectTime2}
        and date(rw.reporting_work_time) >= date(#{selectTime1})
        AND date(rw.reporting_work_time) &lt;=  date(#{selectTime2})
        AND position(#{orderId} in rw.order_id)
        AND rw.reviewed_state != -1
        AND o.create_order > 0