| | |
| | | <if test="crossProcessBreakingDTO.breakageType != null and crossProcessBreakingDTO.breakageType != ''"> |
| | | and dd.breakage_type regexp #{crossProcessBreakingDTO.breakageType} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.project != null and crossProcessBreakingDTO.project != ''"> |
| | | and o.project regexp #{crossProcessBreakingDTO.project} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.orderId != null and crossProcessBreakingDTO.orderId != ''"> |
| | | and o.order_id regexp #{crossProcessBreakingDTO.orderId} |
| | | </if> |
| | | GROUP BY dd.id |
| | | order by dd.id desc |
| | | limit #{offset},#{pageSize} |
| | |
| | | and dd.available = 0 |
| | | and reviewed_state != 2 |
| | | and rw.this_process != dd.responsible_process |
| | | <if test="crossProcessBreakingDTO.code != null and crossProcessBreakingDTO.code != ''"> |
| | | and JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S01' )) regexp #{crossProcessBreakingDTO.code} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.processId != null and crossProcessBreakingDTO.processId != ''"> |
| | | and rw.process_id regexp #{crossProcessBreakingDTO.processId} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.thisProcess != null and crossProcessBreakingDTO.thisProcess != ''"> |
| | | and rw.this_process regexp #{crossProcessBreakingDTO.thisProcess} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.responsibleProcess != null and crossProcessBreakingDTO.responsibleProcess != ''"> |
| | | and dd.responsible_process regexp #{crossProcessBreakingDTO.responsibleProcess} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.responsibleTeam != null and crossProcessBreakingDTO.responsibleTeam != ''"> |
| | | and dd.responsible_team regexp #{crossProcessBreakingDTO.responsibleTeam} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.glassChild != null and crossProcessBreakingDTO.glassChild != ''"> |
| | | and ogd.glass_child regexp #{crossProcessBreakingDTO.glassChild} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.breakageType != null and crossProcessBreakingDTO.breakageType != ''"> |
| | | and dd.breakage_type regexp #{crossProcessBreakingDTO.breakageType} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.project != null and crossProcessBreakingDTO.project != ''"> |
| | | and o.project regexp #{crossProcessBreakingDTO.project} |
| | | </if> |
| | | <if test="crossProcessBreakingDTO.orderId != null and crossProcessBreakingDTO.orderId != ''"> |
| | | and o.order_id regexp #{crossProcessBreakingDTO.orderId} |
| | | </if> |
| | | order by dd.id desc |
| | | </select> |
| | | |
| | |
| | | ogd.glass_child, |
| | | ogd.child_width, |
| | | ogd.child_height, |
| | | od.quantity, |
| | | fc.quantity, |
| | | ROUND(ogd.child_width * ogd.child_height / 1000000, 2) as childArea, |
| | | ROUND(ogd.child_width * ogd.child_height * od.quantity / 1000000, 2) as actualArea, |
| | | ROUND(ogd.child_width * ogd.child_height * fc.quantity / 1000000, 2) as actualArea, |
| | | odpd.reporting_work_num as completeNum, |
| | | ROUND(ogd.child_width * ogd.child_height * odpd.reporting_work_num / 1000000, |
| | | 2) as completeArea, |
| | | od.quantity - odpd.reporting_work_num as incompleteNum, |
| | | ROUND(ogd.child_width * ogd.child_height * (od.quantity - odpd.reporting_work_num) / 1000000, |
| | | fc.quantity - odpd.reporting_work_num as incompleteNum, |
| | | ROUND(ogd.child_width * ogd.child_height * (fc.quantity - odpd.reporting_work_num) / 1000000, |
| | | 2) as incompleteArea, |
| | | od.product_name |
| | | |
| | |
| | | and o.create_time between #{selectTime1} and #{selectTime2} |
| | | and position(#{orderId} in od.order_id) |
| | | and position(#{inputProject} in o.project) |
| | | and od.quantity > odpd.reporting_work_num |
| | | and fc.quantity - odpd.reporting_work_num>0 |
| | | |
| | | group by fc.process_id, fc.order_number, fc.technology_number |
| | | order by fc.process_id, fc.order_number, fc.technology_number |