| | |
| | | <select id="projectInfoMp"> |
| | | SELECT |
| | | f.order_number, |
| | | g.child_width , |
| | | g.child_height , |
| | | g.child_width as 'width', |
| | | g.child_height as 'height', |
| | | f.quantity , |
| | | d.shape , |
| | | op.process_cards , |
| | |
| | | f.order_id, |
| | | f.technology_number, |
| | | f.order_number; |
| | | </select> |
| | | |
| | | <!--第一次优化查询--> |
| | | <select id="firstOptimization"> |
| | | ( SELECT |
| | | c.project_no, |
| | | d.child_width as 'width', |
| | | d.child_height as 'height', |
| | | c.quantity, |
| | | o.shape, |
| | | concat( c.process_id, '-', c.technology_number ) AS 'process_id', |
| | | c.technology_number, |
| | | d.glass_child, |
| | | o.product_name, |
| | | o.price, |
| | | o.remarks, |
| | | o.building_number, |
| | | round( d.area * c.quantity, 4 ) as 'area', |
| | | c.order_number, |
| | | d.icon, |
| | | op.project_name |
| | | FROM |
| | | pp.flow_card c |
| | | LEFT JOIN sd.order_detail o ON c.order_id = o.order_id |
| | | AND c.order_number = o.order_number |
| | | LEFT JOIN sd.order_glass_detail d ON c.order_id = d.order_id |
| | | AND c.order_number = d.order_number |
| | | AND c.technology_number = d.technology_number |
| | | INNER JOIN pp.optimize_project AS op ON op.project_no = c.project_no |
| | | WHERE |
| | | c.project_no IS NOT NULL |
| | | and c.project_no = #{projectNo} |
| | | ORDER BY |
| | | c.process_id, |
| | | c.order_number |
| | | ) union |
| | | ( |
| | | SELECT |
| | | c.project_no, |
| | | d.child_width as 'width', |
| | | d.child_height as 'height', |
| | | c.patch_num as quantity, |
| | | o.shape, |
| | | concat( c.process_id, '-', c.technology_number ) AS 'process_id', |
| | | c.technology_number, |
| | | d.glass_child, |
| | | o.product_name, |
| | | o.price, |
| | | o.remarks, |
| | | o.building_number, |
| | | round( d.area * c.patch_num, 4 ) as 'area', |
| | | c.order_sort as order_number, |
| | | d.icon, |
| | | op.project_name |
| | | FROM |
| | | pp.patch_log c |
| | | LEFT JOIN sd.order_detail o ON c.order_id = o.order_id |
| | | AND c.order_sort = o.order_number |
| | | LEFT JOIN sd.order_glass_detail d ON c.order_id = d.order_id |
| | | AND c.order_sort = d.order_number |
| | | AND c.technology_number = d.technology_number |
| | | INNER JOIN pp.optimize_project AS op ON op.project_no = c.project_no |
| | | WHERE |
| | | c.project_no IS NOT NULL |
| | | and c.project_no = #{projectNo} |
| | | ORDER BY |
| | | c.process_id, |
| | | c.order_sort) |
| | | </select> |
| | | |
| | | |
| | | <!--第一次优化查询--> |
| | | <select id="analogComputationOptimization"> |
| | | SELECT |
| | | h.project_no, |
| | | h.layout_id, |
| | | h.width AS width, |
| | | h.height AS height, |
| | | count( 1 ) AS quantity, |
| | | o.shape, |
| | | concat( h.process_id, '-', h.layer ) AS 'process_id', |
| | | h.layer, |
| | | d.glass_child, |
| | | o.product_name, |
| | | o.price, |
| | | o.remarks, |
| | | o.building_number, |
| | | round( d.area * count( 1 ), 4 ) AS 'area', |
| | | c.order_number, |
| | | d.icon, |
| | | o.price |
| | | from |
| | | pp.`optimize_heat_detail` h |
| | | LEFT JOIN pp.flow_card c ON h.process_id = c.process_id |
| | | AND h.layer = c.technology_number |
| | | AND h.order_sort = c.order_number |
| | | LEFT JOIN sd.order_detail o ON c.order_id = o.order_id |
| | | AND c.order_number = o.order_number |
| | | LEFT JOIN sd.order_glass_detail d ON c.order_id = d.order_id |
| | | AND c.order_number = d.order_number |
| | | AND c.technology_number = d.technology_number |
| | | WHERE |
| | | h.project_no = #{projectNo} |
| | | GROUP BY |
| | | h.project_no, |
| | | h.layout_id, |
| | | h.width, |
| | | h.height, |
| | | h.process_id, |
| | | h.layer, |
| | | d.area, |
| | | c.quantity, |
| | | d.child_width, |
| | | d.child_height, |
| | | o.shape, |
| | | d.glass_child, |
| | | o.product_name, |
| | | o.price, |
| | | o.remarks, |
| | | o.building_number, |
| | | c.order_number, |
| | | d.icon, |
| | | o.price |
| | | ORDER BY |
| | | LENGTH( h.layout_id ), |
| | | h.layout_id; |
| | | </select> |
| | | |
| | | <!--工程信息流程卡--> |
| | |
| | | pp.flow_card AS fc |
| | | WHERE |
| | | fc.project_no = #{projectNo} |
| | | |
| | | </select> |
| | | |
| | | <select id="getPatchLogList"> |
| | | SELECT * |
| | | FROM |
| | | pp.patch_log |
| | | WHERE |
| | | project_no = #{projectNo} |
| | | |
| | | </select> |
| | | |
| | |
| | | 项目 as project, |
| | | 单片名称 as glass_child, |
| | | 面积 as area, |
| | | GlassType as glassType |
| | | GlassType as glassType, |
| | | patch_state |
| | | FROM pp.v_optimize_process_whole where |
| | | CONCAT( JSON_UNQUOTE( JSON_EXTRACT( GlassType, '$.thickness' )), JSON_UNQUOTE( JSON_EXTRACT( GlassType, '$.color' )) )= #{optionVal} |
| | | </select> |
| | |
| | | 项目 as project, |
| | | 单片名称 as glass_child, |
| | | 面积 as area, |
| | | GlassType as glassType |
| | | GlassType as glassType, |
| | | patch_state |
| | | FROM pp.v_optimize_process_normal where |
| | | CONCAT( JSON_UNQUOTE( JSON_EXTRACT( GlassType, '$.thickness' )), JSON_UNQUOTE( JSON_EXTRACT( GlassType, '$.color' )) )= #{optionVal} |
| | | </select> |
| | |
| | | 项目 as project, |
| | | 单片名称 as glass_child, |
| | | 面积 as area, |
| | | GlassType as glassType |
| | | GlassType as glassType, |
| | | patch_state |
| | | FROM pp.v_optimize_process_patch where |
| | | CONCAT( JSON_UNQUOTE( JSON_EXTRACT( GlassType, '$.thickness' )), JSON_UNQUOTE( JSON_EXTRACT( GlassType, '$.color' )) )= #{optionVal} |
| | | </select> |
| | | |
| | | <select id="getFlowCardListModify"> |
| | | SELECT 流程卡号 as process_id, |
| | | 层 as technology_number, |
| | | 总层数 as TotalFloors, |
| | | 规格 as TotalNumber, |
| | | 数量 as quantity, |
| | | 形状 as shape, |
| | | 项目 as project, |
| | | 产品名称 as glass_child, |
| | | 面积 as area, |
| | | GlassType as glassType, |
| | | patch_state, |
| | | 占用 as occupyState |
| | | FROM pp.v_optimize_porject_modify where |
| | | GlassType REGEXP #{type} and GlassType REGEXP #{thickness} |
| | | and (工程号 is null or 工程号 = #{projectNO}) order by 占用 |
| | | </select> |
| | | |
| | | <!--工程管理--> |
| | |
| | | |
| | | <!--模拟计算查询流程卡--> |
| | | <select id="selectProjectComputeMp"> |
| | | SELECT |
| | | fc.process_id, |
| | | fc.technology_number, |
| | | fc.project_no, |
| | | fcss.TotalFloors, |
| | | COUNT(fc.order_number) AS TotalNumber, |
| | | SUM(fc.quantity) AS quantity, |
| | | ROUND(SUM(od.width * od.height * fc.quantity / 1000000), 2) AS area, |
| | | o.project, |
| | | ogd.glass_child, |
| | | od.shape, |
| | | SUBSTRING(glass_child, 1, LOCATE('mm', glass_child) - 1) as thickness, |
| | | SUBSTRING(glass_child, LOCATE('mm', glass_child) + 2) as glassType |
| | | FROM |
| | | pp.flow_card AS fc |
| | | LEFT JOIN sd.`order` AS o ON fc.order_id = o.order_id |
| | | LEFT JOIN sd.order_detail AS od ON od.order_id = fc.order_id AND od.order_number = fc.order_number |
| | | LEFT JOIN sd.order_glass_detail AS ogd |
| | | ON ogd.order_id = fc.order_id AND ogd.order_number = fc.order_number AND |
| | | ogd.technology_number = fc.technology_number |
| | | LEFT JOIN ( |
| | | SELECT |
| | | fcs.process_id, |
| | | fcs.order_number, |
| | | COUNT(DISTINCT fcs.technology_number) AS TotalFloors |
| | | FROM |
| | | pp.flow_card AS fcs |
| | | GROUP BY |
| | | fcs.process_id, fcs.order_number |
| | | ) AS fcss |
| | | ON fcss.process_id = fc.process_id AND fcss.order_number = fc.order_number |
| | | WHERE |
| | | fc.project_no = #{projectNo} |
| | | GROUP BY |
| | | fc.process_id, fc.technology_number |
| | | ORDER BY |
| | | fc.process_id, fc.technology_number; |
| | | select |
| | | 流程卡号 as process_id, |
| | | 层 as technology_number, |
| | | 总层数 as TotalFloors, |
| | | 规格 as TotalNumber, |
| | | 数量 as quantity, |
| | | 项目 as project, |
| | | 产品名称 as glass_child, |
| | | 面积 as area, |
| | | tempering as tempering, |
| | | merge as merge, |
| | | patch_state as patch_state |
| | | from pp.v_optimize_init_project_process_summary where project_no = #{projectNo} |
| | | </select> |
| | | |
| | | <select id="selectProjectCount"> |
| | |
| | | where process_id=#{processId} and technology_number=#{technologyNumber} |
| | | </update> |
| | | |
| | | <update id="updatePatchLogProject"> |
| | | UPDATE pp.patch_log set project_no=#{projectId} |
| | | where process_id=#{processId} and technology_number=#{technologyNumber} |
| | | </update> |
| | | |
| | | <update id="updateFlowCardProjectReturn"> |
| | | UPDATE pp.flow_card set project_no=null,layout_status=1 |
| | | where process_id=#{processId} and technology_number=#{technologyNumber} |
| | | where process_id=#{processId} and technology_number=#{technologyNumber} and project_no=#{projectId} |
| | | </update> |
| | | |
| | | <update id="updatePatchLogProjectReturn"> |
| | | UPDATE pp.patch_log set project_no=null |
| | | where process_id=#{processId} and technology_number=#{technologyNumber} and project_no=#{projectId} |
| | | </update> |
| | | |
| | | <select id="getSelectArea"> |
| | |
| | | group by fc.process_id,fc.technology_number |
| | | </select> |
| | | |
| | | <select id="getSelectAreaPatchLog"> |
| | | select |
| | | sum(patch_area) |
| | | from pp.patch_log |
| | | where process_id=#{processId} and technology_number=#{technologyNumber} |
| | | group by process_id,technology_number |
| | | </select> |
| | | |
| | | <insert id="addProjectMp"> |
| | | insert into pp.optimize_project (project_no, project_name, order_glass_type, order_glass_thickness,glass_type, glass_thickness, |
| | | glass_total,glass_total_area,type,state,process_qty,process_cards) |